[jira] [Commented] (FOP-2928) PDFDocumentGraphics2D does not clear content on nextPage()

2021-08-16 Thread J Frank (Jira)


[ 
https://issues.apache.org/jira/browse/FOP-2928?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17399638#comment-17399638
 ] 

J Frank commented on FOP-2928:
--

 [^patch-FOP2928-2.diff] 
Patch attached for bug fixed

> PDFDocumentGraphics2D does not clear content on nextPage()
> --
>
> Key: FOP-2928
> URL: https://issues.apache.org/jira/browse/FOP-2928
> Project: FOP
>  Issue Type: Bug
>  Components: renderer/pdf
>Affects Versions: 2.2, 2.4
>Reporter: Jürgen Ebert
>Priority: Major
>  Labels: easyfix
> Attachments: patch-FOP2928-2.diff
>
>
> When switching to a new page using PDFDocumentGraphics2D#nextPage() the 
> current content is added to the PDF document but it is not cleared. Therefore 
> the same content will be repeated on the next page.
> nextPage() calls closePage() which adds this.getString() to the PDFStream.
> this.getString() simply returns the content of currentStream, a StringWriter. 
> The content of currentStream is never cleared and the reference is never set 
> to null. Therefore it will be appended to and it will be added again when the 
> next nextPage() or closePage() or therefore finish() is called.
> A work-arround is to manually set the value of currentStream to null using 
> reflection.



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


[jira] [Commented] (FOP-2928) PDFDocumentGraphics2D does not clear content on nextPage()

2021-08-03 Thread Brian Scott (Jira)


[ 
https://issues.apache.org/jira/browse/FOP-2928?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17392404#comment-17392404
 ] 

Brian Scott commented on FOP-2928:
--

This code works with FOP 1.1, but creates duplicated text with FOP 2.5

{{package test;

import java.awt.geom.AffineTransform;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Date;

import org.apache.fop.pdf.PDFInfo;
import org.apache.fop.svg.PDFDocumentGraphics2D;

public class TestPDF {

static int DPIscale=4;
static public final int PT=72;
static public int inch(double p) {
return (int)(p*PT*DPIscale);
}

public static void main(String[] args) {
try {
FileOutputStream os=new FileOutputStream("test.pdf");

AffineTransform tx=new AffineTransform();
PDFDocumentGraphics2D gPDF=new 
PDFDocumentGraphics2D(false);
gPDF.setupDocument(os, (int)(inch(11)/DPIscale), 
(int)(inch(8.5)/DPIscale));
gPDF.setDeviceDPI(PT);
gPDF.setupDefaultFontInfo();
PDFInfo info= gPDF.getPDFDocument().getInfo();
info.setProducer("from TestPDF");
info.setCreationDate(new 
Date(System.currentTimeMillis()));
gPDF.setGraphicContext(new 
org.apache.xmlgraphics.java2d.GraphicContext());
tx.scale(1.0/DPIscale, 1.0/DPIscale);
gPDF.setTransform(tx);

for (int i = 0; i < 20; i++) {
gPDF.drawString("Page "+i, inch(1), 
inch(1+i*0.2));
gPDF.nextPage();
}

gPDF.finish();
os.close();




} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}

}

}
}}

> PDFDocumentGraphics2D does not clear content on nextPage()
> --
>
> Key: FOP-2928
> URL: https://issues.apache.org/jira/browse/FOP-2928
> Project: FOP
>  Issue Type: Bug
>  Components: renderer/pdf
>Affects Versions: 2.2, 2.4
>Reporter: Jürgen Ebert
>Priority: Major
>  Labels: easyfix
>
> When switching to a new page using PDFDocumentGraphics2D#nextPage() the 
> current content is added to the PDF document but it is not cleared. Therefore 
> the same content will be repeated on the next page.
> nextPage() calls closePage() which adds this.getString() to the PDFStream.
> this.getString() simply returns the content of currentStream, a StringWriter. 
> The content of currentStream is never cleared and the reference is never set 
> to null. Therefore it will be appended to and it will be added again when the 
> next nextPage() or closePage() or therefore finish() is called.
> A work-arround is to manually set the value of currentStream to null using 
> reflection.



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


[jira] [Commented] (FOP-2928) PDFDocumentGraphics2D does not clear content on nextPage()

2021-08-02 Thread J Frank (Jira)


[ 
https://issues.apache.org/jira/browse/FOP-2928?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17391600#comment-17391600
 ] 

J Frank commented on FOP-2928:
--

Please provide steps to reproduce

> PDFDocumentGraphics2D does not clear content on nextPage()
> --
>
> Key: FOP-2928
> URL: https://issues.apache.org/jira/browse/FOP-2928
> Project: FOP
>  Issue Type: Bug
>  Components: renderer/pdf
>Affects Versions: 2.2, 2.4
>Reporter: Jürgen Ebert
>Priority: Major
>  Labels: easyfix
>
> When switching to a new page using PDFDocumentGraphics2D#nextPage() the 
> current content is added to the PDF document but it is not cleared. Therefore 
> the same content will be repeated on the next page.
> nextPage() calls closePage() which adds this.getString() to the PDFStream.
> this.getString() simply returns the content of currentStream, a StringWriter. 
> The content of currentStream is never cleared and the reference is never set 
> to null. Therefore it will be appended to and it will be added again when the 
> next nextPage() or closePage() or therefore finish() is called.
> A work-arround is to manually set the value of currentStream to null using 
> reflection.



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