[ 
https://issues.apache.org/jira/browse/PDFBOX-4951?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17206724#comment-17206724
 ] 

Volker Kunert edited comment on PDFBOX-4951 at 10/3/20, 3:00 PM:
-----------------------------------------------------------------

I uploaded the following files to utilize the positioning features of 
FOP in PDFBOX:

{{patch-2020-10-02.txt}}
        Patch containing changes to {{PDAbstractContentStream}}
        and 4 new classes to integrate FOP positioning in new package 
        {{org.apache.fontbox.fop}}

{{ExamplePdfboxFopPos.java}}
{{ExamplePdfboxFopPos.pdf}}     
Example how to create a new PDF-document with correct positioning
        
{{ExamplePdfboxFopPosForm.java}}
{{ExamplePdfboxFopPosForm.pdf}} 
Example how to fill text into a PDF-form with correct positioning


{{DefaultScriptProcessor.java}} 
a patched version of 
{{org.apache.fop.complexscripts.scripts.DefaultScriptProcessor}}
        to circumvent FOP-2969


To use FOP-positioning the user would be required to add FOP to the
class path and create and register the positioning class
with {{PDAppearanceContentStream}} resp. {{PDPageContentStream}}, e.g.:


{code:java}
FopTextPositioner fopTextPositioner = FopTextPositioner.create(new 
FileInputStream(fontFile), font.getName());                  
if(fopTextPositioner!=null) {
                PDAppearanceContentStream.put(font, fopTextPositioner);
}

{code}



was (Author: vk.li...@gmail.com):
I uploaded the following files to utilize the positioning features of 
FOP in PDFBOX:

{{patch-2020-10-02.txt}}
        Patch containing changes to {{PDAbstractContentStream}}
        and 4 new classes to integrate FOP positioning in new package 
        {{org.apache.fontbox.fop}}

{{ExamplePdfboxFopPos.java
ExamplePdfboxFopPos.pdf
}}      Example how to create a new PDF-document with correct positioning
        
{{ExamplePdfboxFopPosForm.java
ExamplePdfboxFopPosForm.pdf
}}      Example how to fill text into a PDF-form with correct positioning


{{DefaultScriptProcessor.java
}}      a patched version of 
{{org.apache.fop.complexscripts.scripts.DefaultScriptProcessor}}
        to circumvent FOP-2969


To use FOP-positioning the user would be required to add FOP to the
class path and create and register the positioning class
with {{PDAppearanceContentStream}} resp. {{PDPageContentStream}}, e.g.:

{{FopTextPositioner fopTextPositioner = FopTextPositioner.create(new 
FileInputStream(fontFile), font.getName());                        
if(fopTextPositioner!=null) {
                PDAppearanceContentStream.put(font, fopTextPositioner);
}
}}

> Sequences with combining letters are rendered incorrectly
> ---------------------------------------------------------
>
>                 Key: PDFBOX-4951
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-4951
>             Project: PDFBox
>          Issue Type: Bug
>          Components: Rendering
>    Affects Versions: 2.0.21
>            Reporter: Volker Kunert
>            Priority: Major
>         Attachments: DIN_SPEC_91379_Sequences-aa.pdf, 
> DIN_SPEC_91379_Sequences-ab.pdf, DIN_SPEC_91379_Sequences-ac.pdf, 
> DIN_SPEC_91379_Sequences.txt, DefaultScriptProcessor.java, 
> ExamplePdfboxFopPos.java, ExamplePdfboxFopPos.pdf, 
> ExamplePdfboxFopPosForm.java, ExamplePdfboxFopPosForm.pdf, TestPdfbox.java, 
> TestPdfboxFop2.java, TestPdfboxFop2.pdf, TestPdfboxJava2D.java, 
> TestPdfboxJava2D.pdf, patch-2020-10-02.txt, pdfbox.pdf, screenshot-1.png
>
>
> Accented Letters composed of Unicode base letter and combining accent are 
> rendered wrong. 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.
> The position is wrong for most of the sequences defined in the following spec:
> DIN SPEC 91379: Characters in Unicode for the electronic processing of names 
> and data 
>  exchange in Europe; with digital attachment
>  [https://www.xoev.de/downloads-2316#StringLatin]
>  [https://www.din.de/de/wdc-beuth:din21:301228458]
>  
> The correct rendering should look like the output of hb-view 2.6.8, see files 
> DIN_SPEC_91379_Sequences*.pdf.
> The output of PDFBox is appended in pdfbox.pdf, which is created by running 
> TestPdfbox.java. The sequences are read from file 
> DIN_SPEC_91379_Sequences.txt.
>  
> 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]
>  See also FOP-2969
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@pdfbox.apache.org
For additional commands, e-mail: dev-h...@pdfbox.apache.org

Reply via email to