I have a document with justified Hebrew text that looks correct in LOO till 5.2 and is broken in LOO 5.3 and 5.4.
The problem is that the text is justified only on the left side but not correctly on the right side. Also the text is rendered differently (spacing, line breaks) so that a text block that previously fit on a page doesn't fit any more on a page. This is a 36 page brochure where this is really significant, I first noticed the problem by the fact that the brochure suddenly had 37 pages instead of 36.
The attached screenshots show the problem, look at the ragged right line in the bad example.
To verify that the problem is caused by LOO I downloaded the following versions and tried them all on the same system:
126.96.36.199 = OK
188.8.131.52 = OK
184.108.40.206 = OK
220.127.116.11 = BAD
18.104.22.168 = BAD
My system is Ubuntu 16.04.3 LTS x86_64. The following attachments should help to analyze the bug:
- ODT file that has the problem (pages 4 and 5 in the screenshots)
- screenshot showing the bad rendering
- screenshot showing the good rendering in the older versions
To try out yourself I embedded the Hebrew fonts in the ODT so that you don't have to install them yourself.
Created attachment 135852 [details]
Demo file showing the problem on page 4 & 5
Created attachment 135853 [details]
Screenshot of correctly rendered Hebrew justified text
Created attachment 135854 [details]
Screenshot of broken Hebrew justified text
There’s nothing lost. This is due to a change since LO 22.214.171.124.beta1 with the text frames.
Previously, in Frame properties > Borders, when you set a space with content, if syncronize was ticked, the spacing was increased at the same time into the other borders, but kept greyed and without importance.
Now, the other borders have to be set to their right value.
Because of the old setting, you have now a reduced space in our text frame and have to set the spacing to 0 cm for the other borders than these right one, to retrieve your layout.
I join a corrected document to be quite clear.
If you have questions, I am available.
Created attachment 135904 [details]
the corrected file
Thanks for taking a look. I checked your "fixed" document and indeed the overflow into the next page is fixed. So this is probably indeed related to the spacing in the text frames.
I am sorry for the somewhat misleading example. My problem is much more with the way how the justified (flush left and right) text is displayed on the right side.
On the right side the beginning of the words are not aligned on a straight vertical line but some lines have a slight indentation. This destroys the justified look and is for Hebrew a big problem as the text is read from right to left so that now the start of the text is not on the same position.
To help you identify the problem better I took a screenshot from your fixed document and marked with red lines the problematic margin. Green lines show the correct left margin.
To further demonstrate that this issue is actually not related to my example document I also created a screencast of how to recreate the problem:
1) open a webbrowser and go to http://www.i18nguy.com/unicode/shma.html
2) scroll down till after the yellow boxes with English text till you come to the Hebrew text.
3) copy 2 paragraphs of the main text (skip the heading)
4) open a new LOO editor (where CTL is enabled and set to Hebrew)
5) paste the 2 paragraphs without formatting
6) select all the text and switch to RTL and set justified
7) cycle through different fonts. Ezra SIL shows it strongly (available in Ubuntu), Andale Mono also shows it. Libertine doesn't.
8) switch between RTL and LTR and observe how the text layout changes slightly. With LTR the right margin is slightly better justified than in RTL, but the problem still persists.
See the screencast for a demo.
My conclusion from observing this is:
* The font has a strong influence on the intensity of the problem
* RTL / LTR setting also has an influence
* The problem is not related to any specific document but to the way how LOO renders the Hebrew justified text.
As this worked till before LOO 5.3 and since this clearly looks very bad I hope that this information will help you to solve the issue. Please don't hesitate to ask for more, I'll be also happy to try out anything you suggest.
Created attachment 135929 [details]
screenshot which marks with red lines where the problem is
Created attachment 135930 [details]
screencast showing how to reproduce the problem from scratch
Thank you for the precisions.
The misalignment is clearly visible on page 3 and begins with:
LO 126.96.36.199.beta1 Build ID: 690f553ecb3efd19143acbf01f3af4e289e94536
CPU Threads: 2; OS Version: Windows 6.1; UI Render: default; Layout Engine: new;
Locale: en-US (frFR); Calc: CL
and upper versions.
No issue in:
LO 188.8.131.52.alpha1 Build ID: f4ca1573fcf445164c068c1046ab5d084e1b005f
Threads CPU : 2; Version de l'OS :Windows 6.1; UI Render : par défaut;
Locale : fr-FR (fr_R); Calc: CL
I checked again in version 6.0.4 and the regression bug is still there. Hebrew justified text is NOT flush on both left AND right margin.
What can I do to help you guys fix this? It forces me (and presumably other RTL users) to keep around an ancient version.
I can reproduce it in
Build ID: 1:6.0.4~rc2-0ubuntu0.16.04.1
CPU threads: 4; OS: Linux 4.13; UI render: default; VCL: gtk3;
Locale: ca-ES (ca_ES.UTF-8); Calc: group
but not in
Build ID: 1cf27cb44380f4a2bd6778c2dbbdef2a2a00cbc8
CPU threads: 4; OS: Linux 4.13; UI render: default; VCL: gtk3;
Locale: ca-ES (ca_ES.UTF-8); Calc: group threaded
so closing as RESOLVED WORKSFORME
Created attachment 142771 [details]
how it looks in master
Dear Schlomo Schapiro,
Could you please try to reproduce it with a master build from http://dev-builds.libreoffice.org/daily/master/ ?
You can install it alongside the standard version.
I have set the bug's status to 'NEEDINFO'. Please change it back to 'UNCONFIRMED' if the bug is still present in the master build
Problem fixed by https://cgit.freedesktop.org/libreoffice/core/commit/?id=2815499d7c0b32fa05fcd697e7b2c2d897f78dfb, which is the commit fixing bug 105913
The fix will be avilable for LibreOffice 6.1, due to be released in August, 2018
*** This bug has been marked as a duplicate of bug 105913 ***
I can confirm that the Hebrew justified text problem is solved in
LibreOfficeDev 184.108.40.206.alpha0 90e4c55d01637178418c33ffe818263114a53374
However, the positioning of the vowels (the dots under the letters) is different from 220.127.116.11 and I also found that ligatures are not handled correctly. I will post those findings to bug 105913 (which IMHO is not yet properly fixed).
To help with debugging this issue I created a GitHub project with a sample file and some tools to quickly check against a new LOO version: https://github.com/schlomo/libreoffice-bug-rtl-justified-regression
Hi Schlomo Schapiro,
Could you please create another report for this?