Issue 107419 - Add characters to OpenSymbol font (spaces, dashes, formatting characters)
Summary: Add characters to OpenSymbol font (spaces, dashes, formatting characters)
Status: CLOSED FIXED
Alias: None
Product: General
Classification: Code
Component: code (show other issues)
Version: OOO320m6
Hardware: All All
: P3 Trivial (vote)
Target Milestone: OOo 3.3
Assignee: michael.ruess
QA Contact: issues@framework
URL:
Keywords:
Depends on:
Blocks: 97248 98958
  Show dependency tree
 
Reported: 2009-12-03 16:48 UTC by stefan.baltzer
Modified: 2010-01-27 12:46 UTC (History)
4 users (show)

See Also:
Issue Type: ENHANCEMENT
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments
Version 2.3 of the OpenSymbol Font (202.49 KB, application/octet-stream)
2009-12-14 11:00 UTC, nospam
no flags Details
New Version 2.3.5 of OpenSymbol Font (202.47 KB, application/octet-stream)
2009-12-14 12:37 UTC, nospam
no flags Details
New Version 2.3.6 of OpenSymbol Font (202.50 KB, application/octet-stream)
2009-12-14 12:42 UTC, nospam
no flags Details
New Version 2.3.7 of OpenSymbol Font (202.48 KB, application/octet-stream)
2009-12-14 14:37 UTC, nospam
no flags Details
New Version 2.3.8 of OpenSymbol Font (194.01 KB, application/octet-stream)
2009-12-17 09:43 UTC, nospam
no flags Details
New Version 2.3.9 of OpenSymbol Font (194.01 KB, application/octet-stream)
2009-12-17 14:01 UTC, nospam
no flags Details

Note You need to log in before you can comment on or make changes to this issue.
Description stefan.baltzer 2009-12-03 16:48:20 UTC
SBA-> IH: As discussed with HDU, we should add some formatting characters to the
OpenSymbol font. When these are missing, imported documents may display wrong
characters and/or get their layout altered. The "low hanging fruit" wish list:
Spaces: U+2000 to U+200B
Dashes: U+2010 to U+2015

In order to fix issue 98958 (Show BiDi-Markers, e.g. when "Show Nonprinting
Character" is enabled), upward arrows with tips leftward/rightwards as text
direction marker display substitutes will be needed: U+21B0 and U+21B1

Look at http://www.unicode.org/charts/ for details
Comment 1 stefan.baltzer 2009-12-03 17:17:33 UTC
Issue 98958 and issue 97248 depend on this one. Adding them to "block list".
Comment 2 stefan.baltzer 2009-12-04 11:18:11 UTC
Changed component to "Framework".
Comment 3 nospam 2009-12-04 13:34:00 UTC
.
Comment 4 nospam 2009-12-14 11:00:45 UTC
Created attachment 66626 [details]
Version 2.3 of the OpenSymbol Font
Comment 5 nospam 2009-12-14 11:02:52 UTC
New Version 2.3 of font created with Spaces (2000-200B), Dashes (2010-2015) and Bidi-Arrows (21B0-
21B1)

Please test!

Comment 6 hdu@apache.org 2009-12-14 11:41:38 UTC
Thanks! Looks good, but there are some isssues that should be considered:
 - the advance widths should be widened to match the em-size of 2048 (e.g. U+2000->1024, U+2001-
>2048, U+2002->1024, U+2003->2048, U+2004->687, U+2005->512, U+2006->341, U+2009-
>409 etc.)
 - the dashes should have non-zero left-side bearings and right-side bearings so that concatenations of 
them (e.g. pairs of U+2014) don't look like one long line
Comment 7 hdu@apache.org 2009-12-14 11:55:27 UTC
While we are at it: adding "Medium Mathematical Space" at U+205F (having a width of 
4/18*emUnits==455) might be useful for OOMath. Please see 
http://www.unicode.org/notes/tn28/UTN28-PlainTextMath-v2.pdf for much more background info.
Comment 8 nospam 2009-12-14 12:00:45 UTC
@hdu: oh, I thought the em-size of the font is 1600. Where did you get the 2048 from?
Comment 9 nospam 2009-12-14 12:37:01 UTC
Created attachment 66629 [details]
New Version 2.3.5 of OpenSymbol Font
Comment 10 nospam 2009-12-14 12:39:40 UTC
sorry I mixed up something ;-)
changes in Version 2.3.5:
- Spaces corrected according to em-size of 2048
- Sidebearings for all Dashes deleted
Comment 11 nospam 2009-12-14 12:42:25 UTC
Created attachment 66630 [details]
New Version 2.3.6 of OpenSymbol Font
Comment 12 nospam 2009-12-14 12:43:19 UTC
Version 2.3.6: added "Medium Math Space" U+205F
Comment 13 hdu@apache.org 2009-12-14 13:06:28 UTC
2.3.6 is very good. Some observations though
- U+2007 looks quite wide (1600). If OpenSymbol provided fixed-width digits they'd be probably have 
about the width of an en-space (e.g. 1024)?
- U+2009 is only 256 em-Units wide, the annotation for that codepoint suggests one fifth or sometimes 
one sixth of the em-width for it (e.g. 410)
- IMHO the dashes should have NON-zero bearings
Comment 14 nospam 2009-12-14 14:37:58 UTC
Created attachment 66637 [details]
New Version 2.3.7 of OpenSymbol Font
Comment 15 nospam 2009-12-14 14:40:47 UTC
Changed in 2.3.7:

