[
https://issues.apache.org/jira/browse/PDFBOX-5729?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17794332#comment-17794332
]
JAVA USER edited comment on PDFBOX-5729 at 12/7/23 4:35 PM:
------------------------------------------------------------
[~tilman] For Devanagari, the missing top horizontal bar in the third glyph of
first word in Mangal is by design:
!Screenshot from 2023-12-07 20-46-25.png!
You can see it's also present in Lohit-Devanagari, Baloo, Biryani and Hind
fonts.
The fact that rkrf feature isn't present in Lohit Devanagari and Mangal led to
creation of createRKRF, given vatu was present. But opposite is present in Noto
Sans Devanagari. Maybe that's why it won't work in Noto Sans Gujarati as well.
Devanagari Gsub needs more improvement.
For Gujarati, the repositionGlyphs function is running from index 3, that's why
the beforeHalfGlyphIds ({*}ि{*}) isn't positioning it to the first consonant
(શ). Changing the starting index to 1 will fix that
Also, this arc ({*}ि{*}) should also be substituted with bigger arc glyph (Noto
Sans Gujarati present at index 404 called ivowelsigndefaultgujr) if its
following glyphs are half+consonant, should happen in applyGsubFeature. I'll
try by running repositionGlyphs before applyGsubFeature maybe it'll capture the
substitution condition that way.
By FCFS, I mean in Language.java, if the first enum is DEVANAGARI(new
String[]\{"dev2", "deva}), Nirmala UI will select DEVANAGARI, even if the text
is in Bengali or Gujarati.
Will there by GPOS feature in the future? There are GPOS features kern, dist,
abvm, blwm which needs to be implemented.
* I'll provide you test codes for GsubWorkerForDevanagariTest.java. I'd like
to provide input data from Lohit-Devanagari as well as Noto Sans Devanagari, as
they're SIL.
* I haven't checked TestFontEmbedding.testBengali(). I'll check it out.
was (Author: javauser):
[~tilman] For Devanagari, the missing top horizontal bar in the third glyph of
first word in Mangal is by design:
!Screenshot from 2023-12-07 20-46-25.png!
You can see it's also present in Lohit-Devanagari, Baloo, Biryani and Hind
fonts.
The fact that rkrf feature aren't present in Lohit Devanagari and Mangal led to
creation of createRKRF, given vatu was present. But opposite is present in Noto
Sans Devanagari. Maybe that's why it won't work in Noto Sans Gujarati as well.
Devanagari Gsub needs more improvement.
For Gujarati, the repositionGlyphs function is running from index 3, that's why
the beforeHalfGlyphIds ({*}ि{*}) isn't positioning it to the first consonant
(શ). Changing the starting index to 1 will fix that
Also, this arc ({*}ि{*}) should also be substituted with bigger arc glyph if
its following glyphs are half+consonant, should happen in applyGsubFeature.
I'll try by running repositionGlyphs before applyGsubFeature maybe it'll
capture the substitution condition that way.
By FCFS, I mean in Language.java, if the first enum is DEVANAGARI(new
String[]\{"dev2", "deva}), Nirmala UI will select DEVANAGARI, even if the text
is in Bengali or Gujarati.
Will there by GPOS feature in the future? There are GPOS features kern, dist,
abvm, blwm which needs to be implemented.
* I'll provide you test codes for GsubWorkerForDevanagariTest.java. I'd like
to provide input data from Lohit-Devanagari as well as Noto Sans Devanagari, as
they're SIL.
* I haven't checked TestFontEmbedding.testBengali(). I'll check it out.
> GsubWorkerForDevanagari and GsubWorkerForGujarati created
> ---------------------------------------------------------
>
> Key: PDFBOX-5729
> URL: https://issues.apache.org/jira/browse/PDFBOX-5729
> Project: PDFBox
> Issue Type: Improvement
> Components: FontBox
> Affects Versions: 3.0.0 PDFBox
> Reporter: JAVA USER
> Priority: Trivial
> Labels: GsubWorkerForDevanagari, GsubWorkerForGujarati
> Attachments: GsubWorkerForDevanagari.java,
> GsubWorkerForGujarati.java, NotoSansDevanagari-Regular.ttf, Screenshot from
> 2023-12-07 20-46-25.png, TiroDevanagariHindi-Regular.ttf,
> devanagari-example-TiroDevanagariHindi.pdf, devanagari-example-bad.pdf,
> devanagari-example-notosans.pdf, devanagari-example-siddhanta.pdf,
> image-2023-12-07-09-54-31-449.png, image-2023-12-07-10-18-33-457.png,
> image-2023-12-07-10-33-37-499.png, image-2023-12-07-14-39-24-187.png,
> image-2023-12-07-16-27-22-510.png, screenshot-1.png, screenshot-2.png,
> screenshot-3.png, screenshot-4.png, screenshot-5.png, screenshot-6.png
>
>
> Created Gsub workers for Devanagari and Gujarati languages.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]