Contributions Pilot Systems
 
You are here: Home Extensions Plone PDFNode
Document Actions

PDFNode

RSS Feed Category: Infrastructure — Other products by this author
PDFNode est un outil Zope permettant de faciliter l'agrégation de fichiers HTML, LaTeX, PDF et autres sources, en un unique fichier PDF.

Current release: PDFNode 0.3.0

Released 2008-09-03 — testé avec Plone 3.1, Plone 3.0, Plone 2.5

Publication initiale, encore au stade bêta, mais fonctionnelle et utilisable en production.

List all releases… Full release announcement…

Get PDFNode for Toutes plateformes (16.0 kB)

Publication initiale

Experimental releases

There are no experimental releases available at the moment.

Project Description

Project resources

Utilisation

PDFNode est un produit Zope (ou Python) permettant de générer des fichiers PDF à partir de différents formats d'entrée : HTML, PDF ou LaTeX.

Ce produit ne gère pas la génération PDF en elle-même (assurée par htmldoc ou pdflatex), mais se charge de multiplexer ces différents formats en un seul fichier.

 

Un exemple typique d'usage consiste à créer un objet PDFDocument, le configurer, y ajouter des données (qui peuvent être divisées en sections), puis générer le document final.

Prérequis

PDFNode requiert

  • Zope 2.7 ou supérieur (Python 2.3 ou supérieur)
  • pdflatex
  • htmldoc pour le support du text/html

La classe PDFDocument peut également être utilisée en dehors de Zope, grâce à Python 2.3 ou supérieur.

Si BlueDCS est installé, PDFNode pourra également l'utiliser pour convertir des documents Office au format PDF.

Aperçu de l'API

L'outil principal (PDFNode) fournit trois méthodes de création :

newPDF
Cette fonction créée un nouvel objet PDFDocument préconfiguré. On peut ensuite y rajouter du contenu. 
generate
Génère un fichier PDF à partir d'un objet PDFDocument et du nom de fichier. Renseigne automatiquement des en-têtes HTML pour permettre un téléchargement sur demande.
renderAsPdf
Ceci est une méthode faisant appel automatiquement aux deux précédentes pour simplifier la procédure de conversion d'une page HTML (avec d'éventuels pièces attachées en PDF) en un fichier PDF unique. 

 La classe PDFDocument propose plusieurs méthodes :

configure/reconfigure 
Ces deux méthodes peuvent être utilisées pour changer dynamiquement les propriétés de l'objet, telles la génération du sommaire, le nom des commandes à utiliser, etc... 
set_title 
Définit le titre (et le nom de l'auteur) du document global. 
add_data 
Ceci est la méthode principale, consistant à ajouter du contenu au ficheir PDF. Les données et types-MIME doivent être fournis, des informations supplémentaires telles les sections et titres (pour la génération du sommaire) peuvnet être fournies. 
add_* 
Ces méthodes sont des "helper method" pour les fonctions précédentes.  
add_list, add_description 
Ajoute une liste à puces, ou une liste clés/valeurs, sous la forme de code LaTeX. 

Etendre les formats supportés

PDFNode peut voir ses fonctionnalités de conversion aisément étendue à d'autres supports d'entrée. Vous pouvez consulter le répertoire PDFRenderers/ pour plus d'informations. Enregistrer le support d'un nouveau format se fait, pour le moment, en rentrant :

from Products.PDFNode.PDFRenderers import renderers
renderers[my_mimetype] = MyRenderClass

Versions futures

L'utilisation de pisa au lieu de htmldoc pour convertir de l'HTMLen PDF est prévue pour une version future.

Crédits

Ce produit a été développé par Pilot Systems, et sponsorisé par Imaterialis et Securis.

Auteurs

  • Gaël Le Mignot <gael@pilotsystems.net>

Contributeurs

  • Alexandre Garel <alex@pilotsystems.net>

Licence

Ce produit est publié sous licence GPL v2. Pour plus d'informations, consultez le texte officiel (en anglais) ou sa traduction non officielle en français.

by laurent — last modified 2008-09-04 11:14
Contactez-nous

01 44 53 05 55

 
Plan du site
Sites
  © 1999-2017 Pilot Systems - Powered by Plone 82 rue de Pixérécourt, 75020 Paris
France — 01 44 53 05 55