Task #3370

Charts, improve unicode characters display compatibility whatever the operating system

Added by Sebastien Jacquot 6 months ago. Updated 6 months ago.

Status:Feedback Start date:04/13/2023
Priority:Normal Due date:
Assignee:- % Done:

70%

Category:Charts Spent time: -
Target version:TXM 0.8.3

Description

For information, current default fonts used when creating a new chart are :
  • Linux: Lucida Sans
  • Windows: Lucida Sans Unicode
  • Mac OS: Lucida Sans Unicode

These fonts were chosen because they were embedded in the JVM on all 3 OS but also manage russian characters.

NOTE: It seems "Lucida Sans" doesn't work anymore in Ubuntu, another font is used since "Lucida Sans" is not found.

Since Java offers some logical fonts, it would be better to use them to improve support of different extended unicode character ranges regardless of operating system.

Solutions/First proposals

  • use one of the predefined logical font as default (Serif, SansSerif, Monospaced, Dialog or DialogInput) instead of a physical font
  • in the advanced chart editor tool bar, list only the logical fonts and find a way to access the physical font in another place (e.g. in a preference page)
  • or: in the advanced chart editor tool bar, list the logical fonts first then the physical fonts
  • in the combo box, instead of "Serif, SansSerif, Monospaced, Dialog or DialogInput" use typical physical font names as aliases, e.g. Times, Arial, Courrier to ease user understanding of the choices available
  • add autocompletion in fonts combo box
  • in charts engine preference page
    • for the 'Font/Police' preference use a simple combo box with only user-friendly font names
    • add a new preference for each user-friendly font name with a combo box to list all the physical fonts + 'default' (to use the default system font)

Implemented solution

  • added a combo box with user-friendly font name "Arial", "Courier", "Times" matching to logical AWT fonts: "SansSerif", "Monospaced", "Serif"
  • set charts engine default font preference as "SansSerif"/"Arial", size of 14, regular style
  • added another combo box only visible in expert mode to list all the fonts (logical and physical)
  • removed the SWT default font selector in charts engine preference page
  • added a simple combo box with only user-friendly font names in charts engine preference page

//TODO:
need to validate or define the charts engine default font preference (font, size, style)

Validation tests

  • test and potentially adjust the preferences (font, size, style) according to how the charts look and are well readable in the 3 operating systems

History

#1 Updated by Sebastien Jacquot 6 months ago

  • Description updated (diff)

#2 Updated by Sebastien Jacquot 6 months ago

  • Description updated (diff)

#3 Updated by Serge Heiden 6 months ago

For solution

"in the combo box, instead of "Serif, SansSerif, Monospaced, Dialog or DialogInput" use the base physical font name, e.g. Times, Arial, Courrier"

it is more

"in the combo box, instead of "Serif, SansSerif, Monospaced, Dialog or DialogInput" use typical physical font names as aliases, e.g. Times, Arial, Courrier to ease user understanding of the choices available"

#4 Updated by Serge Heiden 6 months ago

  • Subject changed from Charts, improve unicode characters compatibilty despite of the operating system to Charts, improve unicode characters display compatibility whatever the operating system

#5 Updated by Sebastien Jacquot 6 months ago

  • Description updated (diff)
  • Status changed from New to Feedback
  • % Done changed from 0 to 70

#6 Updated by Serge Heiden 6 months ago

  • Description updated (diff)

Also available in: Atom PDF