LCDproc development and user support list

Text archives Help

[Lcdproc] Re: new LCDproc-0.5 "meta"-driver soon

Chronological Thread 
  • From: lucianm AT (Lucian Muresan)
  • Subject: [Lcdproc] Re: new LCDproc-0.5 "meta"-driver soon
  • Date: Thu Jan 27 13:20:02 2005

Hi Joris,
Hi list,

this is how far I got with freetype support in my driver .
You can see the output rendered by graphlcd-base into PBM images which I
physical Noritake800 (128x64 pixels), in which I loaded *courbd.ttf* of
size "12", this yielded in a LCDproc character display size of 18x5.
As you can see, there are no LCDproc-specific icons yet, this is just
what's rendered from the loaded true type font.

Other fonts (not only TrueType which is now implemented already, but
also bitmap windows fonts supported by FreeType2) and other font sizes
would produce differently rendered fonts, some good-looking, some not
too good looking (if smaller), and of course different character display
resolutions for LCDproc.

>>But any size works for the daemon, the problem is usually that most clients
>>can't generate nice screens for all screen sizes.

I think the LCDproc user shouldn't be bothered by physical pixel
resolutions of the graphlcd display, but he should have the choice to
specify a desired text area size (up to him if he chooses such a
standard size or not, depending on clients he knows he will use), a
minimum font face pixel resolution he can still read or like the fonts
at, and also specify a font file. Then the driver will calculate if the
specified font can be rendered in a size
- not less than let's say, 6x8 pixels font face (and thus produce
unreadable characters);
- such that this specified character display resolution can be
achieved whithin the physical pixel resolution of the display.

If latter condition is met, the specified text size will be used, and
optionally (by config, just for fine-tuning purposes at setup) a one
pixel thick border around the cropped usable text area (but whithin the
usable area) will be drawn on the display, to show that the requesrted
text size was achieved, then the user has to turn the border off anyway,
as it will crop 1 pixel away all around.

If the text size specified cannot be achieved in a "human readable" way
(specified by the minumum font face pixel size), the border will simply
be automatically turned on to show that it is not be visible on all the
4 edges of the text area.

This is then what I have in mind for the /etc/LCDd.conf entry:


# mandatory:

Driver = noritake800 # configure which graphical display
# supported by graphlcd-base to use,
# (see /etc/graphlcd.conf for possible
# drivers)

UseFT2 = yes # no = use graphlcd bitmap fonts (they
# have only one size / font file);
# yes = use fonts supported by FreeType2
# (needs Freetype2 support in
# libglcdprocdriver and its dependants)

TextResolution = 21x8 # text resolution in fixed width
# characters (if it won't fit according
# to available physical pixel resolution
# and the minimum available font face
# size in pixels, 'DebugBorder' will
# automatically be turned on;

FontFile = /fonts/cour.ttf # path to font file to use

# these only apply if UseFT2 = yes:

CharEncoding = ISO8859-2 # character encoding to use

MinFontFaceSize = 6x8 # minumum size in pixels in which fonts
# should be rendered (according to
# personal taste or readability of
# the selected FT2-supported font

# optional:

Brightness = 50 # Brightness (in %) if applicable
Contrast = 5 # Contrast (in ??) if applicable
UpsideDown = no # flip image upside down
Invert = no # invert light/dark pixels
Backlight = yes # backlight on/off
DebugBorder = yes # turns on/off 1 pixel thick debugging
# border whithin the usable text area,
# for setting up TextResolution and
# MinFontFaceSize (if unsing FT2);

So, what do you think of it?


P.S. Joris, "how _very_ small font for SED1330" would jou like me to try
to render and see how it looks like?

Archive powered by MHonArc 2.6.18.

Top of page