Création de Factures PDF - existe-il des templates solutions?
Notre société est à la recherche à intégrer les factures dans un nouveau système, nous sommes en développement.
Nous avons besoin d'une solution pour créer une mise en page de la facture et ensuite de les convertir au format pdf.
Nous avons considéré uniquement la pose de la facture en html/css puis de les convertir au format pdf.
Nous avons également considéré l'utilisation de SVG->conversion PDf.
Deux de ces solutions intègrent bien dans notre template langue utilisée pour notre application web.
Historiquement, nous avons été un Microsoft business et utilisés Crystal Reports pour une telle tâche, mais nous sommes à la recherche pour un open-source Linux solution pour ce projet.
Ce que quelqu'un a des suggestions d'une approche ou d'une technologie que nous pourrions utiliser pour une telle tâche?
Vous devez vous connecter pour publier un commentaire.
De la voie normale est à installer (La)TeX (probablement déjà sous linux) et exécuter pdflatex pour obtenir les fichiers pdf. Vous pouvez également utiliser Apache FOP, si vous préférez xslt et xsl-fo.
Si le nombre de factures à créer est faible, vous pourriez vouloir utiliser open office (directement ou comme une boîte à outils).
Si vous voulez une grande précision de positionnement et de bas niveau d'accès, un faible niveau de pdf library (je ne sais pas si iTextSharp fonctionne avec mono) pourrait être ce que vous voulez.
Je voudrais essayer de LaTeX d'abord, parce qu'elle permet d'obtenir des résultats avec le moins d'efforts.
Essayez ceci... créer une nouvelle facture avec le Mot (ou ce que vous voulez) et de l'enregistrer en tant que PDF.
Puis utiliser un fichier PDF de la bibliothèque de modifier le format PDF (insérer le texte à particulier coordonnées). Nous faisons cela dans le monde Microsoft et il est extrêmement facile.
Le plus grand avantage est que nous pouvons utiliser nos propres outils pour créer et modifier le modèle. Si nous voulons ajouter un texte statique, nous venons de manivelle de l'ouverture de Word, faire le changement et l'enregistrer dans un fichier PDF (qui est utilisé comme modèle).
Pour Microsoft, nous utilisons iTextSharp qui est en fait un C# port de l'original La version Java de iText
De plus...
Vous pouvez utiliser Adobe Acrobat pour insérer des champs dans le fichier PDF (adresse, téléphone, numéro de facture, ligne 1, ligne 2, etc...) et ensuite de l'utilisation de la bibliothèque iText/iTextSharp pour remplir ces champs au moment de l'exécution.
C'est, plus en détail, ce que nous faisons... et il est extrêmement facile.
Nous utilisons Reportlab avec Python. Si vous regardez autour, il y a une charge de prêt-à-formes/factures/etc.
J'ai déjà produit des factures par les templates d'un fichier PostScript, puis en utilisant Ghostscript est
ps2pdf
à la convertir en fichiers Pdf.Il y a plusieurs OSS déclaration des moteurs (Jasper Reports, Pentaho et BIRT de nommer trois) que vous pouvez utiliser dans beaucoup de la même manière que vous avez toujours utilisé les Rapports Crystal. L'un des autres affiches mentionne ReportLab, qui est une option si vous êtes à l'aide de Python ou peut intégrer une exécution Python dans votre application.
Probablement la solution la plus souple consiste à créer XMLs avec les données de facturation et puis en utilisant Xslt transformer les, en Pdf, format html, quoi que...
Cela dépend de votre environnement. Si vous avez accès à Java, vous pourriez regarder iText (http://www.lowagie.com/iText/), une bibliothèque qui vous permet de générer des fichiers PDF à la volée.
Il y a deux étapes, si j'ai bien compris:
1) Création de gabarit PDF avec des espaces réservés pour remplir des données par programmation
2) Remplissage de la PDF modèle par programmation au cours de l'exécution
Pour le #1, OpenOffice permet la création de modèles PDF, qui peut ensuite être rempli par programmation. C'est assez bon pour créer de simples factures qui ne comportent probablement des datagrid/table genre de choses.
Pour le #2, vous avez déjà les réponses ici - iText, iTextSharp.
Espérons que cette aide!
Pas sûr de ce que votre objectif est ici, mais il y a un opensource php-bibliothèque appelée fpdf, qui a aussi une extension pour prendre un pré-rendu au format pdf mise en page, puis le remplir avec plus de contenu, la génération d'un nouveau fichier PDF avec cette info.
Cependant, je voudrais aller pour une solution que vous pouvez intégrer parfaitement dans la plattform vous êtes en train de construire, mais je n'irais pas dans un HTML->format PDF solution puisque vous n'avez pas la moindre idée de ce qu'il pourrait tenir sur un morceau de papier concernant les tailles dans ce genre d'environnement, ce qui signifie que vous ne savez pas quand vous devez diviser le contenu en deux modèles distincts.
Vous pouvez également essayer d'utiliser XSL:FO. XSL:FO est documentée de la norme de description de page mise en page: http://www.w3.org/TR/xsl/#fo-section.
J'ai eu du succès sur les deux projets de création de documents, en créant un schéma XML qui définit le contenu de la "PDF". J'ai ensuite utiliser l'outil XSD (de Microsoft) pour générer une classe représentant le présent document. J'ai ensuite carte mes données dans cette structure, sérialiser la population de la classe XML, avec une feuille de style XSL qui définit la façon dont les données doivent être mappés dans FO, et de le passer à un FO formateur. Pour les formateurs, j'ai utiliser Alt-Soft est Xml2Pdf avec succès. Il y a quelques autres. Il y a quelques outils disponibles pour aider à créer le XSL pour FO de la feuille de style (c'est à dire stylusstudio et XmlSpy), mais je vous recommande l'apprentissage de la FO constructions que les outils semblent produire de ballonnement les feuilles de style. FO est comparable au format HTML (où une balise P est un BLOC balise FO), mais peut être délicat. Cette belle chose à propos de FO, c'est que certaines formateur aide à la conversion vers d'autres formats, tels que Word, HTML, etc.
Autres options:
iTextSharp (C# port de iText). Viens de commencer à lire à ce sujet. Open source et gratuit. Je ne pense pas qu'il existe une "templating" pris en charge avec cela, mais je peux me tromper à ce sujet.
SQL Server Reporting Services. En supposant que vos données de facturation sont, ou peuvent être mis dans un format qui peut être lu par reporting services (SQL Server, Web Service, etc.), de définir la mise en page dans SSRS, puis de publier vers le serveur de rapports. Utilisation SSRS des Services Web ou des paramètres de la requête d'exécution pour exécuter le rapport et l'ont sortie en PDF.
J'aime wkhtmltopdf http://code.google.com/p/wkhtmltopdf/
Ce html-2-pdf site peut être un point de départ utile: http://maarten.lippmann.us/?p=101
Un site à un ami de mine intégrée utilise un script pour le taux de désabonnement des pages HTML dans des fichiers Pdf imprimables, trop http://philambdaupsilon.org. Vous ne savez pas les détails exacts, mais il est une SORTE de l'utilisateur, et je vais l'envoyer à cette question, pour lui, trop.
Malheureusement, le meilleur système sur le marché (à l'heure actuelle) est en train de passer le HTML & CSS à un serveur ColdFusion et le retour le rendu PDF. Donc, si l'argent n'est pas une grande préoccupation, c'est le moyen le plus rapide pour déployer la solution qui vous rend le plus de résultats.
J'ai essayé très dur pour obtenir FPDF, TCPDF, la R&OS pdf de classe, et même CodeIgniter recommandation du de travail, mais rien de stable sortie pour quoi que ce soit au-delà de la plus élémentaire/fade fichiers HTML.
Honnêtement, si le ColdFusion solution n'est pas viable, je ne l'utiliserais html2ps, puis ps2pdf pour convertir vos fichiers au format PDF.
(C'est tout en supposant que vous ne voulez pas prendre le temps et la conception de chaque fichier PDF à l'aide de l'PDF natif créateur de code en PHP. C'est ce que des systèmes comme SugarCRM utilisation. Bien que très fonctionnel avec des résultats stables, la création effective de chaque PDF-générateur de fichier est un processus douloureux)
Nous avons utilisé Jasper Reports avant. Ce n'est pas ce que vous souhaitez appeler convivial, mais il parlera directement à votre base de données.
html2pdf fonctionne très bien. Vous pouvez l'utiliser pour générer des rapports HTML et PDF à partir de la même source.
Je suis jongler avec Mouton Noir Factures droit maintenant, ce qui est génial au début, mais maintenant, je vais avoir de la difficulté à réellement obtenir de rendre les fichiers Pdf. Beaucoup des difficultés d'installation--probablement beaucoup plus facile sur votre propre serveur, mais je suis sur un ordinateur hôte partagé avec elle. La sortie HTML de gestion des données et les portions sont bien fait même si, ce qui est quelque chose que vous n'aurez pas à sortir de la simple création d'un fichier postscript modèle. J'espérais trouver une référence à une bibliothèque qui a un actif de l'équipe de développement si (Mouton Noir n'est pas mis à jour).
Si vous souhaitez que le navigateur parfait HTML converti au format PDF, puis essayez commandlineprint
Vous aurez besoin d'installer firefox sur linux distro, désactiver tous les firefox alertes et ensuite l'exécuter à travers un affichage virtuel. Vérifiez ce fil pour plus de détails.
C'est indigne pour le faire fonctionner mais ne vous donner les meilleurs résultats pour HTML pour la conversion en PDF que j'ai vu.
OK, une recherche de Google les projets de Code tourné Simple Factures, ce qui est génial et bien entretenues.
- Je utiliser TROFF pour mes factures en raison de sa très simple textuelle de l'encodage. La logique est à quelques lignes de Perl. Garder les choses simples.
Un Ruby solution, essayez de Crevettes: http://prawn.majesticseacreature.com/
J'utilise open office sur le serveur, puis générer le XML pour le document (il suffit de dézipper le document et bidouiller)
Certains peuvent l'utiliser Dhek éditeur de modèle pour définir la zone/espace réservé pour un fichier PDF existant sans modifier un document existant, puis de le remplir à générer de la finale de la doc (par exemple, avec les valeurs de l'utilisateur à partir d'un formulaire): https://github.com/applicius/dhek .