2010-04-27 41 views

Répondre

1

Vous pouvez utiliser le Python Imaging Library pour dessiner des images qui peuvent facilement être affichées dans diverses interfaces utilisateur, par ex. en affichant un jpg. Ensuite, utilisez ReportLab. Voici un example qui montre comment utiliser ReportLab avec une image.Je ne suis pas sûr de savoir ce que vous entendez par dessiner sur "écran", c'est-à-dire si vous travaillez avec une boîte à outils spécifique de l'interface utilisateur. Mais s'il est acceptable de dessiner et d'afficher des fichiers PDF sans utiliser d'image intermédiaire (jpg, etc.), vous pouvez envisager la bibliothèque PyX, ce qui simplifie la création de graphiques avec des fichiers PDF.

0

Vous pouvez regarder dans matplotlib, qui est principalement pour le traçage, mais vous pourriez probablement faire un dessin de base.

Ensuite, il y a pygame. Mais je ne suis pas sûr si elle peut générer un pdf, mais vous pouvez faire des graphiques 2D avec elle.

Il y a quelque chose qui s'appelle ReportLab qui peut générer des pdf. Here est un tas de tutoriels l'utilisant.

0

Ceci est une question difficile, car il y a so many libraries available - il y a un compromis entre beauté/facilité. Ce que j'ai fait et fonctionne très bien est de produire le Postscript directement, ce n'est pas difficile du tout, et vous pouvez le prévisualiser en utilisant Ghostview; convertir tyo PDF est trivial (ps2pdf). Apprendre à dire à Postscript de créer des lignes et des cercles est extrêmement simple.

Si vous voulez plus d'extensibilité, alors allez à Matplotlib, mais méfiez-vous des nombreuses fois où il va "décider pour vous ce qui a l'air le mieux" même si vous ne l'aimez pas.

Bonne chance.

0

Créer des fichiers PDF est toujours une douleur, cela n'a pas de sens si vous ne visez pas à perdre la raison. Cela dit, vous voulez faire deux choses complètement différentes: lorsque vous dessinez à l'écran, vous dessinez dans un bitmap raster, tandis que les PDF sont principalement dynamiques, comme le HTML. (contrairement à HTML, ils sont plus enclins à être les mêmes sur différentes plates-formes, mais c'est à côté du point)

Si vous voulez vraiment faire, la solution pourrait être de trouver quelque chose qui génère des fichiers PDF et puis montrant le PDF généré à l'écran à chaque étape. Je suppose que c'est la seule façon d'obtenir des résultats WYSIWYG.

3

Si vous utilisez Tkinter, vous pouvez dessiner sur un widget Canvas, puis utilisez la méthode .postscript pour enregistrer le contenu sous forme de fichier PostScript, que vous pouvez convertir en PDF en utilisant ps2pdf.

postscript (self, CNF = {}, ** kw) Imprimer le contenu de la toile à un fichier Postscript . Options valides: colormap, colormode, fichier, fontmap, height, pageanchor, pageheight, largeur de page, pagex, pagey, rotate, witdh, x, y.