Sophie

Sophie

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

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

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<!-- header_tag -->
<html lang="en">
<head>
<title>Explicit staff and system positioning - GNU LilyPond Notation Reference</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="GNU LilyPond Notation Reference">
<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.es.html#Top">
<link rel="up" href="Vertical-spacing.es.html#Vertical-spacing" title="Vertical spacing">
<link rel="prev" href="Vertical-spacing-between-systems.es.html#Vertical-spacing-between-systems" title="Vertical spacing between systems">
<link rel="next" href="Two_002dpass-vertical-spacing.es.html#Two_002dpass-vertical-spacing" title="Two-pass vertical spacing">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
Copyright (C) 1999--2007 by the authors

     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="Explicit-staff-and-system-positioning"></a>
Next:&nbsp;<a rel="next" accesskey="n" href="Two_002dpass-vertical-spacing.es.html#Two_002dpass-vertical-spacing">Two-pass vertical spacing</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="Vertical-spacing-between-systems.es.html#Vertical-spacing-between-systems">Vertical spacing between systems</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="Vertical-spacing.es.html#Vertical-spacing">Vertical spacing</a>
<hr>
</div>

<h4 class="subsection">4.4.3 Explicit staff and system positioning</h4>

<p>One way to understand the <code>VerticalAxisGroup</code> and <code>\paper</code>
settings explained in the previous two sections is as a collection of
different settings that primarily concern the amount of vertical padding
different staves and systems running down the page.

   <p>It is possible to approach vertical spacing in a different way using
<code>NonMusicalPaperColumn #'line-break-system-details</code>.  Where
<code>VerticalAxisGroup</code> and <code>\paper</code> settings specify vertical padding,
<code>NonMusicalPaperColumn #'line-break-system-details</code> specifies exact
vertical positions on the page.

   <p><code>NonMusicalPaperColumn #'line-break-system-details</code> accepts an associative
list of five different settings:

     <ul>
<li><code>X-offset</code>
<li><code>Y-offset</code>
<li><code>alignment-offsets</code>
<li><code>alignment-extra-space</code>
<li><code>fixed-alignment-extra-space</code>
</ul>

   <p>Grob overrides, including the overrides for <code>NonMusicalPaperColumn</code>
below, can occur in any of three different places in an input file:

     <ul>
<li>in the middle of note entry directly
<li>in a <code>\context</code> block
<li>in the <code>\with</code> block
</ul>

   <p>When we override <code>NonMusicalPaperColumn</code>, we use the usual
<code>\override</code> command in <code>\context</code> blocks and in the
<code>\with</code> block.  On the other hand, when we override
<code>NonMusicalPaperColumn</code> in the middle of note entry,
use the special <code>\overrideProperty</code> command.  Here are some
example <code>NonMusicalPaperColumn</code> overrides with the special
<code>\overrideProperty</code> command:

<pre class="example">\overrideProperty NonMusicalPaperColumn
  #'line-break-system-details #'((X-offset . 20))

\overrideProperty NonMusicalPaperColumn
  #'line-break-system-details #'((Y-offset . 40))

\overrideProperty NonMusicalPaperColumn
  #'line-break-system-details #'((X-offset . 20) (Y-offset . 40))

\override NonMusicalPaperColumn
  #'line-break-system-details #'((alignment-offsets . (0 -15)))

\override NonMusicalPaperColumn
  #'line-break-system-details #'((X-offset . 20) (Y-offset . 40)
                                 (alignment-offsets . (0 -15)))
</pre>
   <p>To understand how each of these different settings work, we begin
by looking at an example that includes no overrides at all.

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

   </blockquote>

   <p>This score isolates line- and page-breaking information in a dedicated
voice.  This technique of creating a breaks voice will help keep layout
separate from music entry as our example becomes more complicated. 
See <a href="Using-an-extra-voice-for-breaks.es.html#Using-an-extra-voice-for-breaks">Using an extra voice for breaks</a>.

   <p>Explicit <code>\breaks</code> evenly divide the music into six measures per
line.  Vertical spacing results from LilyPond's defaults.  To set
the vertical startpoint of each system explicitly, we can set
the <code>Y-offset</code> pair in the <code>line-break-system-details</code>
attribute of the <code>NonMusicalPaperColumn</code> grob:

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

   </blockquote>

   <p>Note that <code>line-break-system-details</code> takes an associative list of
potentially many values, but that we set only one value here.  Note,
too, that the <code>Y-offset</code> property here determines the exact vertical
position on the page at which each new system will render.

   <p>Now that we have set the vertical startpoint of each system
explicitly, we can also set the vertical startpoint of each staff
within each system manually.  We do this using the <code>alignment-offsets</code>
subproperty of <code>line-break-system-details</code>.

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

   </blockquote>

   <p>Note that here we assign two different values to the
<code>line-break-system-details</code> attribute of the
<code>NonMusicalPaperColumn</code> grob.  Though the
<code>line-break-system-details</code> attribute alist accepts many
additional spacing parameters (including, for example, a corresponding
<code>X-offset</code> pair), we need only set the <code>Y-offset</code> and
<code>alignment-offsets</code> pairs to control the vertical startpoint of
every system and every staff.  Finally, note that <code>alignment-offsets</code>
specifies the vertical positioning of staves but not of staff groups.

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

   </blockquote>

   <p>Some points to consider:

     <ul>
<li>When using <code>alignment-offsets</code>, lyrics count as a staff.

     <li>The units of the numbers passed to <code>X-offset</code>,
<code>Y-offset</code> and <code>alignment-offsets</code> are interpreted as multiples
of the distance between adjacent staff lines.  Positive values move staves
and lyrics up, negative values move staves and lyrics down.

     <li>Because the <code>NonMusicalPaperColumn #'line-break-system-details</code>
settings given here allow the positioning of staves and systems anywhere
on the page, it is possible to violate paper or margin boundaries or even
to print staves or systems on top of one another.  Reasonable values
passed to these different settings will avoid this. 
</ul>

   <!-- footer_tag --><br><hr>
<div class="node">
<p>
Next:&nbsp;<a rel="next" accesskey="n" href="Two_002dpass-vertical-spacing.es.html#Two_002dpass-vertical-spacing">Two-pass vertical spacing</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="Vertical-spacing-between-systems.es.html#Vertical-spacing-between-systems">Vertical spacing between systems</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="Vertical-spacing.es.html#Vertical-spacing">Vertical spacing</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>

</BODY></html>