<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <!-- header_tag --> <html lang="en"> <head> <title>Paper and layout - LilyPond snippets</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta name="description" content="LilyPond snippets"> <meta name="generator" content="makeinfo 4.11"> <link title="Top" rel="start" href="index.html#Top"> <link rel="prev" href="Tweaks-and-overrides.html#Tweaks-and-overrides" title="Tweaks and overrides"> <link rel="next" href="Titles.html#Titles" title="Titles"> <link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage"> <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="Paper-and-layout"></a> Next: <a rel="next" accesskey="n" href="Titles.html#Titles">Titles</a>, Previous: <a rel="previous" accesskey="p" href="Tweaks-and-overrides.html#Tweaks-and-overrides">Tweaks and overrides</a>, Up: <a rel="up" accesskey="u" href="index.html#Top">Top</a> <hr> </div> <h2 class="unnumbered">Paper and layout</h2> <!-- FIXME not precise enough reference? --> <p>These snippets illustrate the Notation Reference, section <a href="../../../Documentation/user/lilypond/Spacing-issues.html#Spacing-issues">Spacing issues</a>. <p><a name="aligning-and-centering-instrument-names.ly"></a> <h3 class="unnumberedsec">Aligning and centering instrument names</h3> <p>Instrument names are generally printed to the left of the staves. To align the names of several different intruments, put them in a <code>\markup</code> block and use one of the following possibilites: <p>* Right-aligned instrument names: this is the default behavior <p>* Center-aligned instrument names: using the <code>\hcenter-in #n</code> command places the instrument names inside a padded box, with <code>n</code> being the width of the box <p>* Left-aligned instrument names: the names are printed on top of an empty box, using the <code>\combine</code> command with an <code>\hspace #n</code> object. <pre class="verbatim"> \paper { indent = #0 left-margin = #30 line-width = #160 } \new StaffGroup \relative c' << \new Staff { \set Staff.instrumentName = #"Piccolo" c1^"default" | c \break \set Staff.instrumentName = \markup { \hcenter-in #10 Piccolo } c1^"centered" | c \break \set Staff.instrumentName = \markup { \combine \hspace #8 Piccolo } c1^"left-aligned" | c } \new Staff { \set Staff.instrumentName = #"Flute" c1 | c \break \set Staff.instrumentName = \markup { \hcenter-in #10 Flute } c1 | c \break \set Staff.instrumentName = \markup { \combine \hspace #8 Flute } c1 | c } >> </pre> <p> <a href="../58/lily-3fb556c3.ly"> <img align="middle" border="0" src="../58/lily-3fb556c3.png" alt="[image of music]"> </a> </p> <p><a name="alignment-vertical-spacing.ly"></a> <h3 class="unnumberedsec">Alignment vertical spacing</h3> <p>By setting properties in <code>NonMusicalPaperColumn</code>, vertical spacing can be adjusted per system. <p>By setting <code>alignment-extra-space</code> or <code>fixed-alignment-extra-space</code> an individual system may be stretched vertically. <p>For technical reasons, <code>\overrideProperty</code> must be used for changing these properties within a staff; <code>\override</code> in a <code>\context</code> block may still be used for global overrides. <pre class="verbatim"> #(set-global-staff-size 13) \relative c'' \new StaffGroup << \new Staff { c1 \break c1 \break c1 \break } \new Staff { c1 | c | c } \new PianoStaff << \new Voice { \set PianoStaff.instrumentName = #"piano" \set PianoStaff.shortInstrumentName = #"pn" c1_"normal" \overrideProperty #"Score.NonMusicalPaperColumn" #'line-break-system-details #'((fixed-alignment-extra-space . 15)) c_"fixed-aligment-extra-space" \overrideProperty #"Score.NonMusicalPaperColumn" #'line-break-system-details #'((alignment-extra-space . 15)) c_"aligment-extra-space" } { c1 | c | c } >> >> </pre> <p> <a href="../9c/lily-a3881ca4.ly"> <img align="middle" border="0" src="../9c/lily-a3881ca4.png" alt="[image of music]"> </a> </p> <p><a name="changing-the-staff-size.ly"></a> <h3 class="unnumberedsec">Changing the staff size</h3> <p>Though the simplest way to resize staves is to use <code>#(set-global-staff-size xx)</code>, an individual staff's size can be changed by scaling the properties <code>staff-space</code> and <code>fontSize</code>. <pre class="verbatim"> << \new Staff \relative c'' { \dynamicDown c8\ff c c c c c c c } \new Staff \with { fontSize = #-3 \override StaffSymbol #'staff-space = #(magstep -3) } { \clef bass c8 c c c c\f c c c } >> </pre> <p> <a href="../33/lily-eb10503d.ly"> <img align="middle" border="0" src="../33/lily-eb10503d.png" alt="[image of music]"> </a> </p> <p><a name="clip-systems.ly"></a> <h3 class="unnumberedsec">Clip systems</h3> <p>This code shows how to clip (extract) snippets from a full score. <p>This file needs to be run separately with <code>-dclip-systems</code>; the snippets page may not adequately show the results. <p>The result will be files named <samp><var>base</var><span class="file">-from-</span><var>start</var><span class="file">-to-</span><var>end</var><span class="file">[-</span><var>count</var><span class="file">].eps</span></samp>. <ul> <li>If system starts and ends are included, they include extents of the System grob, e.g., instrument names. <li>Grace notes at the end point of the region are not included. <li>Regions can span multiple systems. In this case, multiple EPS files are generated. </ul> <pre class="verbatim"> #(ly:set-option 'clip-systems) #(set! output-count 1) origScore = \score { \relative c' { \set Staff.instrumentName = #"bla" c1 d1 \grace c16 e1 \key d \major f1 \break \clef bass g,1 fis1 } } \book { \score { \origScore \layout { % Each clip-region is a (START . END) pair % where both are rhythmic-locations. % (make-rhythmic-locations BAR-NUMBER NUM DEN) % means NUM/DEN whole-notes into bar numbered BAR-NUMBER clip-regions = #(list (cons (make-rhythmic-location 2 0 1) (make-rhythmic-location 4 0 1)) (cons (make-rhythmic-location 0 0 1) (make-rhythmic-location 4 0 1)) (cons (make-rhythmic-location 0 0 1) (make-rhythmic-location 6 0 1)) ) } } } #(set! output-count 0) #(ly:set-option 'clip-systems #f) \book { \score { \origScore } \markup { \bold \fontsize #6 clips } \score { \lyrics { \markup { from-2.0.1-to-4.0.1-clip.eps } \markup { \epsfile #X #30.0 #(format #f "~a-1-from-2.0.1-to-4.0.1-clip.eps" (ly:parser-output-name parser)) } } } } </pre> <p> <a href="../33/lily-3f043528.ly"> <img align="middle" border="0" src="../33/lily-3f043528.png" alt="[image of music]"> </a> </p> <p><a name="creating-blank-staves.ly"></a> <h3 class="unnumberedsec">Creating blank staves</h3> <p>To create blank staves, generate empty measures then remove the <code>Bar_number_engraver</code> from the <code>Score</code> context, and the <code>Time_signature_engraver</code>, <code>Clef_engraver</code> and <code>Bar_engraver</code> from the <code>Staff</code> context. <pre class="verbatim"> #(set-global-staff-size 20) \score { { \repeat unfold 12 { s1 \break } } \layout { indent = 0\in \context { \Staff \remove "Time_signature_engraver" \remove "Clef_engraver" \remove "Bar_engraver" } \context { \Score \remove "Bar_number_engraver" } } } \paper { #(set-paper-size "letter") ragged-last-bottom = ##f line-width = 7.5\in left-margin = 0.5\in bottom-margin = 0.25\in top-margin = 0.25\in } </pre> <p> <a href="../63/lily-e0186df5.ly"> <img align="middle" border="0" src="../63/lily-e0186df5.png" alt="[image of music]"> </a> </p> <p><a name="demonstrating-all-headers.ly"></a> <h3 class="unnumberedsec">Demonstrating all headers</h3> <p>All header fields with special meanings. <pre class="verbatim"> \header { copyright = "copyright" title = "title" subtitle = "subtitle" composer = "composer" arranger = "arranger" instrument = "instrument" metre = "metre" opus = "opus" piece = "piece" poet = "poet" texidoc = "All header fields with special meanings." copyright = "public domain" enteredby = "jcn" source = "urtext" } \layout { ragged-right = ##f } \score { \relative c'' { c1 | c | c | c } } \score { \relative c'' { c1 | c | c | c } \header { title = "localtitle" subtitle = "localsubtitle" composer = "localcomposer" arranger = "localarranger" instrument = "localinstrument" metre = "localmetre" opus = "localopus" piece = "localpiece" poet = "localpoet" copyright = "localcopyright" } } </pre> <p> <a href="../82/lily-bd13e6d5.ly"> <img align="middle" border="0" src="../82/lily-bd13e6d5.png" alt="[image of music]"> </a> </p> <p><a name="table-of-contents.ly"></a> <h3 class="unnumberedsec">Table of contents</h3> <p>A table of contents is included using <code>\markuplines \table-of-contents</code><!-- /@w -->. The TOC items are added with the <code>\tocItem</code> command. <pre class="verbatim"> #(set-default-paper-size "a6") \book { \markuplines \table-of-contents \pageBreak \tocItem \markup { The first score } \score { { c'1 \pageBreak \mark "A" \tocItem \markup { Mark A } d'1 } } \pageBreak \tocItem \markup { The second score } \score { { e'1 } \header { piece = "Second score" } } } </pre> <p> <a href="../46/lily-aacfa770.ly"> <img align="middle" border="0" src="../46/lily-aacfa770.png" alt="[image of music]"> </a> </p> <!-- footer_tag --><br><hr> <div class="node"> <p> Next: <a rel="next" accesskey="n" href="Titles.html#Titles">Titles</a>, Previous: <a rel="previous" accesskey="p" href="Tweaks-and-overrides.html#Tweaks-and-overrides">Tweaks and overrides</a>, Up: <a rel="up" accesskey="u" href="index.html#Top">Top</a> </div> <div style="background-color: #e8ffe8; padding: 2; border: #c0ffc0 1px solid;"> <p> <font size="-1"> This page is for LilyPond-2.11.57 (development-branch). <br> <address> Report errors to <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> Your <a href="http://lilypond.org/web/devel/participating/documentation-adding">suggestions for the documentation</a> are welcome. </font> </p> </div> </BODY></html>