aboutsummaryrefslogtreecommitdiff
path: root/pdf-as-lib/src/main/java/at/knowcenter/wag
diff options
context:
space:
mode:
authorAndreas Fitzek <andreas.fitzek@iaik.tugraz.at>2014-05-06 13:25:43 +0200
committerAndreas Fitzek <andreas.fitzek@iaik.tugraz.at>2014-05-06 13:25:43 +0200
commit98a8921b697e2b03c3f1a873ec1dadd02f954aa6 (patch)
tree51c648731b1c934ac59ce036cd604178f72addf6 /pdf-as-lib/src/main/java/at/knowcenter/wag
parenta84fecfd384373402a23ae3153ccce55cef73cb6 (diff)
downloadpdf-as-4-98a8921b697e2b03c3f1a873ec1dadd02f954aa6.tar.gz
pdf-as-4-98a8921b697e2b03c3f1a873ec1dadd02f954aa6.tar.bz2
pdf-as-4-98a8921b697e2b03c3f1a873ec1dadd02f954aa6.zip
Fixed Positioning on empty page with only annotation
Diffstat (limited to 'pdf-as-lib/src/main/java/at/knowcenter/wag')
-rw-r--r--pdf-as-lib/src/main/java/at/knowcenter/wag/egov/egiz/pdf/PDFPage.java6
-rw-r--r--pdf-as-lib/src/main/java/at/knowcenter/wag/egov/egiz/pdf/PDFUtilities.java25
2 files changed, 17 insertions, 14 deletions
diff --git a/pdf-as-lib/src/main/java/at/knowcenter/wag/egov/egiz/pdf/PDFPage.java b/pdf-as-lib/src/main/java/at/knowcenter/wag/egov/egiz/pdf/PDFPage.java
index e482d50c..f2cd4085 100644
--- a/pdf-as-lib/src/main/java/at/knowcenter/wag/egov/egiz/pdf/PDFPage.java
+++ b/pdf-as-lib/src/main/java/at/knowcenter/wag/egov/egiz/pdf/PDFPage.java
@@ -538,10 +538,10 @@ public class PDFPage extends PDFTextStripper {
public void processAnnotation(PDAnnotation anno) {
float current_y = anno.getRectangle().getLowerLeftY();
- int pageRotation = this.getCurrentPage().findRotation();
+ int pageRotation = anno.getPage().findRotation();
// logger_.debug("PageRotation = " + pageRotation);
if (pageRotation == 0) {
- float page_height = this.getCurrentPage().findMediaBox().getHeight();
+ float page_height = anno.getPage().findMediaBox().getHeight();
current_y = page_height - anno.getRectangle().getLowerLeftY();
}
if (pageRotation == 90) {
@@ -551,7 +551,7 @@ public class PDFPage extends PDFTextStripper {
current_y = anno.getRectangle().getUpperRightY();
}
if (pageRotation == 270) {
- float page_height = this.getCurrentPage().findMediaBox().getHeight();
+ float page_height = anno.getPage().findMediaBox().getHeight();
current_y = page_height - anno.getRectangle().getUpperRightX();
}
diff --git a/pdf-as-lib/src/main/java/at/knowcenter/wag/egov/egiz/pdf/PDFUtilities.java b/pdf-as-lib/src/main/java/at/knowcenter/wag/egov/egiz/pdf/PDFUtilities.java
index 3f5e67fc..808efbe4 100644
--- a/pdf-as-lib/src/main/java/at/knowcenter/wag/egov/egiz/pdf/PDFUtilities.java
+++ b/pdf-as-lib/src/main/java/at/knowcenter/wag/egov/egiz/pdf/PDFUtilities.java
@@ -82,19 +82,22 @@ public abstract class PDFUtilities {
try {
PDFPage my_page = new PDFPage(effectivePageHeight, legacy32);
PDResources resources = page.findResources();
- COSStream stream = page.getContents().getStream();
- // List<PDThreadBead> articles = page.getThreadBeads();
- // my_page.processMyPage(page);
- my_page.processStream(page, resources, stream);
-
+ if (page.getContents() != null) {
+ COSStream stream = page.getContents().getStream();
+ // List<PDThreadBead> articles = page.getThreadBeads();
+ // my_page.processMyPage(page);
+ my_page.processStream(page, resources, stream);
+ }
if (!legacy32) {
- Iterator<PDAnnotation> annotationsIt = page.getAnnotations()
- .iterator();
+ if (page.getAnnotations() != null) {
+ Iterator<PDAnnotation> annotationsIt = page
+ .getAnnotations().iterator();
- while (annotationsIt.hasNext()) {
- PDAnnotation annotation = annotationsIt.next();
- if(!annotation.isInvisible()) {
- my_page.processAnnotation(annotation);
+ while (annotationsIt.hasNext()) {
+ PDAnnotation annotation = annotationsIt.next();
+ if (!annotation.isInvisible()) {
+ my_page.processAnnotation(annotation);
+ }
}
}
}