Sophie

Sophie

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

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>Layout interfaces - 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.de.html#Top">
<link rel="up" href="Explaining-the-Internals-Reference.de.html#Explaining-the-Internals-Reference" title="Explaining the Internals Reference">
<link rel="prev" href="Navigating-the-program-reference.de.html#Navigating-the-program-reference" title="Navigating the program reference">
<link rel="next" href="Determining-the-grob-property.de.html#Determining-the-grob-property" title="Determining the grob property">
<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="Layout-interfaces"></a>
Next:&nbsp;<a rel="next" accesskey="n" href="Determining-the-grob-property.de.html#Determining-the-grob-property">Determining the grob property</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="Navigating-the-program-reference.de.html#Navigating-the-program-reference">Navigating the program reference</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="Explaining-the-Internals-Reference.de.html#Explaining-the-Internals-Reference">Explaining the Internals Reference</a>
<hr>
</div>

<h4 class="subsection">5.2.2 Layout interfaces</h4>

<p><a name="index-interface_002c-layout-2660"></a><a name="index-layout-interface-2661"></a><a name="index-grob-2662"></a>
The HTML page that we found in the previous section describes the
layout object called <a name="index-Fingering-2663"></a><a href="../lilypond-internals/Fingering.de.html#Fingering">Fingering</a>.  Such an object is a
symbol within the score.  It has properties that store numbers (like
thicknesses and directions), but also pointers to related objects.  A
layout object is also called a <em>Grob</em>, which is short for Graphical
Object.  For more details about Grobs, see <a name="index-grob_002dinterface-2664"></a><a href="../lilypond-internals/grob_002dinterface.de.html#grob_002dinterface">grob-interface</a>.

   <p>The page for <code>Fingering</code> lists the definitions for the
<code>Fingering</code> object.  For example, the page says

   <blockquote>
<code>padding</code> (dimension, in staff space):

        <p><code>0.5</code>
</blockquote>

<p class="noindent">which means that the number will be kept at a distance of at least 0.5
of the note head.

   <p>Each layout object may have several functions as a notational or
typographical element.  For example, the Fingering object
has the following aspects

     <ul>
<li>Its size is independent of the horizontal spacing, unlike slurs or beams.

     <li>It is a piece of text.  Granted, it is usually a very short text.

     <li>That piece of text is typeset with a font, unlike slurs or beams.

     <li>Horizontally, the center of the symbol should be aligned to the
center of the note head.

     <li>Vertically, the symbol is placed next to the note and the staff.

     <li>The vertical position is also coordinated with other superscript
and subscript symbols. 
</ul>

   <p>Each of these aspects is captured in so-called <em>interface</em>s,
which are listed on the <a name="index-Fingering-2665"></a><a href="../lilypond-internals/Fingering.de.html#Fingering">Fingering</a> page at the bottom

   <blockquote>
This object supports the following interfaces:
<a name="index-item_002dinterface-2666"></a><a href="../lilypond-internals/item_002dinterface.de.html#item_002dinterface">item-interface</a>,
<a name="index-self_002dalignment_002dinterface-2667"></a><a href="../lilypond-internals/self_002dalignment_002dinterface.de.html#self_002dalignment_002dinterface">self-alignment-interface</a>,
<a name="index-side_002dposition_002dinterface-2668"></a><a href="../lilypond-internals/side_002dposition_002dinterface.de.html#side_002dposition_002dinterface">side-position-interface</a>, <a name="index-text_002dinterface-2669"></a><a href="../lilypond-internals/text_002dinterface.de.html#text_002dinterface">text-interface</a>,
<a name="index-text_002dscript_002dinterface-2670"></a><a href="../lilypond-internals/text_002dscript_002dinterface.de.html#text_002dscript_002dinterface">text-script-interface</a>, <a name="index-font_002dinterface-2671"></a><a href="../lilypond-internals/font_002dinterface.de.html#font_002dinterface">font-interface</a>,
<a name="index-finger_002dinterface-2672"></a><a href="../lilypond-internals/finger_002dinterface.de.html#finger_002dinterface">finger-interface</a>, and <a name="index-grob_002dinterface-2673"></a><a href="../lilypond-internals/grob_002dinterface.de.html#grob_002dinterface">grob-interface</a>. 
</blockquote>

   <p>Clicking any of the links will take you to the page of the respective
object interface.  Each interface has a number of properties.  Some of
them are not user-serviceable (&lsquo;Internal properties&rsquo;), but others
can be modified.

   <p>We have been talking of <em>the</em> <code>Fingering</code> object, but actually it
does not amount to much.  The initialization file (see
<a name="index-Other-sources-of-information-2674"></a><a href="../lilypond-learning/Other-sources-of-information.de.html#Other-sources-of-information">Other sources of information</a>)
<samp><span class="file">scm/define-grobs.scm</span></samp> shows the soul of the &lsquo;object&rsquo;,

<pre class="example">(Fingering
  . ((padding . 0.5)
     (avoid-slur . around)
     (slur-padding . 0.2)
     (staff-padding . 0.5)
     (self-alignment-X . 0)
     (self-alignment-Y . 0)
     (script-priority . 100)
     (stencil . ,ly:text-interface::print)
     (direction . ,ly:script-interface::calc-direction)
     (font-encoding . fetaNumber)
     (font-size . -5) 		; don't overlap when next to heads.
     (meta . ((class . Item)
     (interfaces . (finger-interface
                    font-interface
                    text-script-interface
                    text-interface
                    side-position-interface
                    self-alignment-interface
                    item-interface))))))
</pre>
   <p class="noindent">As you can see, the <code>Fingering</code> object is nothing more than a
bunch of variable settings, and the webpage in the Internals Reference
is directly generated from this definition.

   <!-- footer_tag --><br><hr>
<div class="node">
<p>
Next:&nbsp;<a rel="next" accesskey="n" href="Determining-the-grob-property.de.html#Determining-the-grob-property">Determining the grob property</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="Navigating-the-program-reference.de.html#Navigating-the-program-reference">Navigating the program reference</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="Explaining-the-Internals-Reference.de.html#Explaining-the-Internals-Reference">Explaining the Internals Reference</a>
</div>

<div style="background-color: #e8ffe8; padding: 2; border: #c0ffc0 1px solid;">
<p>
<font size="-1">
Diese Seite ist für LilyPond-2.11.57 (Entwicklungszweig).
<br>
<address>
Fehler bitte an <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> melden. </address>
<br>
Ihre <a href="http://lilypond.org/web/devel/participating/documentation-adding">Vorschläge für die Dokumentation</a> sind willkommen.
</font>
</p>
</div>


<P>
 Andere Sprachen: <a href="Layout-interfaces.fr.html">français</a>, <a href="Layout-interfaces.es.html">español</a>.
 <BR>
 
</P>
</BODY></html>