- NON-Zero sidebearings for all dashes and hyphens  ;-)
- size of U+2007 changed to 1200
- size of U+2009 changed to 410
Comment 16 hdu@apache.org 2009-12-15 07:54:33 UTC
Looks almost good now. It still needs to be thoroughly tested, e.g. comparing each char with other 
fonts that support them, comparing the relation of widths, checking with the unicode standard, etc.

Some more observations:
The advance widths of the dashes should respect the unicode requirements, e.g. the advance width of 
the em-dash should be exactly 2048 for a font like this with an em-size of 2048. I'm aware that I was 
the one who requested that there must be some space on either side of the dashes, but this should be 
done by trying to have the cumulative widths of left-side-bearing, dash and right-side-bearing be the 
required width. Example: in OpenSymbol 2.3.6 the em-dash U+2014 had an advance width of 2048, 
but there was no spacing on either side. For OpenSymbol 2.3.7 there was some spacing added on the 
left side (128 wide) and some spacing on the right side (126 wide). Doing that without reducing the 
ink-width of the dash glyph extended the cumulative width to 2302. It should be at 2048 though. 
Doing the math on how much the ink-width of the dash needs to be reduced to satisfy this ambitious 
goal of targeting an advance width of 2048 is left as an exercise to the reader...
Comment 17 nospam 2009-12-15 09:59:11 UTC
In standard fonts (like Times) the en- and em-dashes have zero sidebearings, but the hyphen has NON-
zero sidebearings. We need to decide if we really want to go a special way here and have NON-zero 
sidebearings for en- and em-dashes.



Comment 18 hdu@apache.org 2009-12-15 11:19:31 UTC
On OSX the Times, Helvetica, Verdana, etc. fonts have sidebearings for all dashes except for the endash. 
Times New Roman does not have any though indeed, quite the opposite as it extends over the 
typographical width.

With this new info the need for sidebearings becomes less important for me. What is most important 
though is the correct advance width for each of them as it also influences the line layout and line breaking 
and not only how the line looks.
Comment 19 nospam 2009-12-17 09:43:20 UTC
Created attachment 66678 [details]
New Version 2.3.8 of OpenSymbol Font
Comment 20 nospam 2009-12-17 09:46:18 UTC
New Version 2.3.8 with zero sidebearings for those dashes that have the size of 2048 - so that no symbol 
is wider than the em-size - other dashes have NON-zero sidebearings (like standard fonts)
Comment 21 nospam 2009-12-17 14:01:56 UTC
Created attachment 66692 [details]
New Version 2.3.9 of OpenSymbol Font
Comment 22 nospam 2009-12-17 14:02:35 UTC
2.3.9: size of en-dash set to 1024 
Comment 23 nospam 2010-01-04 13:01:23 UTC
fixed in CWS tl76
Comment 24 thomas.lange 2010-01-08 09:10:13 UTC
.
Comment 25 michael.ruess 2010-01-08 13:53:11 UTC
Verified in CWS tl76, OpenSymbol 2.3.9 does contain the characters.
Comment 26 michael.ruess 2010-01-27 12:46:12 UTC
Checked in DEV300m70 on WinXP, Ubuntu 9.10 and SuSE 11.