Am Mo., 5. Jan. 2026 um 21:58 Uhr schrieb Werner LEMBERG <[email protected]>:
> Please post an image how it differs.
I used the following code for 2.12.3 _and_ 2.25.32. Taking the same
.eps, displaying the extents in terminal.
#(use-modules (ice-9 pretty-print))
#(define-markup-command (tst layout props arg)(markup?)
(let ((stil (interpret-markup layout props arg)))
(pretty-print
(list
(lilypond-version)
(cons 'x-ext (ly:stencil-extent stil X))
(cons 'y-ext (ly:stencil-extent stil Y))))
stil))
{
\set Staff.instrumentName = \markup \fontsize #-4 \simple #(lilypond-version)
c'1^\markup
\override #'(box-padding . 0)
\box
\tst
\epsfile #X #10
#"/home/harm/lilypond-git/Documentation/pictures/context-example.eps"
c'
}
Printed result is attached.
>
> > And the example in current NR 8.2.4 "Graphic notation inside markup"
> > is simply broken.
>
> Yeah. Do you have an idea what causes the difference?
2.12.-epsfile is different from the 2.25. version.
2.12.-epsfile internally calls the old `eps-file->stencil` seems to
respect the bounding-box for the final stencil.
2.25.-epsfile internally calls the pretty new image-markup. There you
can find the comment:
;; Stencil starts at (0, 0), even for an EPS image whose bounding
;; box does not start at (0, 0).
I.e. whatever bounding-box is processed, it is translated to start a (0, 0)
This feels like a design-decision. I've no clue about the reasoning
and didn't investigate further.
Cheers,
Harm