diff options
Diffstat (limited to 'read_pdf_index.py')
-rw-r--r-- | read_pdf_index.py | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/read_pdf_index.py b/read_pdf_index.py new file mode 100644 index 0000000..b14f057 --- /dev/null +++ b/read_pdf_index.py @@ -0,0 +1,42 @@ +from gi.repository import Gtk +from gi.repository import EvinceDocument +from gi.repository import EvinceView + +EvinceDocument.init() + +doc = EvinceDocument.Document.factory_get_document('file:///home/gonzalo/Desktop/Libros/La_gran_manzana.pdf') + +def job_finished_cb(job): + model = job.get_model() + _iter = model.get_iter_first() + while True: + value = model.get_value(_iter, 0) + print value, model.get_value(_iter, 1) + _iter = model.iter_next(_iter) + if _iter is None: + break + +view = EvinceView.View() + +model = EvinceView.DocumentModel() +model.set_document(doc) +view.set_model(model) + +if not doc.has_document_links(): + print 'The pdf file does not have a index' +else: + jl = EvinceView.JobLinks.new(document=doc) + jl.connect('finished', job_finished_cb) + EvinceView.Job.scheduler_push_job(jl, EvinceView.JobPriority.PRIORITY_NONE) + +win = Gtk.Window() +scrolled = Gtk.ScrolledWindow() +win.add(scrolled) +scrolled.add_with_viewport(view) + +win.set_default_geometry(200, 300) +win.connect("destroy", Gtk.main_quit) + +win.show_all() +Gtk.main() + |