Re: [gnome-love] Gpdf PDF highlighting support



Better with attachment

W. Michael Petullo wrote:

Martin et al.,

I am interested in developing a GPL'ed application that supports taking
notes on a PDF file.  I would like to have the capability to do things
like highlight, bookmark, comment on or draw diagrams electronically on
top of an electronic document as if it was a paper document.  Rather than
starting from scratch, I thought I would see if you were interested in
adding these features to gpdf.

My concept is this:

1.  Gpdf opens a file.

2.  The user can use various tools to hightlight, bookmark, etc.
This information is automatically saved in some type of XML format
(in ~/gnome2/gpdf-something).  The filename of this overlay information
will be equal to the md5 hash of the original PDF document so that gpdf
knows what overlay to open for a given PDF.

3.  Of course, the user can also erase highlights, doodles etc.

I think this would be of great use to certain people.  Academics, lawyers
and other people that study documents would probably find it helpful.

What do you think?  Is adding this to gpdf feasible?  Or perhaps this
already exists?

TODO:

This file contains the list of features I started the gpdf-outlines
branch for, and for each of it, a comment explaining current status,
eventual problems and/or possible solutions.

* Themability/Usability:                                                        TODO
 - Use gtk color for thumbnails outlines.
 - Themabilize used icons.
 - Change thumbnails enlight policy (instead of enlightening the 
   selected one, darken all unselected ones).
 - A lot of HIG compliance things
 - Add a central errors/warnings/informations dialogs management

* Side Pane containing outlines views:
  The goal is to have a displayable side pane for supporting display
  of several navigation views as it is done in Nautilus.                        DONE
  The best of the best would be to add these views to the Nautilus
  side pane when GPdf is embed as a bonobo component. I don't see how
  to do it without linking with nautilus ...                                    TODO

  - A tools menu for side pane contents:
    When handling bookmarks, it is convinient to have expand/collapse
    features. For thumbnails, it need a way to create one/all thumbnails.
    For this I think GPdf could have a another button available on the 
    sidebar, triggering display of a tools popup menu (that contains
    needed items and changing when side pane page changes).                     DONE

* Outline views
  Four views, at least, bookmarks, thumbnails, annotations and signatures.
  Could also add some gnome specific views, as notes, pagemarks, or 
  others ...

  - Bookmarks Navigation                                                        DONE

    . Expand, collapse, expand all, collapse all tools menu items               DONE

    . Would it be possible to generate bookmarks ?                              TODO?

    . Add a `ellipsizing text cell renderer' for bookmarks with tips
      for displaying full text when  larger that sidepane and mouse
      is over item.                                                             TODO
  
  - User bookmarks navigation                                                   TODO

  - Thumbnails navigation                                                       DONE

    . Rendering of PDF doc embed thumbnails                                     DONE

    . Creation of thumbnails if none are embed in PDF doc                       TODO

    . Scroll control from thumbnails                                            DONE

    . Zoom control from thumbnails                                              DONE

    . Create a thumbnail widget (derived from gnome canvas item)                TODO

  - Annotations navigation

    . List of annotations properties (by authors? or else ...)                  PARTIAL

    . Display on/off of annotations                                             DONE

    . Rendering of annotations via plugins (one for each type                   TODO
      especialy for widget and form ones)

    . A specification document for describing plugin interface                  PARTIAL

  - Signatures view

    . List of all signatures the document have been sigggned with.              TODO

    . View/Export of the certificate                                            TODO

* Find text
  Add an Edit Menubar menu containing a Find text item. Also avai-              PARTIAL
  lable on the toolbar.                                                         (feat. is here but do not 
runs well)
  The Edit Menu is added at the end of the menubar. Should
  be after /File and before /View.

  . Keep track of selection page to remove it when change.                      DONE

  . A way to save selection in a separate PDF/Text file                         TODO

  . Set the find dialog as transient for toplevel window                        DONE

  . Add support for 'wrapped search' and 'search forward/backward'              TODO

* Select & copy text

  . Text selection                                                              DONE

  . Change the rectangle used at now with a reverse video text when some        TODO
    is selected

  . Selection copy (to clipboard ...)                                           ALMOST DONE
    (C-c is crashing gpdf at now ...? don't know why...)

* Request password when PDF document is protected                               DONE

  . Set the pwd dialog as transient for toplevel window                         DONE

* Online help for GPdf                                                          PARTIAL
  Doc dirs and associated makefiles and templates exists. The main
  (doc writing) still to do.

* Printing                                                                      DONE
  should be easy as it is not very different as rendering all pages 
  to print

  . It would be nice to have a page thumbnail in the printing status            TODO
    dialog each time a page is rendered

* Export PDF file as text                                                       DONE

* DragnDrop (copy action only)                                                  DONE


"Rémi Cohen-Scali <rcoscali rcsnet net>"


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]