[scribus] Get the width of a piece of text in a Scribus script?

Adam adam at photosynth.ca
Fri Aug 9 22:43:52 UTC 2013


Good day,
I'm working on a script for laying out a song book that includes lyrics 
and chords. Chord names need to be placed above each line of lyrics, at 
the appropriate spot in the lyrics. I've explored a variety of 
approaches to this using typographic options to try to get the chord 
letters bumped up above the lyrics line using baseline shift and kerning 
adjustments, but so far these have not proved effective.

My present approach is to put each chord in a small text box above the 
lyrics line. In order to do this, I need to be able to determine the 
horizontal position of that point in the lyrics, as rendered in the 
relevant font and type size. Does anyone know of a way to do this?

Apparently the ImageFont python module (which is a subset of PIL, or the 
Python Imaging Library), can return the width of a text line as 
rendered, but I so far have not been able to get this module working 
properly (there's a C library involved, which is malfunctioning in my 
installation).

Does anyone know of any other way to programatically measure the 
rendered width of a line of text?

Thanks for your help!

Adam



More information about the scribus mailing list