skynav / ttt

Timed Text Toolkit
BSD 2-Clause "Simplified" License
75 stars 15 forks source link

appearance of fullwidth tilde (U+FF5E) changes when comparing horizontal to vertical writing modes using openJDK8 #151

Open shimada-development opened 9 years ago

shimada-development commented 9 years ago

Must be using openJDK 8. Refer to "fullwidthTilde.cap"

skynavga commented 9 years ago

please describe precisely what is meant by "appearance changes"

shimada-development commented 9 years ago

Refer to the image files provided in the "bugExamples" folder: https://drive.google.com/drive/u/0/folders/0BzMmkO3rANaKfnFTSWhicjBiejVQUmt6VERwTGZCd3FuQ0Z5ellSbHNUNkswbmRRSlpaeFU

fullwidthTilde_ttt_1.png fullwidthTilde_ttt_2.png

Very obvious differences in size of full-width tilde. Especially when compared to the half-width tilde.

skynavga commented 9 years ago

The full width tilde follows the half width tilde in the source text. In the horizontal flow example, it appears that these are reversed (the half width tilde appears after the full width tilde). In the vertical flow example, they appear in the correct order, except that the full width tilde glyph slightly overlaps the half width tilde. This suggests there are possibly multiple problems.

On the Oracle JDK, we see neither of these issues. However, there may be a work around. A while back we added a way to configure TTPE to force the use of the SVG element instead of the element when rendering certain glyphs. We did this because we found some inconsistent behavior between different SVG renderers in browsers and batik. This proved to be able to fix certain glyph mapping and placement problems. Let's try it here as an experiment to see if it will fix this problem you are seeing on OpenJDK.

Attached below is a link patch file that adds configuration information to the NotoSans font specification in TTPE that forces the glyphs used for half and full width tildes in both horizontal and vertical forms to use SVG . Let us know whether or not it resolves your problem.

patch.txt