Bug 152027 - Gap in field shading for this Hebrew font
Summary: Gap in field shading for this Hebrew font
Status: NEW
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Writer (show other bugs)
Version:
(earliest affected)
Inherited From OOo
Hardware: All All
: medium trivial
Assignee: Not Assigned
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: Fields RTL
  Show dependency treegraph
 
Reported: 2022-11-13 22:23 UTC by Eyal Rozenberg
Modified: 2025-03-12 02:38 UTC (History)
2 users (show)

See Also:
Crash report or crash signature:


Attachments
Illustration of gap (7.81 KB, image/png)
2022-11-13 22:23 UTC, Eyal Rozenberg
Details
Document with field exhibiting the gap (21.86 KB, application/vnd.oasis.opendocument.text)
2022-11-13 22:24 UTC, Eyal Rozenberg
Details
Font family used in the sample document (92.70 KB, application/octet-stream)
2022-11-13 22:31 UTC, Eyal Rozenberg
Details
Screenshots from manipulating example document (115.66 KB, image/png)
2025-03-12 02:38 UTC, Jonathan Clark
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Eyal Rozenberg 2022-11-13 22:23:47 UTC
Created attachment 183568 [details]
Illustration of gap

Sometimes, with Hebrew text in some fonts, the shading of a field exhibits gaps. I also see weird shading shaping when the font size or family changes sometimes, but for the purposes of this bug: Exactly the same font.

Seen with:

Version: 7.5.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: 2486d99c6053af1414117faac2c0db18c0d344c4
CPU threads: 4; OS: Linux 6.0; UI render: default; VCL: gtk3
Locale: en-IL (en_IL); UI: en-US

and with 7.4.1.2 release on same platform and same VCL.
Comment 1 Eyal Rozenberg 2022-11-13 22:24:35 UTC
Created attachment 183569 [details]
Document with field exhibiting the gap

Note this document uses an uncommon Hebrew font. I'll attach that as well.
Comment 2 Eyal Rozenberg 2022-11-13 22:31:25 UTC
Created attachment 183570 [details]
Font family used in the sample document
Comment 3 Stéphane Guillou (stragu) 2022-11-15 12:25:47 UTC
Reproduced in:

Version: 7.5.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: 6e66b5d75b4cda0314b64f4d12ef9e4350751470
CPU threads: 8; OS: Linux 5.15; UI render: default; VCL: gtk3
Locale: en-AU (en_AU.UTF-8); UI: en-US
Calc: threaded

and

Version: 7.4.2.3 / LibreOffice Community
Build ID: 382eef1f22670f7f4118c8c2dd222ec7ad009daf
CPU threads: 8; OS: Linux 5.15; UI render: default; VCL: gtk3
Locale: en-AU (en_AU.UTF-8); UI: en-US
Calc: threaded

and

Version: 6.3.6.2
Build ID: 2196df99b074d8a661f4036fca8fa0cbfa33a497
CPU threads: 8; OS: Linux 5.15; UI render: default; VCL: gtk3; 
Locale: en-AU (en_AU.UTF-8); UI-Language: en-US
Calc: threaded

Looks like it happens at the junction between LTR and RTL. Doesn't happen with text highlighting.
Comment 4 Khaled Hosny 2022-12-08 15:56:00 UTC
I suspect this is similar to bug 35907 and bug 103643, and bug 77279. I suspect that calculating the text extents to draw the underline or background is using low resolution or has rounding issues, so when the text is more than one portion a gap is shown.

Perhaps Caolán McNamara has some idea.
Comment 5 Stéphane Guillou (stragu) 2024-02-01 10:56:56 UTC
Reproduced in OOo 3.3 as well (although it breaks even more in the number: 2|02|2| נובמבר)
Comment 6 Jonathan Clark 2025-03-12 02:38:06 UTC
Created attachment 199747 [details]
Screenshots from manipulating example document

The gap appears due to a 1 pt character spacing applied to the Hebrew word in the sample document.

Row 1: The original text.

Row 2: The original text, but with all character spacing reset to 0.

Row 3: The original text, plus some English text. Note the gaps in the field shading between each English letter.

Row 4: The same, but with character spacing reset to 0.

Quite mysterious. Field shading with character spacing bridges numbers and RTL text, but not the spaces around bidi portions, and not between LTR letters.