[Interest] Dilemma with Truetype/ClearType or maybe Qt itself?

Aragon Del Francia adf4uk at gmail.com
Thu Apr 9 12:55:04 CEST 2015


Hi,

i am currently developing a rather simple tool to demonstrate how unique
ttf/otf-fonts can look like on a LED-Display.

*What it does*: it renders with a given font some text on a QImage, which
is then saved as a bitmap-output-file. That BMP is then scanned
pixel-by-pixel and that data is used to show some LED-kind-of-image.
As you might now, it is possible to save Bitmap-Characters into TTFs/OTFs,
which then will be applied at certain font-sizes.

*However*, when in Linux the general font-smoothing is activated (in CentOS
found inside the appearance seetings) or in Windows the so called ClearType
feature, those features prevent the usage of those embedded bitmaps.
And furthermore they also alter the fonts in some ways, such as
Anti-Aliasing and Subpixelrendering.

My first thought on this was to switch off those features completely, which
does do the job for once. But doesn't solve the problem, as you need
administrative rights to do so, and the software needs to run anywhere
without those.
Then I found out that while ClearType under Windows is turned off, one can
seperately turn it on inside InternetExplorer.

*Therefore* I thought there should be some kind of way to tell my app not
to use this feature.
Microsoft Developer Network (MSDN) didn't help much so far. Besides the
same kind of effect can be seen in Linux, too.
Conclusion: There MUST be a control inside Qt which decides wether to use
those features or not.

To round this up, here is what I tried and did not work so far:

   - CustomFont.setKerning(false);
   - CustomFont.setStyleStrategy(QFont::NoAntialias);
   - CustomFont.setStyleStrategy(QFont::PreferBitmap);
   - CustomFont.setStyleStrategy(QFont::NoSubpixelAntialias);
   - CustomFont.setHintingPreference(QFont::PreferNoHinting);
   - CustomPainter.setRenderHint(QPainter::Antialiasing, false);
   - CustomPainter.setRenderHint(QPainter::HighQualityAntialiasing, false);

Appreciate any help/advice you got on this one.

Cheers
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20150409/2484b3cf/attachment.html>


More information about the Interest mailing list