#latex #pdflatex
#Латекс #pdflatex
Вопрос:
Я набираю документ формата А5, который включает в себя музыкальную среду, предоставляемую musixtex. Я хотел бы уменьшить ширину строки / ширину текста только для музыки.
Вот несколько вещей, которые я пробовал:
- Поместите музыку в мини-страницу. Это отлично работает для коротких отрывков, но для более длинной музыки может потребоваться разрыв страницы, которого нет у мини-страницы.
- Используйте
newgeometry
команду и далееrestoregeometry
. Это работает, но, по-видимому, вставляет anewpage
, чего я также хотел бы избежать. - Используйте пакет changepage, который предоставляет команду
adjustwidth
. Это работает в левой части страницы, но тогда музыка не приводит к разрыву строки в нужном положении, а смещается вправо. Я предоставляю MWE этого ниже. - Используйте среду, похожую на список, например, trivlist или itemize. Это работает в левой части страницы, но тогда музыка не приводит к разрыву строки в нужном месте, а смещается вправо, в основном так же, как указано выше.
documentclass{article}
author{Myself}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage{geometry}
geometry{a5paper}
geometry{twoside}
geometry{inner=1.375cm}
geometry{outer=1.375cm}
geometry{top=1.5cm}
geometry{bottom=1.5cm}
usepackage{changepage}
usepackage{musixtex}
usepackage{lipsum}
begin{document}
lipsum[1]
begin{adjustwidth}{0.5cm}{0.5cm}
begin{music}
instrumentnumber{1}
setstaffs1{1}
generalmeter{meterfrac{9}{4}}
generalsignature{-1}
nostartrule
normalmusicsize
nobarnumbers
startpiece
NOtesqu{ff}ql{j}enbar
NOtesqup{h}cu{g}qu{fedc}en
NOtesqu{def}enbar
NOteshup{gf}enrightrepeat
NOtesql{jjj}enbar
NOteshlp{k}qu{h}ql{ij}en
NOtesqlp{j}cl{i}qu{h}enbar
NOteshup{g}qu{cdefgh}enbar
NOteshup{gf}en
Endpiece
end{music}
end{adjustwidth}
lipsum[2]
end{document}
Для меня оба варианта (3) и 4), похоже, не работают, потому что musixtex не понимает / не знает новых настроек для ширины строки и т. Д.
Дополнительная информация: я знаю, как должен быть скомпилирован код musixtex, я использую makefile, который снова вызывает pdflatex, musixflx и pdflatex. Это не причина проблемы.
Любая помощь будет оценена
Ответ №1:
Вы могли бы использовать tcolorbox
для создания разбитого окна:
documentclass{article}
author{Myself}
usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage{geometry}
geometry{a5paper}
geometry{twoside}
geometry{inner=1.375cm}
geometry{outer=1.375cm}
geometry{top=1.5cm}
geometry{bottom=1.5cm}
usepackage{changepage}
usepackage{musixtex}
usepackage{lipsum}
usepackage[most]{tcolorbox}
tcolorboxenvironment{music}{breakable,text width=dimexprtextwidth-2cm,enhanced,grow to left by=-1cm,colframe=white,colback=white}
begin{document}
lipsum[1]
begin{music}
instrumentnumber{1}
setstaffs1{1}
generalmeter{meterfrac{9}{4}}
generalsignature{-1}
nostartrule
normalmusicsize
nobarnumbers
startpiece
NOtesqu{ff}ql{j}enbar
NOtesqup{h}cu{g}qu{fedc}en
NOtesqu{def}enbar
NOteshup{gf}enrightrepeat
NOtesql{jjj}enbar
NOteshlp{k}qu{h}ql{ij}en
NOtesqlp{j}cl{i}qu{h}enbar
NOteshup{g}qu{cdefgh}enbar
NOteshup{gf}en
Endpiece
end{music}
lipsum[2]
end{document}