[Qgis-developer] Default typeface to package with app

Etienne Tourigny etourigny.dev at gmail.com
Sun Sep 16 05:45:51 PDT 2012


On Sat, Sep 15, 2012 at 8:25 PM, Larry Shaffer <larrys at dakotacarto.com> wrote:
> Hi,
>
> On Sat, Sep 15, 2012 at 3:46 PM, Etienne Tourigny
> <etourigny.dev at gmail.com> wrote:
>> Hi Larry,
>>
>> I agree with using a unique font - but it would be best to choose one
>> which would minimize the need to add size to qgis.
>>
>> For example, deja vu font has packages in ubuntu (to name one linux
>> distro), so adding it as an external dependency would not add size to
>> the qgis package.
>> Don't know about windows, osx and other linux distros though. Any case
>> we could provide an extra package, to be installed when needed.
>
> This would be a consideration for the packagers, given their knowledge
> of the platforms they support. Linux distros can probably forgo the
> install, but even then, there is no guarantee the installed DejaVu
> font (as an example) has the same font metrics as the one QGIS is
> expecting (not an uncommon problem). Font comparisons would be in
> order, first, before a decision to nix including it with a binary
> install.
>
> I don't think the added size of even the complete DejaVu font is too
> large (@5MB), considering the advantages. IMHO there should not be any
> separate in-app download (more coding to support). I don't think the
> user should be bothered to install anything other than the current
> packages (e.g. fontconfig, etc). Including a copy of the font along
> with the binary is the easiest solution, if there is any chance the
> default font may not exist on the target platform.
>
>> On another note - do you plan to allow user to choose his font of
>> choice, or hard-code a specific font - based on all your arguments
>> above?
>
> By 'default' I am suggesting that such a font always be available and
> set as the default for the QApplication (QGIS) when the user first
> installs, but by no means hard-coded. I see the other user choices for
> fonts to be the Qt default or any other font on the user's system,
> with the always available option to fallback to QGIS's 'preferred
> default' font (i.e. the one in question). While Qt's default fonts
> across platforms do reasonably well, it is not the same as using a
> standardized, compatible font of known metrics across all
> QGIS-supported platforms.
>
> As it stands now, there is no simple means for a user to switch the
> app font, or font sizes for specific parts of the app. Once those
> capabilities exist for users to switch fonts (possibly causing
> numerous layout problem 'bug' reports from users), it would be
> advantageous to always have a default font that the project
> definitively knows works and has been tested across platforms, and one
> that is not at the mercy of what Qt may select.

Hi,

it might be better not offering that choice  then, apart from font
sizes, to avoid support problems.

>
> Regards,
>
> Larry
>
>> Etienne
>>
>> On Sat, Sep 15, 2012 at 5:33 PM, Larry Shaffer <larrys at dakotacarto.com> wrote:
>>> Hi,
>>>
>>> Not sure if this has been discussed before, but how about including a
>>> default typeface to package with releases/source? Here are several
>>> reasons for doing so:
>>>
>>> * Standard QFontMetrics allow for developing a GUI overhaul around a
>>> known font across all platforms (at least in a pointsize at dpi default
>>> sense).
>>> * Known font metrics allow for standardizing relative font sizes in
>>> app-wide stylesheets, and per platform where needed.
>>> * Adding tests for the labeling engine would need a standard font of
>>> consistent metrics and available/functional on all platforms.
>>> * Currently the only Qt default font on all platforms (Courier, I
>>> believe) is not necessarily of similar metrics, since it is from
>>> various sources, nor is it IMHO very nice looking (apologies to any
>>> Courier fans).
>>> * Have a better/consistent monospaced font for the Python Console and
>>> anywhere editor instances (e.g. QScintilla2) or code snippets are
>>> displayed.
>>> * Have a known set of available Unicode glyphs for translators to rely upon.
>>> * Have a default font that provides a known set of Unicode glyphs for
>>> font markers in symbology. (Could be spread across multiple default
>>> symbol fonts.)
>>> * Provide workarounds for QtDesigner bug where platform-specific fonts
>>> end up embedded in .ui files [0].
>>>
>>> There are probably other good reasons. I've looked at several typeface
>>> candidates and think the DejaVu project's family of fonts [1] would
>>> work well. While DejaVu (based off of Bitstream's Vera Sans) is
>>> already available for Ubuntu and other Linux distros, it is relatively
>>> unused, though fully compatible, on all supported QGIS platforms [2].
>>> Downside: about 5 MBs extra (compressed) for package.
>>>
>>> As a TTF DejaVu can readily be loaded into QFontDatabase [3] on
>>> platforms that do not have a compatible DejaVu typeface already
>>> installed. This would probably entail only loading 4 heavily-used
>>> faces, like Sans Book/Bold and Mono Book/Bold, though I think the
>>> entire typeface should be included.
>>>
>>> Any other ideas for embedded fonts? Note: fonts to consider should be
>>> in TTF format, offer enough font faces, provide enough language and
>>> Unicode character support, and be available under the SIL Open Font
>>> [4] or similarly compatible license.
>>>
>>>
>>> [0] Search for 'font-family:' in .ui files
>>> [1] http://dejavu-fonts.org/wiki/Main_Page
>>> [2] http://en.wikipedia.org/wiki/DejaVu_fonts
>>> [3] http://qt-project.org/doc/qt-4.7/qfontdatabase.html#id-5441ac2b-3b52-411e-b2be-7ee83eef8041
>>> [4] http://en.wikipedia.org/wiki/SIL_Open_Font_License
>>>
>>> Regards,
>>>
>>> Larry
>>> _______________________________________________
>>> Qgis-developer mailing list
>>> Qgis-developer at lists.osgeo.org
>>> http://lists.osgeo.org/mailman/listinfo/qgis-developer


More information about the Qgis-developer mailing list