MantisBT - Open CASCADE
View Issue Details
0031079Open CASCADE[OCCT] OCCT:Visualizationpublic2019-10-18 10:122020-12-02 17:12
[OCCT] 7.5.0[OCCT] 7.5.0 
Not needed
0031079: Visualization - embed minimal fallback font
Some platforms do not provide access to system font files (iOS, WASM), while on others there is some risk not finding location of system fonts (Linux).
In this case, 3D Viewer will be unable displaying any text if application will not package its own font file and register it within OCCT font manager.

Although packaging font files with application is unavoidable in general on such platforms (it is up to application to decide how text should look and which UNICODE ranges are necessary to handle), missing text in 3D viewer is an issue for first development steps and for debugging.
In particular, X/Y/Z labels in V3d_Trihedron, box labels in AIS_ViewCube, performance counters in OpenGl viewer requires minimal sub-set of Latin letters, and it will be good providing them.

For this purpose, it is proposed embedding a single fallback font into TKService. As this font will be rarely used, it is suggested compressing file with only Latin1 symbols.

DejaVu font is proposed for this purpose, as its extended MIT License shouldn't cause embedding issues.
No tags attached.
related to 0030439closed bugmaster Open CASCADE Visualization - extend fonts search within Font_FontMgr::FindFont() on Linux 
parent of 0031468closed bugmaster Open CASCADE Visualization - add public interface to return embedding a single fallback font 
child of 0027258closed apn Open CASCADE Configuration - generate built-in replacement for mandatory resource files 
Issue History
2019-10-18 10:12kgvNew Issue
2019-10-18 10:12kgvAssigned To => kgv
2019-10-18 10:12kgvRelationship addedrelated to 0031070
2019-10-18 10:12kgvRelationship addedrelated to 0030439
2019-10-18 10:22kgvDescription Updatedbug_revision_view_page.php?rev_id=22072#r22072
2019-10-18 11:43gitNote Added: 0088292
2019-10-18 12:07kgvRelationship addedchild of 0027258
2019-10-18 14:31gitNote Added: 0088303
2019-10-18 17:05gitNote Added: 0088317
2019-10-18 17:06kgvNote Added: 0088318
2019-10-18 17:06kgvAssigned Tokgv => abv
2019-10-18 17:06kgvStatusnew => resolved
2019-10-20 18:23abvNote Added: 0088364
2019-10-20 18:23abvAssigned Toabv => kgv
2019-10-20 18:23abvStatusresolved => assigned
2019-10-20 18:49gitNote Added: 0088365
2019-10-20 18:49kgvNote Added: 0088366
2019-10-20 18:49kgvAssigned Tokgv => abv
2019-10-20 18:49kgvStatusassigned => resolved
2019-10-23 12:59gitNote Added: 0088551
2019-10-25 09:14gitNote Added: 0088584
2019-10-25 09:16abvNote Added: 0088585
2019-10-25 09:16abvAssigned Toabv => bugmaster
2019-10-25 09:16abvStatusresolved => reviewed
2019-10-26 19:45apnTest case number => Not needed
2019-10-28 01:51apnChangeset attached => occt master 36e28f96
2019-10-28 01:51apnAssigned Tobugmaster => apn
2019-10-28 01:51apnStatusreviewed => verified
2019-10-28 01:51apnResolutionopen => fixed
2019-11-10 11:41gitNote Added: 0088854
2019-11-10 11:42gitNote Added: 0088863
2020-03-27 14:39kgvRelationship addedparent of 0031468
2020-12-02 16:40emoFixed in Version => 7.5.0
2020-12-02 17:12emoStatusverified => closed

2019-10-18 11:43   
Branch CR31079 has been created by kgv.

SHA-1: 14db76205da682ae9bd88ab98c6d3c4657a13f89

No new revisions were added by this update.
2019-10-18 14:31   
Branch CR31079 has been updated forcibly by kgv.

SHA-1: 525cb1be73ec35ac462aca531de81638c797600e
2019-10-18 17:05   
Branch CR31079 has been updated forcibly by kgv.

SHA-1: 8ff3f5079942b3d0bd30cb9e96790c4064440e53
2019-10-18 17:06   
Patch is ready for review.
2019-10-20 18:23   
Please add paragraph indicating the use of the font into the Acknowledgements section of overview.

In Font_FontMgr.hxx, new parameter "NoFailMsg" to method FindFont() could be probably better named "doFailMsg", with appropriate description (e.g. "In case of failure, send error message in default messenger"), and default True - just to facilitate comprehension.
2019-10-20 18:49   
Branch CR31079 has been updated by kgv.

SHA-1: 8a650ffdaa0210f7a418b989b856a4cec7a2be9e

Detailed log of new commits:

Author: kgv
Date: Sun Oct 20 18:48:18 2019 +0300

    # abv remarks

2019-10-20 18:49   
Patch has been updated.
2019-10-23 12:59   
Branch CR31079_1 has been created by kgv.

SHA-1: 87d077cfef86d82f0d5d04de392e23ab277ba15c

Detailed log of new commits:

Author: kgv
Date: Fri Oct 18 11:40:55 2019 +0300

    0031079: Visualization - embed minimal fallback font
    Font_FTFont::FindAndCreate() now loads embedded fallback font within Font_StrictLevel_Any level.
    Font_FontMgr::FindFont() - fixed misprint in message, and customized message for range fallback error.
    Font_FontMgr - added one more fallback Korean font for Linux.
    vfont command has been extended with options to clear Font Manager content.
2019-10-25 09:14   
Branch CR31079_1 has been updated forcibly by abv.

SHA-1: f6c7c3717a54231efe7ca24fd31e7e88eeece87a
2019-10-25 09:16   
Reviewed with minor correction(documentation is amended), please integrate
2019-11-10 11:41   
Branch CR31079_1 has been deleted by inv.

SHA-1: f6c7c3717a54231efe7ca24fd31e7e88eeece87a
2019-11-10 11:42   
Branch CR31079 has been deleted by inv.

SHA-1: 8a650ffdaa0210f7a418b989b856a4cec7a2be9e