2016-11-30 3 views
0

Ich habe Probleme, ein Bild in der unteren linken Ecke eines PDF-Dokuments zu platzieren.Platzieren Sie das Bild unten links in der PDF-Datei mit iText

Hier ist mein Code:

PdfReader reader = new PdfReader("source.pdf"); 
PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(pdfTarget)); 

Image qrImg = Image.getInstance("qrcode.png"); 
qrImg.setAbsolutePosition(0,0); 

// place the image at the i-th page 
PdfContentByte content = stamper.getOverContent(i); 
content.addImage(qrImg); 

Das für fast jedes PDF-Dokument arbeitet ich, es sei denn ein einziges versuchte man, die Sie hier finden können: https://ufile.io/50016

Zu diesem Dokument der linke untere Ecke beginnt um (50 , 50), also sollte die absolute Position (50,50) sein, was für alle anderen PDFs falsch ist.

Ich kann keinen Weg finden, das Bild bei (0,0) oder irgendeiner anderen festen absoluten Position zu platzieren, was dazu führt, dass es immer in der unteren linken Ecke platziert wird. Irgendwelche Ratschläge?

Antwort

2

PDF-Dokumente beschreiben die Seite mit einem Schlüssel namens MediaBox. Dies ist die rohe Größe der Seite. Es gibt einen anderen Schlüssel namens CropBox, der den sichtbaren Bereich der Seite definiert. In Ihrem Dokument beginnt die Cropbox bei 54,55,4 und das ist der Offset, den Sie auf das Bild anwenden müssen. Überprüfen Sie PdfReader.getCropBox(), um die Abmessungen zu erhalten.

+0

Das ist, was ich brauchte. Vielen Dank – redgiun

Verwandte Themen