Moin!
Ich hab ein Pool voller PDF Dateien, mit jeweils 1ner Seite welche eine Zeichnung enthält. Um nun den stilistischen Aspekt besser kontrollieren zu können wollt ich mit python mehrere pdf´s gleichzeitig anzeigen lassen, in einem Canvas z.B.
Features sollen später Zoom z.B. sein.
Hat jemand schon mal was in der Art gemacht? Irgendjemand eine Idee wie man das macht ?
Thx for listening
PDF Dateien anzeigen...
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Hallo skypa!
Unter Windows mit wxPython machbar.
mfg
Gerold
Unter Windows mit wxPython machbar.
mfg
Gerold
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Funktioniert das auch ohne Adobe Reader? Was nutzt wxPython denn dafür?skypa hat geschrieben:Hm verdammte Tat, nun muss ich wohl mich erstmal mit wxPython auseinander setzen...
Poppler ist der Rendering-Code von `xpdf` der auch von `Evince` unter GNOME verwendet wird um PDFs anzuzeigen. Mit den Python-Bindings könntest du so deinen eigenen PDF-Betrachter schreiben.skypa hat geschrieben:Python bindings zu poppler? Kannst mir das kurz erläutern, versteh rein Bahnhof
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Hallo!Leonidas hat geschrieben:Funktioniert das auch ohne Adobe Reader? Was nutzt wxPython denn dafür?skypa hat geschrieben:Hm verdammte Tat, nun muss ich wohl mich erstmal mit wxPython auseinander setzen...
@Leonidas: Es nutzt das *aktuell* in Windows für PDF registrierte ActivcX-Control. Das ist normalerweise der Acrobat-Reader, aber bei mir ist das im Moment der Foxit-Reader http://www.foxitsoftware.com/.
@skypa: So schwer ist das gar nicht:
Code: Alles auswählen
#!/usr/bin/env python
# -*- coding: iso-8859-15 -*-
import wx
from wx.lib.pdfwin import PDFWindow
PDF_FILE1 = r"J:\Dokumente und Einstellungen\Gerold\Desktop\LED 5mm.pdf"
PDF_FILE2 = r"J:\Dokumente und Einstellungen\Gerold\Desktop\Python Magazine 2007-10.pdf"
wx.SetDefaultPyEncoding("iso-8859-15")
class MyFrame(wx.Frame):
def __init__(
self, parent = None, title = "Example", size = wx.Size(550, 420)
):
wx.Frame.__init__(self, parent, -1, title, size = size)
panel = wx.Panel(self)
vbox_main = wx.BoxSizer(wx.VERTICAL)
panel.SetSizer(vbox_main)
hbox = wx.BoxSizer(wx.HORIZONTAL)
vbox_main.Add(hbox, 1, wx.EXPAND | wx.ALL, 5)
pdf1 = PDFWindow(panel, style=wx.SUNKEN_BORDER)
hbox.Add(pdf1, 1, wx.EXPAND | wx.ALL, 5)
pdf1.LoadFile(PDF_FILE1)
pdf2 = PDFWindow(panel, style=wx.SUNKEN_BORDER)
hbox.Add(pdf2, 1, wx.EXPAND | wx.ALL, 5)
pdf2.LoadFile(PDF_FILE2)
def main():
"""Testing"""
app = wx.PySimpleApp()
f = MyFrame()
f.Center()
f.Show()
app.MainLoop()
if __name__ == "__main__":
main()
Gerold
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wow, merci! Das lass ich mir direkt mal durchn Kopf gehen, hab mir schon Literatur besorgt : "wxPython in Action" (->[URL entfernt]).
Da war leider nix enthalten mit pdf dateien, aber hat sich mit deinem Beispiel wohl erledigt!
Ich paste später dann mal was ich drauß gemacht hab.
Heide!
Edit (Leonidas): URL gelöscht.
Da war leider nix enthalten mit pdf dateien, aber hat sich mit deinem Beispiel wohl erledigt!
Ich paste später dann mal was ich drauß gemacht hab.
Heide!
Edit (Leonidas): URL gelöscht.
Funktioniert leider nicht.
Es öffnet sich der Acrobat-Reader (version 8.0) und zeigt die gewählte Datei.
Gleichzeitig öffnet sich ein (wx.python)Frame mit zwei Panels.
Eins davon bleibt leer, im zweiten taucht eine Fehlermeldung des Internet Explorers (?) auf.
Schlimmer noch als die Internet Explore Meldung ist das Ergebnis, wenn ich versuche, das Beispiel aus der wx.python-Demo durchzuspielen.
Wieder öffnet sich der Acrobat-Reader (im wx.Python Frame geschieht nichts) nur dass der Reader dann hängen bleibt.
Unter Verwendung von: WindowsXP, Acrobat Reader 8.0, Python 2.5.1 (r251:54863, Apr 18 2007, 08:51:08)
Kann es sein, dass der Fehler in der Reader-Version liegen könnte (event. zu neu ?)
ElSidS
Es öffnet sich der Acrobat-Reader (version 8.0) und zeigt die gewählte Datei.
Gleichzeitig öffnet sich ein (wx.python)Frame mit zwei Panels.
Eins davon bleibt leer, im zweiten taucht eine Fehlermeldung des Internet Explorers (?) auf.
Schlimmer noch als die Internet Explore Meldung ist das Ergebnis, wenn ich versuche, das Beispiel aus der wx.python-Demo durchzuspielen.
Wieder öffnet sich der Acrobat-Reader (im wx.Python Frame geschieht nichts) nur dass der Reader dann hängen bleibt.
Unter Verwendung von: WindowsXP, Acrobat Reader 8.0, Python 2.5.1 (r251:54863, Apr 18 2007, 08:51:08)
Kann es sein, dass der Fehler in der Reader-Version liegen könnte (event. zu neu ?)
ElSidS
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Hallo ElSidS!ElSids hat geschrieben:Acrobat Reader 8.0
Du hast recht. Mit dem Acrobat Reader 8.0 geht gar nichts mehr. Hoffentlich reagieren die Entwickler von wxWidgets oder wxPython recht schnell darauf.
mfg
Gerold
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.