ICEpdf
  1. ICEpdf
  2. PDF-6

Search result text highlighting

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 3.0
    • Fix Version/s: 4.0 - Beta, 4.0
    • Component/s: API, Core/Parsing, Viewer RI
    • Labels:
      None
    • Environment:
      None

      Description

      This is an enhancement bug to track the implementation progress of text selection highlight and search API.
       
      Currently PDF text is searched in the Viewer RI leveraging the text extraction call. When a search is complete a list is show showing the number of occurrences of the search string on each page that had at least one hit.

      What I would like to see happen is that the respective search text on each page is highlighted. Also, I would to see a core search API that allows for; highlight all, match case, next and previous cursors and configurable selection colour overlays. Research should also be done into optimal algorithms for searching text. There are numerous performance issues that should be kept in mind; page parsing times and page disposal considerations when search large documents.

        Activity

        Patrick Corless created issue -
        Tyler Johnson made changes -
        Field Original Value New Value
        Salesforce Case [50070000009KeIU]
        Patrick Corless made changes -
        Fix Version/s 3.2 [ 10212 ]
        Patrick Corless made changes -
        Status Open [ 1 ] In Progress [ 3 ]
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #19513 Tue Oct 27 12:58:36 MDT 2009 patrick.corless PDF-7 and PDF-6 - initial checkin of text selection and search highlight code base. Still a tune of work to todo but task can be brocken down in to small pieces now.
        Files Changed
        Commit graph ADD /icepdf/trunk/icepdf/core/src/org/icepdf/core/views/common/TextSelectionPageHandler.java
        Commit graph MODIFY /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/common/views/AbstractDocumentViewModel.java
        Commit graph ADD /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/images/text_d.gif
        Commit graph ADD /icepdf/trunk/icepdf/core/src/org/icepdf/core/views/common/AnnotationHandler.java
        Commit graph MODIFY /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/common/SwingViewBuilder.java
        Commit graph ADD /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/graphics/text
        Commit graph ADD /icepdf/trunk/icepdf/core/src/org/icepdf/core/views/common
        Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/graphics/TextSprite.java
        Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/views/swing/AbstractPageViewComponent.java
        Commit graph ADD /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/graphics/text/GlyphText.java
        Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/views/DocumentViewModel.java
        Commit graph MODIFY /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/common/views/AbstractDocumentView.java
        Commit graph ADD /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/graphics/text/TextSelect.java
        Commit graph MODIFY /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/common/KeyEventConstants.java
        Commit graph ADD /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/images/text_r.gif
        Commit graph MODIFY /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/util/SearchTextTask.java
        Commit graph MODIFY /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/common/views/DocumentViewControllerImpl.java
        Commit graph ADD /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/graphics/text/LineText.java
        Commit graph MODIFY /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/common/SearchPanel.java
        Commit graph MODIFY /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/util/TextExtractionTask.java
        Commit graph ADD /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/graphics/text/Text.java
        Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/views/PageViewComponent.java
        Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/Document.java
        Commit graph ADD /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/graphics/text/AbstractText.java
        Commit graph MODIFY /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/common/SwingController.java
        Commit graph MODIFY /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/resources/MessageBundle.properties
        Commit graph ADD /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/graphics/text/PageText.java
        Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/util/ContentParser.java
        Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/views/swing/PageViewComponentImpl.java
        Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/Page.java
        Commit graph ADD /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/images/text_n.gif
        Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/graphics/Shapes.java
        Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/views/DocumentViewController.java
        Commit graph ADD /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/graphics/text/WordText.java
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #19522 Wed Oct 28 11:59:16 MDT 2009 patrick.corless PDF-6 - addition of multi-word text search, first take. still lots of repaint issue. .
        Files Changed
        Commit graph MODIFY /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/util/SearchTextTask.java
        Commit graph MODIFY /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/common/SearchPanel.java
        Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/graphics/text/WordText.java
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #19555 Fri Oct 30 08:36:15 MDT 2009 patrick.corless PDF-6 addition of formal DocumentSearch api and managment model. Still some work to do around PageViewComponent but the API is complete for now.
        Files Changed
        Commit graph MODIFY /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/util/SearchTextTask.java
        Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/views/common/TextSelectionPageHandler.java
        Commit graph ADD /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/common/search/SearchTerm.java
        Commit graph ADD /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/common/search
        Commit graph ADD /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/common/search/DocumentSearchController.java
        Commit graph ADD /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/common/search/DocumentSearchModelImpl.java
        Commit graph MODIFY /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/common/SearchPanel.java
        Commit graph MODIFY /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/common/SwingViewBuilder.java
        Commit graph ADD /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/common/search/DocumentSearchControllerImpl.java
        Commit graph MODIFY /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/common/SwingController.java
        Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/Controller.java
        Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/views/swing/PageViewComponentImpl.java
        Commit graph ADD /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/common/textselection
        Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/pobjects/graphics/text/WordText.java
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #19598 Wed Nov 04 08:48:31 MST 2009 patrick.corless PDF-6 - moved SearchTerm into core package to avoid build dependencey issue.
        Files Changed
        Commit graph DEL /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/common/search/SearchTerm.java
        Commit graph MODIFY /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/common/search/DocumentSearchModelImpl.java
        Commit graph ADD /icepdf/trunk/icepdf/core/src/org/icepdf/core/search/SearchTerm.java
        Commit graph ADD /icepdf/trunk/icepdf/core/src/org/icepdf/core/search/DocumentSearchController.java
        Commit graph MODIFY /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/common/search/DocumentSearchControllerImpl.java
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #19608 Wed Nov 04 14:52:58 MST 2009 patrick.corless PDF-6 - added new search algorithm that returns the hit word with in the context of the sentence that it was found int. Words on either side of the search term can be specified with the padding attriubte.
        Files Changed
        Commit graph MODIFY /icepdf/trunk/icepdf/core/src/org/icepdf/core/search/DocumentSearchController.java
        Commit graph MODIFY /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/common/search/DocumentSearchControllerImpl.java
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #19642 Mon Nov 09 04:39:01 MST 2009 patrick.corless PDF-6 - fixed indexing bug with DocumentSearchControllerImpl padded LineText results.
        Files Changed
        Commit graph MODIFY /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/common/search/DocumentSearchControllerImpl.java
        Hide
        Patrick Corless added a comment -

        The code/functionality has held up well during testing and I feel pretty comfortable with marking this a fixed. There is a new system property that can be used to change the highlight colour, org.icepdf.core.views.page.text.highlightColor and the default value is #CC00FF.

        The search highlight code is done lazily as pages come into view. If one is not using the search highlighting via the view then the search must be applied manually to each page. See the class org.icepdf.ri.common.search.DocumentSearchControllerImpl for more information on using the api.

        Show
        Patrick Corless added a comment - The code/functionality has held up well during testing and I feel pretty comfortable with marking this a fixed. There is a new system property that can be used to change the highlight colour, org.icepdf.core.views.page.text.highlightColor and the default value is #CC00FF. The search highlight code is done lazily as pages come into view. If one is not using the search highlighting via the view then the search must be applied manually to each page. See the class org.icepdf.ri.common.search.DocumentSearchControllerImpl for more information on using the api.
        Patrick Corless made changes -
        Status In Progress [ 3 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Repository Revision Date User Message
        ICEsoft Public SVN Repository #19964 Fri Dec 11 12:17:46 MST 2009 patrick.corless PDF-6 - fixed tooltip type that was introduced when text selection tool was added.
        Files Changed
        Commit graph MODIFY /icepdf/trunk/icepdf/viewer/src/org/icepdf/ri/resources/MessageBundle.properties
        Ken Fyten made changes -
        Fix Version/s 4.0 [ 10222 ]
        Ken Fyten made changes -
        Status Resolved [ 5 ] Closed [ 6 ]

          People

          • Assignee:
            Patrick Corless
            Reporter:
            Patrick Corless
          • Votes:
            3 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: