Problems with embedding fonts and makeqpf tool



  • Hi...

    I have looked around and have not found a clear path to getting larger fonts (point size 30) into our application. So I am going to restart here and ask...

    It appears the build environment we have has the font family we want to use (helvetica) but only up to point size 24. As Qt uses a fixed point size format, I am thinking what I need to do is either find a file called helvetica_300_50.qpf (somewhere on the internet) or create the file my self.

    Going with the idea I can create this file... I figure there's got to be a qpf creation tool at nokina or trolltech. But I have not found one. Ok so now I'm confused. How do people go about creating fonts for their Qt applications?

    -thanks



  • Ok, no responses for the day. So I'll rename the thread and ask how to create and edit qpf font files.

    I assume qpf are specific to Qt. And that these fixed size files make it quick to render text in a Qt application. I see the SDK we have been using has helvetica fonts. But they stop at point size 24. A point size 30 would be nice to have. So, I assume there are tools to generate qpf fonts. But I haven't found any. Also, we were using a little arrow character from a different font family. It looks like helvetica doesn't have an arrow character. So I was thinking it would be nice to be able to edit one of the helvetica font files (say the 20 point file) and add such a character.

    -thanks for any help



  • Just to be sure - are you using Qt for Embedded Linux (as you have posted this question in General and Desktop, not Mobile and Embedded)?

    You can either use "makeqpf":http://doc.qt.nokia.com/latest/qt-embedded-makeqpf.html to prerender your font or just use any other freetype font (provided you haven't disabled freetype support) directly.

    Qt Desktop supports any TrueType fonts, TrueType font collections, and OpenType fonts. You must not use prerendered fonts (qpf).



  • Yes, you are right. This post shuld be in the next forum. I have seen it done, but can not find an edit mode which allows me to change where this thread is posted.

    Our application will be running on an embedded Linux target. However, it is also going to have to run on Win and Mac targets for development and demonstration purposes. Several week ago we gave up hope of doing this trasparently. Manly because there is no native (to Qt) video play back support on the embedded Linux target. But also because of text size issues.

    Thank you for that link to makeqpf. But either I am blind or do not understand. There is no actual makeqpf utility on this page - is there?

    -thanks



  • [quote author="st2000" date="1317204881"]Yes, you are right. This post shuld be in the next forum. I have seen it done, but can not find an edit mode which allows me to change where this thread is posted.[/quote]

    There is (unfortunately) none, except you are a moderator.

    [quote author="st2000" date="1317204881"]Thank you for that link to makeqpf. But either I am blind or do not understand. There is no actual makeqpf utility on this page - is there?[/quote]

    You'll find it in $QTDIR/tools/makeqpf. I'm not quite sure if it is part of the SDK - in doubt fetch the Qt sources using the SDK, the webpage or gitorious and build it.


  • Moderators

    Moved to the mobile and embedded subforum.



  • bq. SDK – in doubt fetch the Qt sources using the SDK, the webpage or gitorious and build it.

    I'm having a problem with this. And being new - I need to ask even more questions...

    At work, there is a common down-load server which grabs and inspects files. This is death to embedded autonomous down load processes inside of other programs. I suspect this is my problem as when I look for a way to get code (packages under Help->Start Updater) it just hangs for-ever.

    So if there are other ways of getting makeqpf, I'd like to hear about it. If it is a web page or a GIT repository, what is the URL?

    -thanks



  • Ug, I finally grabbed a copy of the source for a Qt makeqpf project. (The Qt tool upgrade process is NOT compatible with my work's download filters! That's for sure.) So far, this has really been a struggle. Either I am being totally clueless - or someone has got to put together a how-to document.

    Anyway, the latest hiccup:
    When compiling the makeqpf Qt project, I get this error:
    ...QtSDK/QtSources/4.7.4/tools/makeqpf/qpf2.h:45: error: private/qfontengine_qpf_p.h: No such file or directory

    Anyone know what is missing. Well, obviously the qfontengine_qpf_p.h file. But where do I find this file? What package do I need to download? This is a Fedora15 system BTW.

    -thanks



  • Evidently there are a lot of files missing:
    qfixed_p.h
    qfont_p.h
    qfontengine_ft_p.h
    qfontengine_p.h
    qfontengine_qpf_p.h
    ...and on

    I can not imagine I am suppose to pick each one up from GIT. There must be a package or something I am missing. Anyone have any ideas?

    -thanks



  • You shouldn't use the QtSources from the SDK for compiling Qt or any of its tools. Grab a source tarball and compile from there.



  • bq. Grab a source tarball and compile from there.

    (I feel like a pilot at an unfamiliar airport asking for "turn-by-turn".)

    So, where do I get a Qt source tarball? I have been looking at http://gitorious.org/ but am unfamiliar of how this is connected to either Trolltech or Nokia.

    I happened across this page but I think I want Qt not Qt-3D:
    http://doc.qt.nokia.com/qt3d-snapshot/qt3d-building.html

    -thanks



  • You can get it from the download page: http://qt.nokia.com/downloads/downloads#qt-lib



  • Guys (Gals), I hate to keep asking for help - trying to create a few qpf font sets for my embedded Qt application - but I feel like we are almost there...

    I downloaded the tar.gz file and unzipped it. But there is still no directory called: "qt-everywhere-opensource-src-4.7.4/tools/makeqpf/private" as needed by the makeqpf source code. Just to be clear, this newly downloaded source code is looking for the same missing headers as the code I grabbed a few post ago (above).

    Still can not believe it is so hard to add a few more font sizes to an embedded Qt application. What am I doing wrong?

    -thanks



  • Please stop renaming your topic. Come up with a single name that describes your question (the current one only describes your state of mind, wich is not something we can help you with), and leave it at that. Leave it to admins to change the title if needed (except of perhaps adding a [solved] tag if the issue has been addressed).



  • I've update the thread with a sane title.

    Sources for a makeqpf tool are in qt-everywhere-opensource-src-4.7.4/tools/makeqpf. After issuing a make in that directory, there is a makeqpf tool in qt-everywhere-opensource-src-4.7.4/bin. I cannot test if it works, though.



  • I got the same problem as yours.
    convert the required font using makeqpf (its in /qtsdk-2010.03/qt/tools/makeqpf/).
    place the converted font into target's font directory(/usr/local/QtEmbedded-4.7.1/lib/fonts/)
    your problem will be solved.

    if makeqpf is not running and showed FontEngine error,then it means QtSdk is not properly installed or installed more than one versions.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.