Skip to content
  • Nelson Ben's avatar
    Add support for text search across lines · d2d6415c
    Nelson Ben authored and Germán Poo-Caamaño's avatar Germán Poo-Caamaño committed
    Implemented in poppler MR:
    https://gitlab.freedesktop.org/poppler/poppler/merge_requests/267
    
    as the new poppler result data type is PopplerFindRectangle which
    incorporates more fields than just coordinates, we create a
    corresponding type in Evince, called EvFindRectangle, and use it
    all across Evince including the pdf backend (ev-poppler.cc) and
    djvu backend (djvu-document.c) which are the only backends that
    implement text search interface.
    
    This new feature has the following aspects:
    
     - Ignores hyphen character while matching when 1) it's the
       last character of the line and 2) its corresponding matching
       character in the search term is not an hyphen too.
    
     - Any whitespace characters in the search term will be allowed
       to match on the logic position where the lines split (i.e. what
       would normally be the newline character in a text file, but
       PDF text does not include newline characters between lines).
    
     - It won't match on text spanning more than two lines, i.e. it
       only matches text spanning from end of one line to start of
       next line.
    
    Part of issue #333
    d2d6415c