occt: master 5b377041

Author Committer Branch Timestamp Parent
kgv bugmaster master 2019-01-10 20:10:51 master 169c944c
Affected Issues  0030439: Visualization - extend fonts search within Font_FontMgr::FindFont() on Linux
Changeset 0030439: Visualization - extend fonts search within Font_FontMgr::FindFont() on Linux

Font_FontMgr has been redesigned to:
- Store fonts in a map instead a list.
- Allow mapping multiple fonts to a single alias.
- Log informative message about usage of non-requested font (fallback).
- Register all font files within standard folders on Linux when "fonts.dir" is not found.
- Prefer specific alias ("serif") as default fallback font instead of arbitrary one in a system.

A couple of obsolete and broken font aliases have been removed;
instead, new aliases of fonts popular on Linux platform have been added.

Font_NameOfFont.hxx has been extended with more neutral aliases
"monospace", "serif", "sans-serif", "cjk" and "korean".

Font_FontAspect enumeration values have been renamed Font_FA_ -> Font_FontAspect_
with old values preserved as alias.

Font_SystemFont has been extended with a list of paths to Font_FontAspect styles,
so that entire Font Family is now defined within a single Font_SystemFont instance.
Non-resizable fonts are now ignored by Font Manager.
mod - src/Font/Font_FontAspect.hxx Diff File
mod - src/Font/Font_FontMgr.cxx Diff File
mod - src/Font/Font_FontMgr.hxx Diff File
mod - src/Font/Font_FTFont.cxx Diff File
mod - src/Font/Font_NameOfFont.hxx Diff File
mod - src/Font/Font_SystemFont.cxx Diff File
mod - src/Font/Font_SystemFont.hxx Diff File
mod - src/OpenGl/OpenGl_Text.cxx Diff File
mod - src/ViewerTest/ViewerTest_ObjectCommands.cxx Diff File
mod - tests/3rdparty/fonts/A2 Diff File
mod - tests/3rdparty/fonts/A6 Diff File
mod - tests/3rdparty/fonts/A8 Diff File
mod - tests/3rdparty/fonts/B1 Diff File
mod - tests/3rdparty/fonts/B2 Diff File
mod - tests/bugs/vis/bug22149 Diff File
mod - tests/demo/draw/bug23745 Diff File