ICEpdf
  1. ICEpdf
  2. PDF-1098

Annotation not drawn in correct location

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 6.1.3
    • Fix Version/s: 6.2.1
    • Labels:
      None
    • Environment:
      any

      Description

      A customer has submitted a PDF that contains two button annotation types that are not drawn on the screen. Further investigation is needed.

        Activity

        Patrick Corless created issue -
        Patrick Corless made changes -
        Field Original Value New Value
        Fix Version/s 6.2 [ 13090 ]
        Hide
        Patrick Corless added a comment -

        The checkboxes in question are drawn using a coordinates system that isn't correctly reflected by the appearnce streams matrix. As a result they are being drawn in the incorrect location. I think it might be possible to keep track of the bounds of the shapes being drawn and compare them against the Annotations bounding rectangle object. If they are not contained we can compensate.

        PDF/A read only
        There is actually nothing the PDF/A specification that states that states that it should be read only. Adobe has been criticized for adding the "read-only mode" to the viewer if the attached meta data is labeled PDF/a. The specification states how the file should be written, not how it should be viewed.

        The form fields can be set as read/only using the appropriate annotation flag and the viewer will respect it.

        It is also possible to use the system property org.icepdf.core.annotations.interactive.enabled=false to disable annotation interactions. There is however a bug in the current widget implementation which will be fixed beofre the 6.2 release.

        Show
        Patrick Corless added a comment - The checkboxes in question are drawn using a coordinates system that isn't correctly reflected by the appearnce streams matrix. As a result they are being drawn in the incorrect location. I think it might be possible to keep track of the bounds of the shapes being drawn and compare them against the Annotations bounding rectangle object. If they are not contained we can compensate. PDF/A read only There is actually nothing the PDF/A specification that states that states that it should be read only. Adobe has been criticized for adding the "read-only mode" to the viewer if the attached meta data is labeled PDF/a. The specification states how the file should be written, not how it should be viewed. The form fields can be set as read/only using the appropriate annotation flag and the viewer will respect it. It is also possible to use the system property org.icepdf.core.annotations.interactive.enabled=false to disable annotation interactions. There is however a bug in the current widget implementation which will be fixed beofre the 6.2 release.
        Arran Mccullough made changes -
        Support Case References Support Case #14004
        Arran Mccullough made changes -
        Support Case References Support Case #14004 Support Case #14004 - https://icesoft.my.salesforce.com/5007000001hEwzC
        Hide
        Patrick Corless added a comment -

        Added detection code that tries to determine if the annotation content streams coordinates are defined in annotation space or in page space. The annotation rectangle which is it's absolute page location is compared against any shape in the content stream. If the rectangle doesn't contain any content then we have to assume the content was written in annotation space.

        Several long standing bugs related to this are now rendering correctly.

        The system property org.icepdf.core.annotations.interactive.enabled is now respected by the widget annotations.

        Show
        Patrick Corless added a comment - Added detection code that tries to determine if the annotation content streams coordinates are defined in annotation space or in page space. The annotation rectangle which is it's absolute page location is compared against any shape in the content stream. If the rectangle doesn't contain any content then we have to assume the content was written in annotation space. Several long standing bugs related to this are now rendering correctly. The system property org.icepdf.core.annotations.interactive.enabled is now respected by the widget annotations.
        Patrick Corless made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #50160 Wed Jan 18 12:49:45 MST 2017 patrick.corless PDF-1098 insured isInteractiveAnnotationsEnabled flag is respected for widget annotations.
        Files Changed
        Commit graph MODIFY /icepdf/branches/icepdf-6.1.0/icepdf/viewer/src/org/icepdf/ri/common/views/annotations/AbstractAnnotationComponent.java
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #50161 Wed Jan 18 12:49:58 MST 2017 patrick.corless PDF-1098 insured isInteractiveAnnotationsEnabled flag is respected for widget annotations.
        Files Changed
        Commit graph MODIFY /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/common/views/annotations/AbstractAnnotationComponent.java
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #50162 Wed Jan 18 12:55:11 MST 2017 patrick.corless PDF-1098 fixed a long running issue where the coordinate space of annotation would not be drawn correctly if drawn using page space coordinates.
        Files Changed
        Commit graph MODIFY /icepdf/branches/icepdf-6.1.0/icepdf/core/src/org/icepdf/core/pobjects/annotations/CircleAnnotation.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.1.0/icepdf/core/src/org/icepdf/core/pobjects/annotations/AbstractWidgetAnnotation.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.1.0/icepdf/core/src/org/icepdf/core/pobjects/annotations/Annotation.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.1.0/icepdf/core/src/org/icepdf/core/pobjects/annotations/SquareAnnotation.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.1.0/icepdf/core/src/org/icepdf/core/pobjects/annotations/InkAnnotation.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.1.0/icepdf/viewer/src/org/icepdf/ri/common/tools/InkAnnotationHandler.java
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #50163 Wed Jan 18 12:55:24 MST 2017 patrick.corless PDF-1098 fixed a long running issue where the coordinate space of annotation would not be drawn correctly if drawn using page space coordinates.
        Files Changed
        Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/annotations/SquareAnnotation.java
        Commit graph MODIFY /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/common/tools/InkAnnotationHandler.java
        Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/annotations/AbstractWidgetAnnotation.java
        Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/annotations/Annotation.java
        Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/annotations/InkAnnotation.java
        Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/annotations/CircleAnnotation.java
        Patrick Corless made changes -
        Fix Version/s 6.2.0_P01 [ 13094 ]
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #50314 Sun Jan 22 20:45:16 MST 2017 patrick.corless PDF-1098 rework of entire annotation spaces.
        Files Changed
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/viewer/src/org/icepdf/ri/common/views/annotations/LineAnnotationComponent.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/core/src/org/icepdf/core/pobjects/annotations/AppearanceState.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/viewer/src/org/icepdf/ri/common/tools/SquareAnnotationHandler.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/viewer/src/org/icepdf/ri/common/views/annotations/AbstractAnnotationComponent.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/viewer/src/org/icepdf/ri/common/tools/LineAnnotationHandler.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/core/src/org/icepdf/core/pobjects/annotations/CircleAnnotation.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/viewer/src/org/icepdf/ri/common/tools/CommonToolHandler.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/core/src/org/icepdf/core/pobjects/annotations/InkAnnotation.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/viewer/src/org/icepdf/ri/common/tools/TextAnnotationHandler.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/core/src/org/icepdf/core/pobjects/annotations/SquareAnnotation.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/core/src/org/icepdf/core/pobjects/annotations/FreeTextAnnotation.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/core/src/org/icepdf/core/pobjects/annotations/LineAnnotation.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/core/src/org/icepdf/core/pobjects/annotations/TextAnnotation.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/viewer/src/org/icepdf/ri/common/tools/CircleAnnotationHandler.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/core/src/org/icepdf/core/pobjects/graphics/commands/PostScriptEncoder.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/core/src/org/icepdf/core/pobjects/annotations/Annotation.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/viewer/src/org/icepdf/ri/common/views/annotations/InkAnnotationComponent.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/core/src/org/icepdf/core/pobjects/annotations/TextMarkupAnnotation.java
        Patrick Corless made changes -
        Fix Version/s 6.2 [ 13090 ]
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #50322 Mon Jan 23 20:59:08 MST 2017 patrick.corless PDF-1098 reworked (again) how we aply the bbox to general annotation painting and fixed a bunch of bugs in how we generate content streams for annots that don't initially have one.
        Files Changed
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/core/src/org/icepdf/core/pobjects/annotations/AbstractWidgetAnnotation.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/core/src/org/icepdf/core/pobjects/annotations/AppearanceState.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/viewer/src/org/icepdf/ri/common/tools/LineAnnotationHandler.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/core/src/org/icepdf/core/pobjects/annotations/Annotation.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/core/src/org/icepdf/core/pobjects/acroform/InteractiveForm.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/core/src/org/icepdf/core/util/content/AbstractContentParser.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/core/src/org/icepdf/core/pobjects/annotations/InkAnnotation.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/core/src/org/icepdf/core/pobjects/acroform/VariableTextFieldDictionary.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/viewer/src/org/icepdf/ri/common/tools/InkAnnotationHandler.java
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/core/src/org/icepdf/core/pobjects/annotations/TextWidgetAnnotation.java
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #50324 Tue Jan 24 06:58:11 MST 2017 patrick.corless PDF-1098 added note for future task of checking content and appearance stream and generating as needed.
        Files Changed
        Commit graph MODIFY /icepdf/branches/icepdf-6.2.0/icepdf/core/src/org/icepdf/core/pobjects/annotations/AbstractWidgetAnnotation.java
        Patrick Corless made changes -
        Status Resolved [ 5 ] Closed [ 6 ]

          People

          • Assignee:
            Patrick Corless
            Reporter:
            Patrick Corless
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: