Sophie

Sophie

distrib > Mandriva > 2009.0 > i586 > by-pkgid > 3a7b4dfc766af1222d90c7f03a0844e6 > files > 6051

lilypond-doc-2.11.57-1mdv2009.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<!-- header_tag -->
<html lang="es">
<head>
<title>Grabado automático - GNU LilyPond Learning Manual</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="GNU LilyPond Learning Manual">
<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.es.html#Top">
<link rel="up" href="Background.es.html#Background" title="Antecedentes">
<link rel="prev" href="Engraving.es.html#Engraving" title="Grabado">
<link rel="next" href="What-symbols-to-engrave_003f.es.html#What-symbols-to-engrave_003f" title="¿Qué símbolos grabar?">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
Copyright (C) 1999--2007 por los autores

_The translation of the following copyright notice is provided
for courtesy to non-English speakers, but only the notice in English
legally counts._

_La traducción de la siguiente nota de copyright se ofrece como
cortesía para las personas de habla no inglesa, pero únicamente la
nota en inglés tiene validez legal._

     Se otorga permiso para copiar, distribuir y/o modificar este
     documento bajo los términos de la Licencia de Documentación
     Libre de GNU, versión 1.1 o cualquier versión posterior
     publicada por la Free Software Foundation; sin ninguna de las
     secciones invariantes.  Se incluye una copia de esta licencia
     dentro de la sección titulada ``Licencia de Documentación Libre
     de GNU''.
     Permission is granted to copy, distribute and/or modify this
     document under the terms of the GNU Free Documentation License,
     Version 1.1 or any later version published by the Free Software
     Foundation; with no Invariant Sections.  A copy of the license is
     included in the section entitled ``GNU Free Documentation
     License''.
   -->
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css"><!--
  pre.display { font-family:inherit }
  pre.format  { font-family:inherit }
  pre.smalldisplay { font-family:inherit; font-size:smaller }
  pre.smallformat  { font-family:inherit; font-size:smaller }
  pre.smallexample { font-size:smaller }
  pre.smalllisp    { font-size:smaller }
  span.sc    { font-variant:small-caps }
  span.roman { font-family:serif; font-weight:normal; } 
  span.sansserif { font-family:sans-serif; font-weight:normal; } 
