[openlp-dev] Thin outlines with large fonts

James Muscat jamesremuscat at gmail.com
Sat Dec 30 12:55:21 EST 2017


Hi,

Firstly - huge thanks for writing OpenLP and for making it open-source,
meaning that it's possible for me to write this sort of email! I've used
OpenLP for a couple of one-offs in the past but I'm also now considering it
as a replacement to our church's current software, which has struggled
since we upgraded to an HD video system this past year.

I've discovered what looks like a bug in OpenLP that would affect us:
namely, it's not possible to set thin outlines on large fonts.

It looks like this is due to a mismatch in units between the UI (which uses
pt and is restricted to be an integer value) and
`htmlbuilder.py#build_lyrics_outline_css` which uses em. This means that
the minimum possible outline width is 1/16em (not sure why there's a
division by 16 there), which for large font sizes (I'm looking at 96pt or
so) the outline is very thick.

It looks like possible solutions would be changing the UI to allow float
values in em, or changing the generated CSS to use integer pt values
(remembering to account for this in `left_margin` in
`build_lyrics_format_css`).

The disadvantage of either approach is that it will break people's existing
themes if they use outlines, though it's straightforward to make the
adjustment.

I have a patch that does the latter and passes all tests (bar what looks
like a spurious one from
`test_bible_gateway_extract_books_support_redirect`), and can put together
a merge request - but I thought I'd say hello here first to check if there
was a reason for it being done the previous way.

Thanks,

James
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openlp.io/pipermail/openlp-dev/attachments/20171230/4af33a05/attachment.html>


More information about the openlp-dev mailing list