
Estoy usando MuseScore 1.3 en Ubuntu 14.04 para escribir mis partituras. Luego los guardo como archivos LilyPond y los incluyo en mi documento tex usando \lilypondfile
, así:
\documentclass[a4paper]{article}
\begin{document}
Larger examples can be put into a separate file, and introduced with \verb+\lilypondfile+.
\lilypondfile[quote,noindent]{scores/Exercise_1.05.ly}
\end{document}
Luego, para compilar, hago:
$ lilypond-book --pdf solfeo.lytex
$ xelatex solfeo.tex
Sin embargo, el ancho de la partitura insertada no cabe en el documento y se extiende más allá de los límites de la página.
Además, lilypond-book
parece estar ignorando la configuración que le estoy pasando \lilypondfile[quote,noindent]{scores/Exercise_1.05.ly}
. Si entendí bien, quote
imprime las notas antes de la partitura y noindent
elimina la sangría de la primera línea. Ni cita las notas ni elimina la sangría.
Soy nuevo en Lilypond e intenté cambiar los márgenes del documento en MuseScore, y también probé algunos comandos de texto, pero no encuentro la manera de hacerlo encajar. Si compilo el archivo ly con lilypond
el PDF se ve perfecto (pero en ese caso solo obtengo la puntuación). Sólo cuando incrusto un ly
archivo en otro lytex
archivo la partitura se extiende más allá de los márgenes. Agradecería sus sugerencias o correcciones. ¿Qué estoy haciendo mal? ¡Gracias!
PD Aquí está el código ly generado por MuseScore:
%=============================================
% created by MuseScore Version: 1.3
%=============================================
\version "2.12.0"
#(set-default-paper-size "a4")
\paper {
line-width = 190\mm
left-margin = 10\mm
top-margin = 10\mm
bottom-margin = 20\mm
%%indent = 0 \mm
%%set to ##t if your score is less than one page:
ragged-last-bottom = ##t
ragged-bottom = ##f
%% in orchestral scores you probably want the two bold slashes
%% separating the systems: so uncomment the following line:
%% system-separator-markup = \slashSeparator
}
\header {
}
AvoiceAA = \relative c'{
\set Staff.instrumentName = #""
\set Staff.shortInstrumentName = #""
\clef treble
%staffkeysig
\key c \major
%barkeysig:
\key c \major
%bartimesig:
\time 4/4
\tempo "Andante" 4 = 96 a'2 a | % 1
a r | % 2
r a | % 3
r a | % 4
a r | % 5
a a | % 6
a a4 a | % 7
a r a2 | % 8
r4 a a2 | % 9
a4 r2 a4 | % 10
a2 r4 a \bar "|." | % 11
a2 r \bar "|."
}% end of last bar in partorvoice
\score {
<<
\context Staff = ApartA <<
\context Voice = AvoiceAA \AvoiceAA
>>
\set Score.skipBars = ##t
%%\set Score.melismaBusyProperties = #'()
\override Score.BarNumber #'break-visibility = #end-of-line-invisible
%%every bar is numbered.!!!
%% remove previous line to get barnumbers only at beginning of system.
#(set-accidental-style 'modern-cautionary)
\set Score.markFormatter = #format-mark-box-letters %%boxed rehearsal-marks
\override Score.TimeSignature #'style = #'() %%makes timesigs always numerical
%% remove previous line to get cut-time/alla breve or common time
\set Score.pedalSustainStyle = #'mixed
%% make spanners comprise the note it end on, so that there is no doubt that this note is included.
\override Score.TrillSpanner #'(bound-details right padding) = #-2
\override Score.TextSpanner #'(bound-details right padding) = #-1
%% Lilypond's normal textspanners are too weak:
\override Score.TextSpanner #'dash-period = #1
\override Score.TextSpanner #'dash-fraction = #0.5
%% lilypond chordname font, like mscore jazzfont, is both far too big and extremely ugly ([email protected]):
\override Score.ChordName #'font-family = #'roman
\override Score.ChordName #'font-size =#0
%% In my experience the normal thing in printed scores is maj7 and not the triangle. (olagunde):
\set Score.majorSevenSymbol = \markup {maj7}
>>
%% Boosey and Hawkes, and Peters, have barlines spanning all staff-groups in a score,
%% Eulenburg and Philharmonia, like Lilypond, have no barlines between staffgroups.
%% If you want the Eulenburg/Lilypond style, comment out the following line:
\layout {\context {\Score \consists Span_bar_engraver}}
}%% end of score-block
#(set-global-staff-size 20)
Actualización 1
Estoy pegando el resultado de la compilación de lilypond-book
, aunque no estoy seguro de qué tan útil te será, ya que está en español:
$ libro-lilypond --pdf solfeo.lytex libro-lilypond (GNU LilyPond) 2.18.2 Leyendo solfeo.lytex... Ejecutando `pdflatex' en el archivo `/tmp/tmpN3IGhy.tex' para detectar la configuración de página predeterminada. Diseccionando... Escribiendo fragmentos... Procesando... Corriendo lirio de agua... GNU LilyPond 2.18.2 Procesando «snippet-map-3001632500490555250.ly» Analizando... Procesando «solfeo.lytex» Analizando... Renombrando la entrada a: «scores/Exercise_1.05.ly» Interpretando la música...[8] Preprocesando los objetos gráficos... Calculando los saltos de línea... Dibujando los sistemas... Salida de la página hacia «ba/lily-399811ac.eps»... Convirtiendo en «ba/lily-399811ac.pdf»... Salida de la página hacia «ba/lily-399811ac-1.eps»... Salida de la página hacia «ba/lily-399811ac-2.eps»... Convirtiendo en «ba/lily-399811ac-1.pdf»... Convirtiendo en «ba/lily-399811ac-2.pdf»... Escribiendo «ba/lily-399811ac-systems.texi»... Escribiendo «ba/lily-399811ac-systems.tex»... Escribiendo «ba/lily-399811ac-systems.count»... Enhorabuena. La compilación se ha completado satisfactoriamente. Vinculando archivos... Compilando /media/admin/DATOS/Dropbox/code/solfeo-book/out/solfeo.tex... Escribiendo `/media/admin/DATOS/Dropbox/code/solfeo-book/out/solfeo.tex'...
espero que esto ayude
Actualización 2
He probado otro enfoque. En su lugar, exporté de MuseScore a MusicXML. Entonces he usado:
musicxml2ly Exercise_1.05.xml -o Exercise_1.05_.ly
para convertir el .xml
archivo en un .ly
archivo y compilarlo nuevamente. Aún así, el ancho no se ajusta a la pantalla =( Me he quedado sin ideas.
Respuesta1
lilypond-book
es solo una forma complicada de producir imágenes PDF recortadas de cada uno de sus ejemplos y luego incluirlas automáticamente en un archivo LaTeX.
Puedes hacer lo mismo a mano, en mi opinión mucho más simple, usando el backend EPS lilypond
para producir una imagen recortada al tamaño de la música.
Entonces, el único componente real de LaTeX es incluir las imágenes PDF usando elgraphicx
paquete.El punto principal es que puedes establecer el ancho de la imagen en la lilypond
fuente y luego simplemente incluirla en su tamaño natural en el documento LaTeX.
En el siguiente ejemplo, puede guardar \include
el example.ly
archivo en todos sus .ly
archivos fuente de ejemplo de música y, una vez compilados, producirán archivos PDF recortados.
Tres archivos para este ejemplo:
example.ly
- Diseño de página para ejemplos musicales recortados enlilypond
score.ly
-- Su ejemplo musical, que\includes
el diseño de página ordena desdeexample.ly
analysis.tex
-- Archivo TeX de muestra que muestra cómo se incluye la imagen.
ARCHIVO 1,example.ly
% STYLE SHEET FOR IN-TEXT EXAMPLES
\version "2.18.2"
#( ly:set-option 'backend 'eps )
\paper{
indent = 0.75\in
line-width = 6.5\in
top-margin = 1\in
bottom-margin = 2\in
ragged-bottom = ##t
ragged-last-bottom = ##t
oddFooterMarkup=##f
oddHeaderMarkup=##f
bookTitleMarkup = ##f
scoreTitleMarkup = ##f
}
ARCHIVO 2 --score.ly
\version "2.18.2"
\include "example.ly"
Music = {
\clef "tenor"
\time 3/4
c4 d4 e4 |
f2 g4~ |
g4 a2 |
b2. |
c'2. |
\bar "||"
}
\score{
<<
\new Staff { \Music }
>>
\layout {}
}
ARCHIVO 3 -analysis.tex
\documentclass{article}
\usepackage[letterpaper,margin=1in]{geometry}
\usepackage{graphicx}
\usepackage{lipsum}
\begin{document}
\section{Music Example}
\lipsum[1]
See example~\ref{fig:score1}.
%*******************
\begin{figure}
\includegraphics{score}\centering
\caption{Score example 1}
\label{fig:score1}
\end{figure}
%*******************
\lipsum[2]
\end{document}
Respuesta2
Antigua pregunta, lo sé, pero estaba buscando una solución hoy, así que supongo que sigue siendo relevante. Aquí está la solución que estoy usando, simplemente la puse en el preámbulo de mi documento.
\usepackage{graphicx}
\setkeys{Gin}{width=\linewidth}
Esto funciona porque, bajo el capó, lo que se está usando es \includegraphics
y simplemente establezco el ancho predeterminado de esas imágenes en el ancho de una línea para que nunca desborde la página.