@menu
* Setting global staff size::
+* Selecting notation font size::
* Paper size::
-* Page layout::
+* Page formatting::
+* Score layout::
* Vertical spacing::
* Vertical spacing of piano staves::
* Horizontal spacing::
@seealso
-This manual: @ref{Selecting font sizes}.
+This manual: @ref{Selecting notation font size}.
+
+
+@node Selecting notation font size
+@subsection Selecting notation font size
+
+The easiest method of setting the font size of any context, is by
+setting the @code{fontSize} property.
+
+@lilypond[quote,fragment,relative=1,verbatim]
+c8
+\set fontSize = #-4
+c f
+\set fontSize = #3
+g
+@end lilypond
+
+@noindent
+It does not change the size of variable symbols, such as beams or
+slurs.
+
+Internally, the @code{fontSize} context property will cause the
+@code{font-size} property to be set in all layout objects. The value
+of @code{font-size} is a number indicating the size relative to the
+standard size for the current staff height. Each step up is an
+increase of approximately 12% of the font size. Six steps is exactly a
+factor two. The Scheme function @code{magstep} converts a
+@code{font-size} number to a scaling factor.
+
+@lilypond[quote,fragment,relative=1,verbatim]
+c8
+\override NoteHead #'font-size = #-4
+c f
+\override NoteHead #'font-size = #3
+g
+@end lilypond
+
+LilyPond has fonts in different design sizes. The music fonts for
+smaller sizes are chubbier, while the text fonts are relatively wider.
+Font size changes are achieved by scaling the design size that is
+closest to the desired size. The standard font size (for
+@code{font-size} equals 0), depends on the standard staff height. For
+a 20pt staff, a 10pt font is selected.
+
+The @code{font-size} property can only be set on layout objects that
+use fonts. These are the ones supporting the
+@internalsref{font-interface} layout interface.
+
+@refcommands
+
+The following commands set @code{fontSize} for the current voice:
+
+@cindex @code{\tiny}
+@code{\tiny},
+@cindex @code{\small}
+@code{\small},
+@cindex @code{\normalsize}
+@code{\normalsize}.
@node Paper size
The first command sets the size of all pages. The second command sets the size
of the pages that the @code{\paper} block applies to -- if the @code{\paper}
block is at the top of the file, then it will apply to all pages. If the
-@code{\paper} block is inside a @code{\score}, then the paper size will only
-apply to that score.
+@code{\paper} block is inside a @code{\book}, then the paper size will only
+apply to that book.
The following paper sizes are supported: @code{a6}, @code{a5}, @code{a4},
@code{a3}, @code{legal}, @code{letter}, @code{tabloid}.
@end example
-@node Page layout
-@subsection Page layout
+@node Page formatting
+@subsection Page formatting
-@cindex page layout
+@cindex page formatting
@cindex margins
@cindex header, page
@cindex footer, page
The default layout responds to the following settings in the
@code{\paper} block.
-@cindex \paper
+@cindex @code{\paper}
@quotation
@table @code
If set to true, will print the page number in the first page. Default is
false.
+@item printpagenumber
+If set to false, page numbers will not be printed.
+
@item hsize
The width of the page.
Increasing this will put systems whose bounding boxes almost touch
farther apart.
+
+@item horizontalshift
+All systems (including titles and system separators) are shifted by
+this amount to the right. Page markup, such as headers and footers are
+not affected by this. The purpose of this variable is to make space
+for instrument names at the left.
+
+
@item aftertitlespace
Amount of space between the title and the first system.
Amount of space between consecutive titles (e.g., the title of the
book and the title of a piece).
+@item printallheaders
+Setting this to #t will print all headers for each \score in a
+\book. Normally only the piece and opus \headers are printed.
+
@item systemSeparatorMarkup
This contains a markup object, which will be inserted between
systems. This is often used for orchestral scores.
field from the @code{\header} block on a line.
+@node Score layout
+@subsection Score layout
+
+@cindex @code{\layout}
+
+While @code{\paper} contains settings that relate to the page formatting
+of the whole document, @code{\layout} contains settings for score-specific
+layout.
+
+@example
+\layout @{
+ indent = 2.0\cm
+ \context @{ \Staff
+ minimumVerticalExtent = #'(-6 . 6
+ @}
+ \context @{ \Voice
+ \override TextScript #'padding = #1.0
+ \override Glissando #'thickness = #3
+ @}
+@}
+@end example
+
+
+@seealso
+
+This manual: @ref{Changing context default settings}
+
+
@node Vertical spacing
@subsection Vertical spacing
will be much more useful than changing @code{minimumVerticalExtent}.
@example
-\layout @{
+\paper @{
betweensystemspace = 10\mm
@}
@end example
@cindex bibliographic information
@cindex titles
@cindex composer
-@cindex Music engraiving by LilyPond
+@cindex Music engraving by LilyPond
A document may contain multiple pieces of music and texts. Examples
of these are an etude book, or an orchestral part with multiple
Name of the arranger, flush-right below the opus.
@item instrument
-Name of the instrument, centered below the arranger.
-
-@item dedication
-To whom the piece is dedicated.
+Name of the instrument, centered below the arranger. Also
+centered at the top of pages (other than the first page).
@item piece
Name of the piece, flush-left below the instrument.
@cindex page breaks, forcing
@item breakbefore
- This forces the title to start on a new page (set to ##t or ##f).
+This forces the title to start on a new page (set to ##t or ##f).
+
+@item copyright
+Copyright notice, centered at the bottom of the first page. To
+insert the copyright symbol, see @ref{Text encoding}.
+
+@item tagline
+Centered at the bottom of the last page.
+
@end table
Here is a demonstration of the fields available. Note that you
}
\score {
+ { c'1 }
\header {
piece = "piece1"
opus = "opus1"
}
- { c'1 }
}
\markup {
and now...
}
\score {
+ { c'1 }
\header {
piece = "piece2"
opus = "opus2"
}
- { c'1 }
}
}
@end lilypond
+As demonstrated before, you can use multiple @code{\header} blocks.
+When same fields appear in different blocks, the latter is used.
+Here is a short example.
+
+@example
+\header @{
+ composer = "Composer"
+@}
+\header @{
+ title = "Title"
+@}
+\score @{
+ \new Staff @{ c'4 @}
+ \header @{
+ title = "New title" %overwrite previous one
+ @}
+@}
+@end example
+
A more advanced option is to change the definitions of the following
variables in the @code{\paper} block. The init file
@file{ly/titling-init.ly} lists the default layout.
@verbatim
\paper {
bookTitleMarkup = \markup {
- \fill-line @{
+ \fill-line {
\fromproperty #'header:title
\fromproperty #'header:composer
- @}
+ }
}
}
@end verbatim