Bug 108302 - Dingbats fully rotated in vertical layout
Summary: Dingbats fully rotated in vertical layout
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: LibreOffice (show other bugs)
Version:
(earliest affected)
5.4.0.0.beta1
Hardware: All Windows (All)
: medium normal
Assignee: Mark Hung
URL:
Whiteboard: target:6.1.0 target:6.0.0.1
Keywords:
: 108300 114018 (view as bug list)
Depends on:
Blocks: Vertical-Text
  Show dependency treegraph
 
Reported: 2017-06-02 09:53 UTC by Volga
Modified: 2017-12-08 19:51 UTC (History)
4 users (show)

See Also:
Crash report or crash signature:


Attachments
Test file (11.79 KB, application/vnd.oasis.opendocument.text)
2017-06-02 09:53 UTC, Volga
Details
screenshot (71.08 KB, image/png)
2017-06-02 09:56 UTC, Volga
Details
Screenshot after the fix (70.99 KB, image/png)
2017-12-07 04:26 UTC, Kevin Suo
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Volga 2017-06-02 09:53:01 UTC
Description:
Unicode have defined diffirened vertical orientation properties for Dingbats (U+2700-27BF), but all of them are simpley rotated in vertical layout.

Steps to Reproduce:
1. Insert a frame and set text direction as right-to- left (vertical)
2. Copy all Dingbats into frame

Actual Results:  
All Dingbats looks rotated.

Expected Results:
According to http://www.unicode.org/Public/vertical/revision-17/VerticalOrientation-17.txt, the vertical orientation properties different between following code points of Dingbat block:
2700..2767 ; U
2768..2775 ; R
2776..2793 ; U
2794..27BF ; R

Additionaly, not all CJK fonts support Unicode Dingbats, not all fonts support Dingbats has vhea/vmtx to defined orientation, so they should be force rotated based on their VO properties.


Reproducible: Always

User Profile Reset: No

Additional Info:
Version: 5.4.0.0.beta1 (x64)
Build ID:8672113ead4e403c55e31b1d9a3d1e0f3b299577
CPU threads: 4; OS: Windows 6.19; UI render: default; 
Locale: zh-CN (zh_CN); Calc: group


User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:53.0) Gecko/20100101 Firefox/53.0
Comment 1 Volga 2017-06-02 09:53:51 UTC
Created attachment 133801 [details]
Test file
Comment 2 Volga 2017-06-02 09:56:30 UTC
Created attachment 133802 [details]
screenshot
Comment 3 V Stuart Foote 2017-06-02 14:02:53 UTC
Confirming on Windows 10 Pro 64-bit en-US with
Version: 5.3.3.2 (x64)
Build ID: 3d9a8b4b4e538a85e0782bd6c2d430bafe583448
CPU Threads: 8; OS Version: Windows 6.19; UI Render: GL; Layout Engine: new; 
Locale: en-US (en_US); Calc: group

and 

Version: 5.5.0.0.alpha0+ (x64)
Build ID: 6517fd2107a5a71290afad8850da0eab51519bc6
CPU threads: 8; OS: Windows 6.19; UI render: GL; 
TinderBox: Win-x86_64@42, Branch:master, Time: 2017-06-01_23:17:13
Locale: en-US (en_US); Calc: CL

Same result (no rotation) with various fonts with coverage of the Block: Liberation Serif, Segoe UI Symbol, Symbola. Even a well structured CJK font Source Han Sans SC rotates only a few of the glyphs (2780-278F).

So missing metric(s) and a limitation of the font, or incorrect handling of the vertical text? 

I did not check this on a Linux build.
Comment 4 Volga 2017-06-06 04:36:10 UTC
I think this bug is similar to bug 103969 due to lack of required metrics from fonts, such bugs would affect some legacy CJK fonts which not well constructed for vertical layout, we should make some improves to work around that.
Comment 5 Commit Notification 2017-12-05 23:04:49 UTC
Mark Hung committed a patch related to this issue.
It has been pushed to "master":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=2392238e480ecc1d1a5e2e69789e79c10f142d6c

tdf#108302: keep the font unrotated if @font isn't available.

It will be available in 6.1.0.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 6 Volga 2017-12-06 02:57:15 UTC
Is it possible to backport to 5.4 branch?
Comment 7 Mark Hung 2017-12-06 23:09:07 UTC
(In reply to Volga from comment #6)
> Is it possible to backport to 5.4 branch?

I don't plan to do that. LibreOffice 6.0 is coming and 5.4 will become the Stable one very soon. Less change will be better.
Comment 8 Kevin Suo 2017-12-07 04:26:19 UTC
Created attachment 138258 [details]
Screenshot after the fix

This is how it looks like after the fix on master.

I am marking this as RESOLVED FIXED. Backport to libreoffice-6-0 is in https://gerrit.libreoffice.org/#/c/45919/.
Comment 9 Xisco Faulí 2017-12-08 08:06:22 UTC
*** Bug 114018 has been marked as a duplicate of this bug. ***
Comment 10 Xisco Faulí 2017-12-08 08:06:28 UTC
*** Bug 108300 has been marked as a duplicate of this bug. ***
Comment 11 Commit Notification 2017-12-08 19:51:32 UTC
Mark Hung committed a patch related to this issue.
It has been pushed to "libreoffice-6-0":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=84b4aae808d904325c841c3b3e778d8bc4769dab&h=libreoffice-6-0

tdf#108302: keep the font unrotated if @font isn't available.

It will be available in 6.0.0.1.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.