[ https://issues.apache.org/jira/browse/FOP-2969?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Simon Steiner resolved FOP-2969. -------------------------------- Fix Version/s: trunk Resolution: Fixed http://svn.apache.org/viewvc?view=revision&revision=1901453 > Accented Letters of DIN SPEC 91379 composed of Unicode base letter and > combining accent are rendered wrong as the first letter of a word. > ------------------------------------------------------------------------------------------------------------------------------------------ > > Key: FOP-2969 > URL: https://issues.apache.org/jira/browse/FOP-2969 > Project: FOP > Issue Type: Bug > Components: font/opentype, renderer/pdf > Affects Versions: 2.5, 2.4, 2.6 > Reporter: Volker Kunert > Assignee: Simon Steiner > Priority: Major > Fix For: trunk > > Attachments: DIN_SPEC_91379_Sequences-aa-hb-view.pdf, > DIN_SPEC_91379_Sequences-ab-hb-view.pdf, > DIN_SPEC_91379_Sequences-ac-hb-view.pdf, > DIN_SPEC_91379_Sequences-hb-view.txt, DefaultScriptProcessor.java, > TestFop.java, fop-2969.patch, fop.xconf, test-din-spec-sequences.fo, > test-din-spec-sequences.fo-patched.pdf, test-din-spec-sequences.fo.pdf > > > E.g. with 0041 030B LATIN CAPITAL LETTER A WITH COMBINING DOUBLE ACUTE ACCENT > the accent E.g. with 0041 030B LATIN CAPITAL LETTER A WITH COMBINING DOUBLE > ACUTE ACCENT the accent appears at the right hand side of the letter A, not > above the letter A. > If e.g. an "X" is prepended, the sequence is rendered correctly - with the > exception of the COMBINING HORN which should be at the right side of the base > letter. > The tested sequences are used in the following specification: > DIN SPEC 91379: Characters in Unicode for the electronic processing of names > and dataexchange in Europe; with digital attachment > [https://www.xoev.de/downloads-2316#StringLatin] > [https://www.din.de/de/wdc-beuth:din21:301228458] > The output of FOP is provided in test-din-spec-sequences.fo.pdf, which is > created by running TestFop.java that processes test-din-spec-sequences.fo. > Font used for testing: NotoSansMono-Regular.ttf, see > [https://www.google.com/get/noto/] > download: > [https://noto-website-2.storage.googleapis.com/pkgs/NotoSansMono-hinted.zip] > The following patch seems to resolve the problem for my test case: > (delete "{{&& (unscaledWidths[index] != 0").}} > > {code:java} > --- > ./trunk/fop-core/src/main/java/org/apache/fop/complexscripts/scripts/DefaultScriptProcessor.java > 2020-09-03 16:20:03.442089088 +0200 > +++ > /home/volker/software/xmlgraphics-fop-trunk/fop-core/src/main/java/org/apache/fop/complexscripts/scripts/DefaultScriptProcessor.java > 2020-09-03 16:37:40.781775907 +0200 > @@ -151,7 +151,7 @@ > } > protected boolean isReorderedMark(GlyphDefinitionTable gdef, int[] glyphs, > int[] unscaledWidths, int index) { > - return gdef.isGlyphClass(glyphs[index], > GlyphDefinitionTable.GLYPH_CLASS_MARK) && (unscaledWidths[index] != 0); > + return gdef.isGlyphClass(glyphs[index], > GlyphDefinitionTable.GLYPH_CLASS_MARK); > {code} > See also PDFBOX-4951 -- This message was sent by Atlassian Jira (v8.20.7#820007)