MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Related Changesets ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0031079Open CASCADE[OCCT] OCCT:Visualizationpublic2019-10-18 10:122019-11-10 11:42
Reporterkgv 
Assigned Toapn 
PrioritynormalSeverityfeature 
StatusverifiedResolutionfixed 
PlatformOSOS Version
Product Version 
Target Version[OCCT] 7.5.0*Fixed in Version 
Summary0031079: Visualization - embed minimal fallback font
DescriptionSome 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.
Steps To ReproduceN/A
TagsNo tags attached.
Test case numberNot needed
Attached Files

- Relationships
related to 0030439closedbugmaster Open CASCADE Visualization - extend fonts search within Font_FontMgr::FindFont() on Linux 
child of 0027258closedapn Open CASCADE Configuration - generate built-in replacement for mandatory resource files 

-  Notes
(0088292)
git (administrator)
2019-10-18 11:43

Branch CR31079 has been created by kgv.

SHA-1: 14db76205da682ae9bd88ab98c6d3c4657a13f89


No new revisions were added by this update.
(0088303)
git (administrator)
2019-10-18 14:31

Branch CR31079 has been updated forcibly by kgv.

SHA-1: 525cb1be73ec35ac462aca531de81638c797600e
(0088317)
git (administrator)
2019-10-18 17:05

Branch CR31079 has been updated forcibly by kgv.

SHA-1: 8ff3f5079942b3d0bd30cb9e96790c4064440e53
(0088318)
kgv (developer)
2019-10-18 17:06

Patch is ready for review.
(0088364)
abv (manager)
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.
(0088365)
git (administrator)
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

(0088366)
kgv (developer)
2019-10-20 18:49

Patch has been updated.
(0088551)
git (administrator)
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.
(0088584)
git (administrator)
2019-10-25 09:14

Branch CR31079_1 has been updated forcibly by abv.

SHA-1: f6c7c3717a54231efe7ca24fd31e7e88eeece87a
(0088585)
abv (manager)
2019-10-25 09:16

Reviewed with minor correction(documentation is amended), please integrate
(0088854)
git (administrator)
2019-11-10 11:41

Branch CR31079_1 has been deleted by inv.

SHA-1: f6c7c3717a54231efe7ca24fd31e7e88eeece87a
(0088863)
git (administrator)
2019-11-10 11:42

Branch CR31079 has been deleted by inv.

SHA-1: 8a650ffdaa0210f7a418b989b856a4cec7a2be9e

- Related Changesets
occt: master 36e28f96
Timestamp: 2019-10-18 08:40:55
Author: kgv
Committer: apn
Details ] Diff ]
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.
mod - dox/overview/overview.md Diff ] File ]
mod - src/Font/FILES Diff ] File ]
add - src/Font/Font_DejavuSans_Latin_woff.pxx 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/ViewerTest/ViewerTest_ObjectCommands.cxx Diff ] File ]
add - tests/3rdparty/fonts/C3 Diff ] File ]
rm - tests/3rdparty/parse.rules Diff ] File ]

- Issue History
Date Modified Username Field Change
2019-10-18 10:12 kgv New Issue
2019-10-18 10:12 kgv Assigned To => kgv
2019-10-18 10:12 kgv Relationship added related to 0031070
2019-10-18 10:12 kgv Relationship added related to 0030439
2019-10-18 10:22 kgv Description Updated View Revisions
2019-10-18 11:43 git Note Added: 0088292
2019-10-18 12:07 kgv Relationship added child of 0027258
2019-10-18 14:31 git Note Added: 0088303
2019-10-18 17:05 git Note Added: 0088317
2019-10-18 17:06 kgv Note Added: 0088318
2019-10-18 17:06 kgv Assigned To kgv => abv
2019-10-18 17:06 kgv Status new => resolved
2019-10-20 18:23 abv Note Added: 0088364
2019-10-20 18:23 abv Assigned To abv => kgv
2019-10-20 18:23 abv Status resolved => assigned
2019-10-20 18:49 git Note Added: 0088365
2019-10-20 18:49 kgv Note Added: 0088366
2019-10-20 18:49 kgv Assigned To kgv => abv
2019-10-20 18:49 kgv Status assigned => resolved
2019-10-23 12:59 git Note Added: 0088551
2019-10-25 09:14 git Note Added: 0088584
2019-10-25 09:16 abv Note Added: 0088585
2019-10-25 09:16 abv Assigned To abv => bugmaster
2019-10-25 09:16 abv Status resolved => reviewed
2019-10-26 19:45 apn Test case number => Not needed
2019-10-28 01:51 apn Changeset attached => occt master 36e28f96
2019-10-28 01:51 apn Assigned To bugmaster => apn
2019-10-28 01:51 apn Status reviewed => verified
2019-10-28 01:51 apn Resolution open => fixed
2019-11-10 11:41 git Note Added: 0088854
2019-11-10 11:42 git Note Added: 0088863


Copyright © 2000 - 2019 MantisBT Team
Powered by Mantis Bugtracker