Python gtk3 pdf preview

Bonjour,
J’aimerais en python gtk3 écrire une application de fluence pour mes élèves
Fenetre coupée en deux d’un coté une zone de saisie et de l’autre la prévisualisation de sa sortie au format PDF

Pour la première pas de soucis, je vais utiliser Multiline Text Editor de gtk
Par contre pour la seconde, je ne sais comment m’y prendre.
Je pense qu’il faut une zone de preview de fichier PDF qui s’acualise au fur et à mesure de la frappe / mise à jour de la saisie dans le Multiline Text Editor.
Mais là pas d’idée… J’ai cherché sur le Net mais rien trouvé de concluant .

J’ai bien vu python-poppler [1] mais j’arrive pas à mes fins.

Si quelqu’un à un lien / une doc pour affiche en preview un pdf dans une fenetre GTK je suis preneur :wink:

D’avance merci

[1] python-poppler’s documentation! — python-poppler documentation

Bonjour,

Merci pour l’intérêt que tu portes à Debian et à Python. Il y a un moment déjà, je me suis amusé à créer un éditeur LaTeX en ligne sans prétention. Côté client, j’avais du HTML et du JavaScript et
côté serveur, du Python sur un serveur Web Apache.

Dans un cadre, je saisissais mon texte et dans un second cadre sur la même page, j’avais le rendu PDF. Un bouton « Envoyer » me permettait de transmettre au serveur mon texte qui apparaissait ensuite dans le second cadre avec l’approche Ajax.
https://developer.mozilla.org/fr/docs/Web/Guide/AJAX

De mémoire, j’ai utilisé la bibliothèque JavaScript PDF.js pour le rendu PDF.https://github.com/mozilla/pdf.js

J’ai aussi procédé à la rédaction d’un document technique que je pourrais à l’occasion te transmettre, si cela t’intéresse. Il faudra cependant patienter un petit peu car je n’ai pas remis encore en route mon ancien PC sur lequel repose ma documentation depuis mon déménagement. Je commence seulement à reprendre de l’activité sur ce Forum.

En convertissant ton PDF en JPG avec convert (outil binaire intégré à Imagemagick), cela te permettrait de l’afficher directement dans une fenêtre GTK sans passer par un navigateur.

Je n’ai pas cependant poursuivi le projet ou du moins j’ai pris la sage résolution de me tourner vers l’apprentissage du Framework Django en vue de me simplifier grandement la programmation tant il restait à faire.

Bonsoir et tout d’abord merci pour ta réponse

Oui entre temps j’avais relu pas mal de doc et j’avais capté qu’il fallait passer par une conversion du PDF en image

Et du coup j’avais ce code en passant par poppler :wink:

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import gi
gi.require_version('Poppler', '0.18')
gi.require_version('Gtk', '3.0')
from gi.repository import Poppler, Gtk

def draw(widget, cr):
        # set background.
        cr.set_source_rgb(0.7, 0.6, 0.5)
        cr.paint()

        # set page background
        cr.set_source_rgb(1, 1, 1)
        cr.rectangle(0,0,1600,400)

        cr.fill()
        page.render(cr)

filepath = "sample.pdf"
f11 = open(filepath, "rb")
data1 = f11.read()
f11.close()

document = Poppler.Document.new_from_data(data1, None)
page = document.get_page(0)
print (document.get_n_pages())


window = Gtk.Window(title="TEST")
window.connect("delete-event", Gtk.main_quit)
window.connect("draw", draw)
window.set_app_paintable(True)

window.show_all()
Gtk.main()

Qui me permet bien de convertir le pdf et jpg.

Reste plus qu’à :wink: Je suis cours aussi après le temps :wink: La lecture de ton message m’indique donc que la route empruntée n’est pas si mauvaise que ça

Je vais suivre ASAP les liens que tu me proposes :wink:

Bonne soirée

Pour la language Python, il y a un channel Youtube et un site web c’est DocString

http://www.youtube.com/channel/UCo2zkK2d_frGSXctIkftALw

Ça parlee bien sûr de Django :slight_smile:

Sinon, moi, je ne pourrais pas vous aider.

Romain