On Wed, 2004-10-27 at 08:36, Werner LEMBERG wrote:
> I have a fundamental problem with the width of lilypond output, and
> which should be fixed before releasing 2.4. Currently, I use
>
> (interval-start (ly:stencil-extent page X))
>
> but this isn't the right value. Reason: Contrary to TeX boxes,
> lilypond's horizontal reference point is not always the left edge of
> the output box:
>
> ^
> |
> +----+----------+
> | | |
> | | |
> ----+----+----------+--->
> | | |
> +----+----------+
> |
> |
>
> We have `height' and `depth' as with TeX boxes, and we have `width'
> and `extension' (to coin this term), where `width' is the amount right
> of the y-axis, and `extension' the left amount (and let's assume that
> `extension' is positive).
>
> The above scheme code gives `width + extension', but I need `width'
> only. How can I get that?
(ly:stencil-extent stencil X) returns a pair consisting of (extension .
width). So the the way to get the total width of the stencil is with a
function like
(define (stencil-span my-stencil my-direction)
"Determine the total size of @var{my-stencil} in direction
@var{my-direction}"
(let ((my-extent (ly:stencil-extent my-stencil mydirection))
(+ (car my-extent) (cadr my-extent))))
Carl
_______________________________________________
lilypond-devel mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/lilypond-devel