begin process at 2008 05 22 21:49:53
1 177 987 membres
633 nouveaux aujourd'hui
13 991 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

GÉNÉRER DES PDF AVEC DELPHI ET PDF CREATOR


Information sur la source

Catégorie :Imprimante Classé sous : pdf, creator, interface, acrobat, mail Niveau : Initié Date de création : 01/05/2006 Date de mise à jour : 07/05/2006 17:05:11 Vu / téléchargé: 16 048 / 3 115

Note :
9,8 / 10 - par 5 personnes
9,80 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (19)
Ajouter un commentaire et/ou une note

Description

Ce code source est une transcription d'un exemple rédigé en C# et fourni avec PDF Creator.

En effet, PDF Creator expose un certain nombre d'interfaces permettant de générer directement des documents en PDF à partir de n'importe quel langage supportant les interfaces COM.
Comme PDF Creator est un excellent freeware, mais hélas mal documenté au niveau des interfaces mises à disposition, j'ai pensé que cela vous ferait gagner du temps d'avoir un exemple rédigé en Delphi.

Une fois PDF Creator installé, vous pouvez soit directement utiliser le code source joint ou bien suivre les étapes suivantes :

1/ Dans l'éditeur de Delphi, créez un nouveau projet
2/ Sélectionner "Projet/Importer une bibliothèque de types...", choisissez "PDFCreator (version 2.0)" et validez
3/ Ajoutez PDFCreator_TLB dans la clause Uses de votre unité utilisant PDF Creator.
4/ Déclarez les membres dans la classe de votre fiche ou des variables globales (au choix) de type :
    { Instance de PDF Creator }
    PDFCreator: TclsPDFCreator;
    {Instance du gestionnaire d'erreurs de PDF Creator.
    Sera affecté en cas d'erreur uniquement.}
    PDFError: clsPDFCreatorError;

5/ Pour la suite, voir le code source et ses commentaires

Ménageons les arbres de notre planète : éteignons nos imprimantes et ne faisons plus que des PDF.

Y a pas à dire, PDF Creator c'est pas de la daube. (lol)

PDF Creator est disponible à l'adresse suivante : http://sourceforge.net/projects/pdfcreator/

Source

  • {Voir code documenté}
{Voir code documenté}

Conclusion

Si je peux et si vous en faites la demande, j'essaierai de vous fournir d'autres exemples exploitant tout le potentiel de PDF Creator.
Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

07 mai 2006 17:05:11 :
Ajouts : envoi de PDF par e-mail + prévisualisation des PDF dans l'application
  • signaler à un administrateur
    Commentaire de hurrycane le 01/05/2006 21:17:05

    comment tu fait pour poster des sources claires et utiles , intéressantes et la ou lon sattendait le moins !
    je vais mettre au point un script qui permettra de detecter ta presence sur delphifr et de lancer une alerte , il sera parametrable ainsi il me dira si tas poster une source ou non etc !
    lollllllllllllllllllll
    trop top ta source ! 10/10 et aussi complete et bien commentée rereremerci delphiprog !!!!

  • signaler à un administrateur
    Commentaire de Delphiprog le 01/05/2006 22:36:07 administrateur CS

    Hurrycane, sais-tu que tu peux utiliser les alertes avec MSN Messenger et un compte Codes-Sources ?

    Merci pour ton commentaire.

  • signaler à un administrateur
    Commentaire de hurrycane le 02/05/2006 14:26:27

    eh ben c'est la premiere fois que jentend ca et comment on peut faire ca ?

  • signaler à un administrateur
    Commentaire de cirec le 02/05/2006 14:50:40 administrateur CS

    Salut,
    alors j'ai un petit problème avec ce code :
    j'ai essayé de l'utiliser tel quel (après installation de PDFCreator bien sur) mais l'unité PDFCreator_TLB fait référence à l'unité VBA_TLB que je ne trouve bien évidement pas.

    Alors avant de faire des expériences en tous genres je voudrais savoir si tu sais a quoi correspond cette unité. Je sais que l'unité PDFCreator_TLB est généré automatiquement et que je peu la "recréer" mais comme la source devrait pouvoir être utilisé tel quel, je souhaiterais que tu m'éclaires un peut.

    @+
    Cirec

  • signaler à un administrateur
    Commentaire de nou366 le 02/05/2006 15:43:27

    Impeccable, génial, super etc....
    10/10, bien sur !

  • signaler à un administrateur
    Commentaire de Delphiprog le 03/05/2006 23:56:07 administrateur CS

    Cirec : je suis désolé pour ce désagrément et je suis d'accord avec toi quand tu dis "la source devrait pouvoir être utilisé tel quel". Mais là, comme le code a été généré automatiquement pas Delphi, je n'ai pas vu arriver. J'étais plus occupé à trouver les bonnes classes/interfaces qu'à vérifier chaque ligne générée.

    Si on regarde le début de PDFCreator_Tlb.pas, on peut effectivement constater une liste de dépendances (DepndLst):
    // Bibl. types : C:\Program Files\PDFCreator\PDFCreator.exe (1)
    // LIBID: {1CE9DC08-9FBC-45C6-8A7C-4FE1E208A613}
    // LCID: 0
    // Fichier d'aide :
    // Chaîne d'aide :
    // DepndLst:
    //   (1) v2.0 stdole, (C:\WINDOWS\system32\STDOLE2.TLB)
    //   (2) v6.0 VBA, (C:\WINDOWS\system32\msvbvm60.dll)

  • signaler à un administrateur
    Commentaire de Delphiprog le 07/05/2006 17:08:13 administrateur CS

    Mise à jour du code source avec ajout d'une seconde application pour l'envoi par mail et la prévisualisation (cette dernière fonctionnalité nécessite Acrobat Reader installé sur votre machine).

    A toi de jouer Nou366 !

  • signaler à un administrateur
    Commentaire de cirec le 08/05/2006 12:44:52 administrateur CS

    Delphiprog :je voulais justement importer la bibliothèque mais chez moi je n'ai que PDFCreator Version 3.0 et Version 3.1 et pas de Version 2.0.
    Pourtant je l'ai téléchargé avec le lien que tu donnes plus haut.

    Donc je me demandais si tu savais quelle version je dois utiliser où si je dois essayer tout simplement au pif :-)

    @+
    Cirec

  • signaler à un administrateur
    Commentaire de nou366 le 08/05/2006 20:09:52

    Salut Delphiprog, tu mérite un énorme potou ...
    tu m'enléve une grosse épine du pied, tu ne peux pas connaître ma joie ..
    1000 fois merci
    a+

  • signaler à un administrateur
    Commentaire de Gecko62 le 08/05/2006 22:40:17

    Un grand merci pour cette source qui m'est très utile (je débute en programmation et il y a beaucoup de domaine ou mon ignorance est grande).
    Et ce genre de source me simplifie grandement la tâche
    Alors une fois encore merci

  • signaler à un administrateur
    Commentaire de PastisOlive le 17/07/2006 14:16:32

    Salut,

    J'ai pris la dernière version de PdfCreator (4.1) et du coup j'ai une exception 0x00.. au moment de l'appel à cStart(). Incompatibilité totale ?

    Cdt,
    Oliv

  • signaler à un administrateur
    Commentaire de Danfas le 18/07/2006 23:49:48

    Bonjour

    J ai telechargé le zip en delphi. Je me dis que ca serait plus facile. Mais voila apres l'extraction, reglages des options, je me heurte a un petit mystère pour moi

    en lancant le programme le curseur s arrete dans la ligne uses sur 'PDFCreator_TLB et j ai le message suivant.

    [Erreur fatale] UMainForm.pas(16): Fichier non trouvé : 'PDFCreator_TLB.dcu'

    Dans le repertoire pas de dcu.

    Ou ai je loupé quelque chose ?

  • signaler à un administrateur
    Commentaire de Delphiprog le 21/09/2006 23:14:26 administrateur CS

    Désolé pour cette réponse tardive.

    Je dois avouer que je suis sur le point de jeter l'éponge avec cette nouvelle version  estampillée 0.9.3.

    D'une part, l'auteur annonce qu'il a fait des changements dans les interfaces COM (ce qu'il ne faut jamais faire !...mais bon, c'est fait par des programmeurs VB).

    D'autre part, Delphi génére 98 messages d'avertissements à propos de non concordances de type dans les arguments passés aux getters et aux setters des différentes propriétés : du jamais vu !

    Si l'application ne plante plus, en revanche, il n'y a plus moyen d'accéder au serveur COM par la méthode cStart qui renvoie touours faux alors que le serveur est bien lancé (voir liste des tâches actives).

    Là, franchement, je n'en peux plus après trois heures à me demander si je savais encore utiliser un serveur COM hors processus.

    J'ai essayé de charger le projet en C# dans C# Builder : impossible de compiler à cause de la DLL interop.vba.dll soit-disant incompatible !

    Retenez moi, je vais craquer !

    Bref, j'abandonne et j'attends une prochaine version.
    Désolé, mais je crois qu'il faudra se rabattre sur une version 0.9.1 toujours disponible en téléchargement.

    Bonne continuation. M'en vais prendre mes gouttes pour me calmer (lol).

  • signaler à un administrateur
    Commentaire de cousingeoffrey le 14/03/2007 14:20:03

    Bonjour

    Je sais que le sujet date un peu. Je souhaite utilisé pdf creator. Toi tu lui passe une fichier txt. Moi j'aimerai bien lui passer une image en bmp. mais je ne trouve pas. Serais-tu me guider ?

  • signaler à un administrateur
    Commentaire de marabou le 17/04/2007 18:36:30

    tout simplement bravo

  • signaler à un administrateur
    Commentaire de cousingeoffrey le 17/04/2007 20:40:11

    J'ai trouvé solution à mon problème. Pour ceux qui chercherai, il suffit de paramétres pdfcreator comme tu le fait mais d'utiliser PDFCretaor comme une imprimante.

  • signaler à un administrateur
    Commentaire de gandev le 30/04/2007 12:44:38

    Bonjour,

    Attention il ne faut pas utiliser PDFCreator_TLB.pas du code source qui est dans le zip !!!

    Quelque soit la version de PDFCreator, il faut recréer l'unité
    PDFCreator_TLB.pas à partir de Projet->Importer une bibiolthèque de types, cliquer sur Ajouter puis sélectionner
    C:\Program Files\PDFCreator\PDFCreator.exe, cliquer sur créer unité, automatiquement l'unité PDFCreator_TLB.pas est créée dans
    C:\Program Files\Borland\Delphi7\Imports.

    Et la suite est connue. A vous de revoir.

  • signaler à un administrateur
    Commentaire de SuperExcitator le 12/09/2007 17:18:02

    Tout fonctionne parfaitement avec Delphi 7

    Merci bien !

  • signaler à un administrateur
    Commentaire de Cissou79 le 04/04/2008 10:17:52

    bonjour,

    je souhaite imprimer des pdf à l'aide de PdfCreator. Par programmation, je souhaite indiquer le répertoire d'enregistrement ainsi que le nom du pdf à créer (j'utilise AutosaveDirectory et AutosaveFilename qui fonctionnent très bien dans mon programme).
    Mon problème est que j'utilise comme reporter "Free report". Lorsque j'envoie mon fichier à l'impression il n'existe pas physiquement sur mon poste. Je ne peux donc pas utiliser PDFCreator.cPrintFile. Je lance mon impression à l'aide des commande de free report (PrintPreparedReport) en ayant au préalable sélectionné la bonne imprimante.
    Y'a-t'il un moyen de savoir quand l'impression se termine ? Existe t'il une propriété de PdfCreator indiquant que l'imprimante est en cours d'utilisation?

    Je vous remercie de vos réponses.

Ajouter un commentaire

Appels d'offres

Pub



CalendriCode

Mai 2008
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Téléchargements

Boutique

Boutique de goodies CodeS-SourceS