Sophie

Sophie

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

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>Vertical collision avoidance - 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.fr.html#Top">
<link rel="up" href="Vertical-spacing.fr.html#Vertical-spacing" title="Vertical spacing">
<link rel="prev" href="Two_002dpass-vertical-spacing.fr.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="Vertical-collision-avoidance"></a>
Previous:&nbsp;<a rel="previous" accesskey="p" href="Two_002dpass-vertical-spacing.fr.html#Two_002dpass-vertical-spacing">Two-pass vertical spacing</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="Vertical-spacing.fr.html#Vertical-spacing">Vertical spacing</a>
<hr>
</div>

<h4 class="subsection">4.4.5 Vertical collision avoidance</h4>

<p><a name="index-outside_002dstaff_002dpriority-2577"></a><a name="index-outside_002dstaff_002dpriority-2578"></a>
<a name="index-outside_002dstaff_002dpadding-2579"></a><a name="index-outside_002dstaff_002dpadding-2580"></a>
<a name="index-outside_002dstaff_002dhorizontal_002dpadding-2581"></a><a name="index-outside_002dstaff_002dhorizontal_002dpadding-2582"></a>

   <p>Intuitively, there are some objects in musical notation that belong
to the staff and there are other objects that should be placed outside
the staff.  Objects belonging outside the staff include things such as
rehearsal marks, text and dynamic markings (from now on, these will
be called outside-staff objects).  LilyPond's rule for the
vertical placement of outside-staff objects is to place them as close
to the staff as possible but not so close that they collide with
another object.

   <p>LilyPond uses the <code>outside-staff-priority</code> property to determine
whether a grob is an outside-staff object: if <code>outside-staff-priority</code>
is a number, the grob is an outside-staff object.  In addition,
<code>outside-staff-priority</code> tells LilyPond in which order the objects
should be placed.

   <p>First, LilyPond places all the objects that do not belong outside
the staff.  Then it sorts the outside-staff objects according to their
<code>outside-staff-priority</code> (in increasing order).  One by one, LilyPond
takes the outside-staff objects and places them so that they do
not collide with any objects that have already been placed.  That
is, if two outside-staff grobs are competing for the same space, the one
with the lower <code>outside-staff-priority</code> will be placed closer to
the staff.

   <blockquote>
<pre class="verbatim">     
     c4_"Text"\pp
     r2.
     \once \override TextScript #'outside-staff-priority = #1
     c4_"Text"\pp % this time the text will be closer to the staff
     r2.
     % by setting outside-staff-priority to a non-number, 
     % we disable the automatic collision avoidance
     \once \override TextScript #'outside-staff-priority = ##f
     \once \override DynamicLineSpanner #'outside-staff-priority = ##f
     c4_"Text"\pp % now they will collide
</pre>
     <p>
 <a href="../0b/lily-bfb92213.ly">
  <img align="middle"
    border="0" src="../0b/lily-bfb92213.png" alt="[image of music]">
 </a>
</p>

   </blockquote>

   <p>The vertical padding between an outside-staff object and the
previously-positioned grobs can be controlled with
<code>outside-staff-padding</code>.

   <blockquote>
<pre class="verbatim">     
     \once \override TextScript #'outside-staff-padding = #0
     a'^"This text is placed very close to the note"
     \once \override TextScript #'outside-staff-padding = #3
     c^"This text is padded away from the previous text"
     c^"This text is placed close to the previous text"
</pre>
     <p>
 <a href="../3c/lily-7a69aac1.ly">
  <img align="middle"
    border="0" src="../3c/lily-7a69aac1.png" alt="[image of music]">
 </a>
</p>

   </blockquote>

   <p>TODO: this example doesn't work any more ?

   <p>By default, outside-staff objects are placed without regard to
their horizontal distance from the previously-positioned grobs.  This
can lead to situations in which objects are placed very close to each
other horizontally.  Setting <code>outside-staff-horizontal-padding</code>
causes an object to be offset vertically so that such a situation
doesn't occur.

   <blockquote>
<pre class="verbatim">     
     % the markup is too close to the following note
     c2^"Text"
     c''2
     % setting outside-staff-horizontal-padding fixes this
     R1
     \once \override TextScript #'outside-staff-horizontal-padding = #1
     c,,2^"Text"
     c''2
</pre>
     <p>
 <a href="../bf/lily-d122a587.ly">
  <img align="middle"
    border="0" src="../bf/lily-d122a587.png" alt="[image of music]">
 </a>
</p>

   </blockquote>

   <!-- footer_tag --><br><hr>
<div class="node">
<p>
Previous:&nbsp;<a rel="previous" accesskey="p" href="Two_002dpass-vertical-spacing.fr.html#Two_002dpass-vertical-spacing">Two-pass vertical spacing</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="Vertical-spacing.fr.html#Vertical-spacing">Vertical spacing</a>
</div>

<div style="background-color: #e8ffe8; padding: 2; border: #c0ffc0 1px solid;">
<p>
<font size="-1">
Cette page documente LilyPond-2.11.57 (branche de développement).
<br>
<address>
Rapportez toute anomalie en français à <a href="mailto:lilypond-user-fr@gnu.org">lilypond-user-fr@gnu.org</a> ou en anglais à <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>
Vos <a href="http://lilypond.org/web/devel/participating/documentation-adding">suggestions à propos de la documentation</a> sont les bienvenues.
</font>
</p>
</div>

</BODY></html>