hr { border:0; height:1; color: #000000; background-color: #000000; }
/* hr {
  border:  none;
  height: 1px;
  color: #666666;
  background-color: #666666;
}
body {
  border-left: 1px solid #666666;
  border-right: 1px solid #666666;
  color: #332d28;
  margin-right: auto;
  margin-left: auto;
  width: 60em;
  list-style-type: square;
  font-family: Arial,Helvetica,sans-serif;
  padding-right: 1em;
  padding-left: 1em;
}
a {
  border-bottom: 1px dashed #344242;
  text-decoration: none;
  color: #344242;
}
a:link {
  text-decoration: none;
}
a:visited {
  border-bottom: 1px dashed #666666;
  color: #666666;
}
a:active {
  border-bottom: 1px solid #00cccc;
  color: #00cccc;
}
a:hover {
  border-bottom: 1px solid #1d7b85;
  color: #1d7b85;
}
blockquote {
  border: 1px solid #cccccc;
  padding: 3px;
  width: 40em;
}
.node {
  border-left: 1px solid #666666;
  margin: -0.5em 0px 1em;
  padding: 2px 1px 0px;
  font-style: italic;
}
.node a {
  border:  none;
  text-decoration: underline;
  font-style: normal;
  font-weight: bold;
}
.verbatim {
  font-family: "Courier New",Courier,monospace;
}
.unnumberedsubsubsec {
  font-size: large;
  color: #1d7b85;
}
.subsubheading {
  font-size: large;
  color: #3b220d;
}
.contents {
  border: 1px dashed #339999;
  margin: 3px 2em;
  list-style-type: square;
  padding-right: 1em;
  width: 40em;
  background-color: #fcfff9;
}
.contents a {
  border-bottom: 1px dashed #423d34;
  text-decoration: none;
  color: #423d34;
}
.contents a:visited {
  border-bottom: 1px dashed #666666;
  color: #666666;
}
.contents a:active {
  border-bottom: 1px solid #f0d86d;
  color: #f0d86d;
}
.contents a:hover {
  border-bottom: 1px solid #3b220d;
  color: #3b220d;
}
.menu {
  border-left: 1px dashed #339999;
  margin: 3px 2em 1em;
  list-style-type: square;
  padding-left: 1.4em;
  width: 40em;
}
.unnumbered {
}
h2 {
  font-size: x-large;
  color: #1d7b85;
}
*/
--></style>
</head>
<BODY BGCOLOR=WHITE TEXT=BLACK>

<div class="node">
<p>
<a name="Automated-engraving"></a>
Siguiente:&nbsp;<a rel="next" accesskey="n" href="What-symbols-to-engrave_003f.es.html#What-symbols-to-engrave_003f">¿Qué símbolos grabar?</a>,
Anterior:&nbsp;<a rel="previous" accesskey="p" href="Engraving.es.html#Engraving">Grabado</a>,
Arriba:&nbsp;<a rel="up" accesskey="u" href="Background.es.html#Background">Antecedentes</a>
<hr>
</div>

<h4 class="unnumberedsubsec">Grabado automático</h4>

<p>¿Cómo nos las arreglamos para implementar la tipografía? Si un
artesano necesita más de diez años para convertirse en un auténtico
maestro ¿cómo vamos a poder nosotros, simples «hackers», escribir un
programa que les quite el trabajo?

   <p>La respuesta es: no podemos.  Puesto que la tipografía se fundamenta
en el juicio humano sobre la apariencia, nunca se puede sustituir
completamente a las personas.  Sin embargo, se puede automatizar gran
parte del trabajo más duro y repetitivo.  Si LilyPond resuelve la
mayoría de las situaciones comunes de forma correcta, esto ya será una
tremenda mejoría sobre los programas existentes.  El resto de los
casos se podrán afinar a mano.  Con el transcurso de los años, el
software se puede refinar para que haga un mayor número de cosas de
forma automática, de tal forma que los ajustes manuales tienden a ser
cada vez menos necesarios.

   <p>Cuando empezamos, escribimos el programa LilyPond completamente en el
lenguaje C++; la funcionalidad del programa quedaba como esculpida en
piedra por los desarrolladores.  Este esquema resultó no ser muy
satisfactorio por una serie de motivos:

     <ul>
<li>Cuando LilyPond comete fallos,
los usuarios tienen la necesidad de superar las decisiones de
formateo.  Por ello el usuario debe tener acceso al motor de formateo. 
De aquí que no podamos dejar establecidas las reglas y valores durante
la compilación, sino que los usuarios deben poder acceder a ellos
durante la ejecución del programa.

     <li>El grabado de música es cosa de juicio visual y por ello es cuestión de gustos. 
A pesar de saber tanto como creemos saber, los usuarios pueden no
estar de acuerdo con nuestras decisiones personales. Por tanto la
definición del estilo tipográfico también debe estar al alcance del
usuario.

     <li>Por último, estamos continuamente refinando los algoritmos de formateo y por
tanto necesitamos un enfoque flexible para las reglas.  El lenguaje
C++ fuerza un cierto método para agrupar las reglas que no encaja bien
con la manera de funcionar de la notación musical. 
</ul>

   <p>Estos problemas se han solucionado integrando un intérprete del
lenguaje Scheme y reescribiendo parte del código de LilyPond en
Scheme.  La actual arquitectura de formateo se construye alrededor del
concepto de objetos gráficos, descrita por variables y funciones de
Scheme.  Esta arquitectura puede tratar al mismo tiempo con las reglas
de formateo, el estilo tipográfico y las decisiones de formateo
individuales.  El usuario tiene acceso directo a la mayor parte de
estos controles.

   <p>Las variables de Scheme controlan las decisiones de formateo.  Por
ejemplo, muchos objetos gráficos tienen una variable de dirección que
codifica la elección entre arriba y abajo (o izquierda y
derecha). Aquí puede ver dos acordes con acentos y signos de arpegio. 
En el primer acorde los objetos gráficos tienen todas sus direcciones
hacia abajo (o hacia la izquierda).  El segundo acorde tiene todas las
direcciones hacia arriba (o hacia la derecha).

   <blockquote>
     <p>
 <a href="../f7/lily-868d710f.ly"> <img align="middle" border="0" src="../f7/lily-868d710f.png" alt="[image of music]"> </a>
</p>

   </blockquote>

<p class="noindent">El proceso de formatear una partitura consiste en leer y escribir las
variables de los objetos gráficos.  Ciertas variables tienen un valor
predefinido.  Por ejemplo, el grosor de muchas líneas (una
característica del estilo tipográfico) son variables con un valor
preestablecido.  Podemos alterar este valor libremente dando así a
nuestra partitura una impresión tipográfica distinta.

   <blockquote>
     <p>
 <a href="../29/lily-1b1eab1c.ly"> <img align="middle" border="0" src="../29/lily-1b1eab1c.png" alt="[image of music]"> </a>
</p>

   </blockquote>

   <p>Las reglas de formateo también son variables que están predefinidas:
cada objeto tiene unas variables que contienen procedimientos.  Estos
procedimientos realizan el trabajo real de formateo y sustituyéndolos
por otros podemos alterar el aspecto de los objetos.  En el siguiente
ejemplo, la regla que define cómo se dibuja la cabeza de una nota se
altera durante el transcurso del fragmento musical.

   <blockquote>
     <p>
 <a href="../8f/lily-c9522073.ly"> <img align="middle" border="0" src="../8f/lily-c9522073.png" alt="[image of music]"> </a>
</p>

   </blockquote>

   <!-- footer_tag --><br><hr>
<div class="node">
<p>
Siguiente:&nbsp;<a rel="next" accesskey="n" href="What-symbols-to-engrave_003f.es.html#What-symbols-to-engrave_003f">¿Qué símbolos grabar?</a>,
Anterior:&nbsp;<a rel="previous" accesskey="p" href="Engraving.es.html#Engraving">Grabado</a>,
Arriba:&nbsp;<a rel="up" accesskey="u" href="Background.es.html#Background">Antecedentes</a>
</div>

<div style="background-color: #e8ffe8; padding: 2; border: #c0ffc0 1px solid;">
<p>
<font size="-1">
Esta página corresponde a LilyPond-2.11.57 (rama de desarrollo).
<br>
<address>
Informe de los fallos a través de la lista en español <a href="http://es.groups.yahoo.com/group/lilypond-es/">lilypond-es</a>, o en inglés a través de <a href="http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs">http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs</a>. </address>
<br>
Se agradecen las <a href="http://lilypond.org/web/devel/participating/documentation-adding">sugerencias para la documentación</a>.
</font>
</p>
</div>


<P>
 Otros idiomas: <a href="Automated-engraving.html">English</a>, <a href="Automated-engraving.fr.html">français</a>, <a href="Automated-engraving.de.html">deutsch</a>.
 <BR>
 
</P>
</BODY></html>