IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++Builder Discussion :

Installer libHaru Pdf


Sujet :

C++Builder

  1. #1
    Responsable Magazine

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Points : 22 087
    Points
    22 087
    Par défaut Installer libHaru Pdf
    Salut à vous,
    j'essaye d'utiliser LibHaru comme bibliothèque pour générer des PDF, elle as l'avantage d'être gratuite et multiplateforme. Le problème est que lors du link il ne trouve pas les fonctions dans le lib :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    [Lieur Erreur] Error: Externe 'HPDF_New' non résolu référencé par D:\MES DOCUMENTS\MES PROJETS\C++\JAN\TEST_PDF\TFPFACTURATION.OBJ
    ...
    [Lieur Erreur] Error: Externe 'HPDF_Free' non résolu référencé par D:\MES DOCUMENTS\MES PROJETS\C++\JAN\TEST_PDF\TFPFACTURATION.OBJ
    En regardant plus précisément la documentation j'ai vu qu'il y avait une installe à faire, mais je ne comprend pas ou il faut trouver le makefile dont ils parlent , impossible de le trouvé de le zip telechargé :

    Citation Envoyé par documentation
    Windows platforms (except cygwin/MinGW)

    Unpack the libharu package on command prompt.

    unzip -xvzf libharu_X.X.X_win32.zip
    cd libharu-X.X.X
    There are several kinds of Makefile for every compilers in script directory.
    Build library with an appropriate Makefile.
    1) Microsoft VC++ Compiler

    nmake -f script/Makefile.msvc
    2) Bor land C++
    make -f script/Makefile.bcc

    Note:
    If you want to create DLL, use Makefile.msvc_dll (or Makafile.bcc32_dll) instead.
    Type following commands to test library. If it succeeds, some PDF files are made in the demo directory.
    In Windows environment, Install command is not prepared.

    1) Microsoft VC++ Compiler
    nmake -f script/Makefile.msvc[_dll] demo
    2) Bor land C++
    make -f script/Makefile.bcc[_dll] demo

    If you use "Visual Studio .NET", use "Visual Studio .NET Command Prompt" to build Haru. But some warnings about optimizing may occur because of the compiler included in "Visual Studio .NET" does not have an optimizing feature.
    We can also use "Microsoft Visual C++ Toolkit 2003" and "Microsoft Platform SDK" instead. The compiler of "Microsoft Visual C++ Toolkit 2003" supports optimizing feature.
    Quand une réponse vous a été utile, pensez à utiliser le nouveau système de notation

    Lisez le magazine de developpez.com.
    Mes tutos : http://pottiez.developpez.com

    La FAQ BCB -> 642 Questions/Réponses, si vous voulez participer, contactez moi. Aide de BCB6 en français

    N'oubliez pas que l'aide existe et est affichée sous simple pression de la touche F1 , une touche c'est plus rapide que tout un message .

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Août 2006
    Messages
    190
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 190
    Points : 179
    Points
    179
    Par défaut
    Bonsoir pottiez,

    J'imagine qu'ils parlent d'un makefile dans le cas où tu télécharges les sources.
    Mais dans ton cas, tu as téléchargé une version déjà compilée, non?

    Si c'est le cas, le format des librairies n'est pas le même entre différents compilateurs.

    Par exemple, il m'arrive d'utiliser des dll compiler avec Visual Studio Express, qui me génère une librairie '.lib'.
    Mais cette dernière n'est pas directement utilisable dans Builder, je suis obligé de passer par un 'implib' pour la générer moi même.

    Je ne sais pas si cela résoudra ton problème, je n'ai pas pu tester (pas de licence Builder sur cet ordinateur ;-))

    Cordialement,

    Benjamin

  3. #3
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 122
    Points : 89
    Points
    89
    Par défaut
    Intéréssé par cette librairie, j'ai voulu l'installer.

    J'ai télécharger le fichier libharu_2_0_8_win32.zip.

    en lisant le fichier INSTALL dans cette archive, on trouve :
    2. Build from source on Windows platform

    1) Unpack the libharu package.

    unzip -xvzf libharu_2.X.X_win32.zip

    2) Open command prompt and change current directory to "libharu-2.X.X".
    cd libharu-X.X.X

    3) Build library with using appropriate Makefile in "script" directory.

    nmake -f script\Makefile.msvc (Microsoft VC++ compiler)
    make -f script\Makefile.bcc32 (Borland C++ compiler)
    make -f script/Makefile.mingw (MinGW on MSYS, MinGW on cygwin)

    If you want to create DLL, use Makefile.msvc_dll, Makefile.bcc32_dll,
    Makefile.mingw_dll instead.

    4) Type "make demo" to test library. If it succeeds, some PDF files are
    madein the demo directory.

    An install command is not provided on Windows platform.
    Pour l'étape 1, un simple winrar, winzip, 7zip suffit (unzip étant introuvable sur ma machine)
    Pour l'étape 2, très simple aussi.
    Pour l'étape 3, un "make -f script\Makefile.bcc32" a parfaitement fonctionné, j'obtiens libhpdf.lib et libhpdf.lib.txt (voir log.txt pour la procédure make)

    Pour l'étape 4, malheureusement, un echec total, mais je ne sais pas si c'est le plus important.

    Je vais de suite tester cette librairie dans un petit programme, en esperant que cela fonctionne, rdv au prochain episode


    Edit : ajout des fichier issus de "make"
    Fichiers attachés Fichiers attachés

  4. #4
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 122
    Points : 89
    Points
    89
    Par défaut
    Bon premier test : mêmes erreurs que toi.
    Ensuite j'ai ajouter au projet la librairie libhpdf.lib et je me retrouves avec les erreurs suivantes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Construction
      [Lieur Erreur] Unresolved external '_deflateInit_' referenced from C:\PROGRAM FILES\BORLAND\CBUILDER6\LIB\LIBHPDF.LIB|hpdf_streams
      [Lieur Erreur] Unresolved external '_deflate' referenced from C:\PROGRAM FILES\BORLAND\CBUILDER6\LIB\LIBHPDF.LIB|hpdf_streams
      [Lieur Erreur] Unresolved external '_deflateEnd' referenced from C:\PROGRAM FILES\BORLAND\CBUILDER6\LIB\LIBHPDF.LIB|hpdf_streams

  5. #5
    Responsable Magazine

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Points : 22 087
    Points
    22 087
    Par défaut
    Salut,
    j'ai quelque peut avancé, j'ai récupéré les fichier issu de ton make (merci de les avoir mis sur le forum )
    En ajoutant cette lib à mon projet j'ai les même erreurs que toi, je me suis aperçu au passage que auparavant je n'utilisais pas la bonne lib, j'avais laissé la lib d'une autre librairie pdf, j'ai donc mis la bonne lib dans mon projet (celle donné par défaut dans le zip téléchargé), il m'as dit que c'été une librairie coff, je l'ai donc convertie garce à l'utilitaire borland, et ai ajouté la bonne librairie au projet et la plus d'erreur lors de la compilation et de la liaison.
    Mais (parce qu'il y a toujours un mais) il me fait un gros plantage access violation au démarrage de l'appli, avant même qu'il ne passe dans le winmain
    Quand une réponse vous a été utile, pensez à utiliser le nouveau système de notation

    Lisez le magazine de developpez.com.
    Mes tutos : http://pottiez.developpez.com

    La FAQ BCB -> 642 Questions/Réponses, si vous voulez participer, contactez moi. Aide de BCB6 en français

    N'oubliez pas que l'aide existe et est affichée sous simple pression de la touche F1 , une touche c'est plus rapide que tout un message .

  6. #6
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 122
    Points : 89
    Points
    89
    Par défaut
    Citation Envoyé par pottiez Voir le message
    En ajoutant cette lib à mon projet j'ai les même erreurs que toi, je me suis aperçu au passage que auparavant je n'utilisais pas la bonne lib, j'avais laissé la lib d'une autre librairie pdf, j'ai donc mis la bonne lib dans mon projet (celle donné par défaut dans le zip téléchargé), il m'as dit que c'été une librairie coff, je l'ai donc convertie garce à l'utilitaire borland, et ai ajouté la bonne librairie au projet et la plus d'erreur lors de la compilation et de la liaison.
    Tu pourrais me detailler la procedure a suivre stp, je suis un peu largué (et ouai, les débutant toujours a demander de l'aide)

  7. #7
    Responsable Magazine

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Points : 22 087
    Points
    22 087
    Par défaut
    • Télécharger le zip de la librairie sur le site
    • Extraire les fichier
    • Convertir le fichier libhpdf.lib en librairie omf (voir détail plus bas)
    • Ajouté la lib omf obtenu au projet

    pour convertir la lib en omf :
    Citation Envoyé par Aide BCB 6
    Coff2Omf est un outil en ligne de commande qui convertit un fichier bibliothèque d’importation COFF (InputFile) en un fichier bibliothèque d’importation OMF correspondant (OutputFile). Coff2Omf.exe se trouve dans le répertoire BIN de C++Builder. La syntaxe est :

    Coff2Omf [options] InputFile OutputFile

    Coff2Omf convertit les symboles exportés publiquement dans la bibliothèque d’importation COFF en un jeu de symboles correspondant dans la bibliothèque d’importation OMF. Coff2Omf permet aux utilisateurs de C++Builder d’
    établir un lien avec des DLL Microsoft et tierces qui utilisent le format COFF. Coff2Omf ne convertit pas les fichiers .OBJ.

    Exécutez l’outil Coff2Omf sur une bibliothèque d’importation COFF créée pour une DLL spécifique, et utilisez la bibliothèque d’importation obtenue pour lier les fichiers EXE et DLL de format OMF à la DLL COFF. Les commutateurs de Coff2Omf sont :

    -q – Mode silencieux (convertit sans écrire les informations de l’outil et de copyright dans la sortie standard)
    -v – Affichage des symboles sélectionnés (affiche les symboles convertis dans la sortie standard et pouvant être redirigés vers un fichier de sortie)
    -d – Supprime le fichier de sortie s’il est vide (supprime le fichier de sortie en cas d’erreur et la conversion résulte en un fichier vide)

    -h, -? Affiche de l’aide
    -r – Suppression (effacement) du fichier de sortie s’il est vide
    -libx Spécification des options de la génération de la bibliothèque d’importation OMF :

    xx peut être :

    ms – Autorisation des entrées présentant un substantypage des noms MS C++ (valeur par défaut : no)
    st – Normalisation des noms au lieu de création d’alias de substantypage MS stdcall
    ca – Non création d’alias MS cdecl (par défaut, création d’alias)
    Quand une réponse vous a été utile, pensez à utiliser le nouveau système de notation

    Lisez le magazine de developpez.com.
    Mes tutos : http://pottiez.developpez.com

    La FAQ BCB -> 642 Questions/Réponses, si vous voulez participer, contactez moi. Aide de BCB6 en français

    N'oubliez pas que l'aide existe et est affichée sous simple pression de la touche F1 , une touche c'est plus rapide que tout un message .

  8. #8
    Responsable Magazine

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Points : 22 087
    Points
    22 087
    Par défaut
    Je viens de trouvé mon erreur, il ne trouvé pas la dll, vu que je ne l'avais pas mise dans le répertoire de mon exe, maintenant mon exe compile et se lance, plus qu'a vérifié que les fichier pdf se génère bien
    Quand une réponse vous a été utile, pensez à utiliser le nouveau système de notation

    Lisez le magazine de developpez.com.
    Mes tutos : http://pottiez.developpez.com

    La FAQ BCB -> 642 Questions/Réponses, si vous voulez participer, contactez moi. Aide de BCB6 en français

    N'oubliez pas que l'aide existe et est affichée sous simple pression de la touche F1 , une touche c'est plus rapide que tout un message .

  9. #9
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 122
    Points : 89
    Points
    89
    Par défaut
    Bravo.

    Si tu reussis a faire une a)pplication simple, je suis prenneur.

    (en ce moment je suis basé surtout sur le xml, mais je doit apprendre a générer les pdf pour l'application que e développe, quelle usine a gaz)

  10. #10
    Responsable Magazine

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Points : 22 087
    Points
    22 087
    Par défaut
    Salut, avec les exemples de code fournie dans le zip de la librairie (répertoire demo), j'ai réussi facilement à créer mon pdf
    Quand une réponse vous a été utile, pensez à utiliser le nouveau système de notation

    Lisez le magazine de developpez.com.
    Mes tutos : http://pottiez.developpez.com

    La FAQ BCB -> 642 Questions/Réponses, si vous voulez participer, contactez moi. Aide de BCB6 en français

    N'oubliez pas que l'aide existe et est affichée sous simple pression de la touche F1 , une touche c'est plus rapide que tout un message .

  11. #11
    Membre actif Avatar de Bily.sdi
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    208
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 208
    Points : 206
    Points
    206
    Par défaut
    peux tu poster un exemple ?

    c'est intéressant a savoir,

    ça me donne envie de créer un fichier .pdf d'une fiche client venant d'une bd !

    ou le resultat d'une requête sql.

    utilise tu un composant ?

    Merci d'avance

  12. #12
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 122
    Points : 89
    Points
    89
    Par défaut
    Citation Envoyé par pottiez Voir le message
    • Télécharger le zip de la librairie sur le site
    • Extraire les fichier
    • Convertir le fichier libhpdf.lib en librairie omf (voir détail plus bas)
    • Ajouté la lib omf obtenu au projet
    Le zip a télécharger, c'est http://libharu.org/files/libharu_2_0_8.tgz ou http://puzzle.dl.sourceforge.net/sou..._0_8_win32.zip ?
    exrtraire les fichier, ok
    convertir le fichier . lib : je bloque la dessus, je ne le trouve pas, est-ce celui issus du make?
    conversion, bah, quand je saurais quelle librairie convertir.

    Sinon, est-il préférable d'utiliser la lib en tant que tel, ou utiliser le dll?

  13. #13
    Responsable Magazine

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Points : 22 087
    Points
    22 087
    Par défaut
    • Le zip : http://libharu.org/files/libharu_2_0_8.tgz
    • extraire
    • Pas celui issu du make, dans cette procedure ne pas faire de make, juste prendre le lib qui est dans le zip
    • Pour la convertir, utiliser en ligne de commande, l'utilitaire Coff2omf.exe qui ce situe dans le répertoire Bin de borland, je n'utilise pas d'option pour faire la conversion (voir citation du fichier d'aide dans mon post précédent)
    • J'ajoute le .lib obtenu après conversion au projet, et le .dll trouvé dans le zip doit etre placé a côté du .exe de ton application
    Quand une réponse vous a été utile, pensez à utiliser le nouveau système de notation

    Lisez le magazine de developpez.com.
    Mes tutos : http://pottiez.developpez.com

    La FAQ BCB -> 642 Questions/Réponses, si vous voulez participer, contactez moi. Aide de BCB6 en français

    N'oubliez pas que l'aide existe et est affichée sous simple pression de la touche F1 , une touche c'est plus rapide que tout un message .

  14. #14
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 122
    Points : 89
    Points
    89
    Par défaut
    j'suis vraiment un boulet, mais je ne trouve aucun .lib dans l'archive.
    tu peu me donner le chemin pour le trouver (dans l'rchive) ?

  15. #15
    Responsable Magazine

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Points : 22 087
    Points
    22 087
    Par défaut
    Si j'ouvre l'archive avec winRar, j'ai d'abord le répertoire de base dans lequel je n'ai que le répertoire libharu-2.0.8, je vais dans ce repertoire, et la j'ai 4 répertoires et 7 fichiers, dont le .lib et le .dll
    Quand une réponse vous a été utile, pensez à utiliser le nouveau système de notation

    Lisez le magazine de developpez.com.
    Mes tutos : http://pottiez.developpez.com

    La FAQ BCB -> 642 Questions/Réponses, si vous voulez participer, contactez moi. Aide de BCB6 en français

    N'oubliez pas que l'aide existe et est affichée sous simple pression de la touche F1 , une touche c'est plus rapide que tout un message .

  16. #16
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 122
    Points : 89
    Points
    89
    Par défaut
    alors en fait on s'est mal compris.

    L'archive a utiliser est libharu_2_0_8_dll_win32.zip (ou on trouve bien le lib a convertir et le dll)

    Conversion nikel, dll prise en charge, me reste plus qu'a tester!

    merci pour tout

  17. #17
    Responsable Magazine

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Points : 22 087
    Points
    22 087
    Par défaut
    Oups, oui désolé
    Quand une réponse vous a été utile, pensez à utiliser le nouveau système de notation

    Lisez le magazine de developpez.com.
    Mes tutos : http://pottiez.developpez.com

    La FAQ BCB -> 642 Questions/Réponses, si vous voulez participer, contactez moi. Aide de BCB6 en français

    N'oubliez pas que l'aide existe et est affichée sous simple pression de la touche F1 , une touche c'est plus rapide que tout un message .

  18. #18
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 122
    Points : 89
    Points
    89
    Par défaut
    Juste pour rajouter, cette bibliothèque est une merveille (enfin pour moi)

    j'ai fait une petite application juste pour générer un pdf avec un titre centré, et l'utilisation des fonctions est très simple.

    Même un débutant peut y arriver (j'en suis lma preuve) un exemple de code pour vous montere comment générer une page pdf
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    //*** Initialisation des variables
        HPDF_Doc hDoc;
        HPDF_Font hFont;
        HPDF_Page hPage;
     
        AnsiString aFileName; //*** Nom du fichier pdf
        AnsiString aChaine; //*** Chaine de caracteres
     
        float fTailleTexte; //*** longueur du texte
        float fXPos;
        float fYPos;
     
        //*** Création d'un nouveau document
        hDoc = HPDF_New(NULL, NULL);
        //*** Affichage d'erreur si le document n'a pas ete cree
        if(!hDoc)
            ShowMessage("erreur");
        else
        {
            aChaine = EditTitre->Text;
            //*** Parametre de la compression
            HPDF_SetCompressionMode(hDoc, HPDF_COMP_ALL);
            //*** Parametre de la police
            hFont = HPDF_GetFont(hDoc, "Helvetica", NULL);
            //*** Ajout d'une page au document
            hPage = HPDF_AddPage(hDoc);
            //*** Ajout d'un titre en haut de la page
                //*** Parametre du texte
                HPDF_Page_SetFontAndSize(hPage, hFont, 16);
                fTailleTexte = HPDF_Page_TextWidth(hPage, aChaine.c_str());
                //*** position centrale horizontale
                fXPos = (HPDF_Page_GetWidth(hPage) - fTailleTexte) / 2;
                //*** Position verticale
                fYPos = HPDF_Page_GetHeight (hPage) - 50;
                //*** Ajout du texte en haut et au centre du document
                HPDF_Page_BeginText (hPage);
                HPDF_Page_TextOut (hPage,  fXPos, fYPos, aChaine.c_str());
                HPDF_Page_EndText (hPage);
        }
        //*** Sauvegarde du document
        aFileName = Application->ExeName;
        aFileName = ExtractFilePath(aFileName);
        aFileName += "\\test.pdf";
        HPDF_SaveToFile(hDoc, aFileName.c_str());
        //*** Libération du document
        HPDF_Free(hDoc);

  19. #19
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    188
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 188
    Points : 55
    Points
    55
    Par défaut
    Citation Envoyé par Galkir Voir le message
    Juste pour rajouter, cette bibliothèque est une merveille (enfin pour moi)

    j'ai fait une petite application juste pour générer un pdf avec un titre centré, et l'utilisation des fonctions est très simple.

    Même un débutant peut y arriver (j'en suis lma preuve) un exemple de code pour vous montere comment générer une page pdf
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    //*** Initialisation des variables
        HPDF_Doc hDoc;
        HPDF_Font hFont;
        HPDF_Page hPage;
     
        AnsiString aFileName; //*** Nom du fichier pdf
        AnsiString aChaine; //*** Chaine de caracteres
     
        float fTailleTexte; //*** longueur du texte
        float fXPos;
        float fYPos;
     
        //*** Création d'un nouveau document
        hDoc = HPDF_New(NULL, NULL);
        //*** Affichage d'erreur si le document n'a pas ete cree
        if(!hDoc)
            ShowMessage("erreur");
        else
        {
            aChaine = EditTitre->Text;
            //*** Parametre de la compression
            HPDF_SetCompressionMode(hDoc, HPDF_COMP_ALL);
            //*** Parametre de la police
            hFont = HPDF_GetFont(hDoc, "Helvetica", NULL);
            //*** Ajout d'une page au document
            hPage = HPDF_AddPage(hDoc);
            //*** Ajout d'un titre en haut de la page
                //*** Parametre du texte
                HPDF_Page_SetFontAndSize(hPage, hFont, 16);
                fTailleTexte = HPDF_Page_TextWidth(hPage, aChaine.c_str());
                //*** position centrale horizontale
                fXPos = (HPDF_Page_GetWidth(hPage) - fTailleTexte) / 2;
                //*** Position verticale
                fYPos = HPDF_Page_GetHeight (hPage) - 50;
                //*** Ajout du texte en haut et au centre du document
                HPDF_Page_BeginText (hPage);
                HPDF_Page_TextOut (hPage,  fXPos, fYPos, aChaine.c_str());
                HPDF_Page_EndText (hPage);
        }
        //*** Sauvegarde du document
        aFileName = Application->ExeName;
        aFileName = ExtractFilePath(aFileName);
        aFileName += "\\test.pdf";
        HPDF_SaveToFile(hDoc, aFileName.c_str());
        //*** Libération du document
        HPDF_Free(hDoc);
    salut tous le monde desolé si je remonte le sujet.

    je charchais a savoir comment mettons une image.jpg sur hpdf j'y compren rien a l'api de hpdf

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Installation de PDF Creator
    Par a_hanafi dans le forum Autres Logiciels
    Réponses: 1
    Dernier message: 26/02/2013, 20h50
  2. Comment installer et partager une imprimante pdf
    Par Abdel58 dans le forum Administration système
    Réponses: 2
    Dernier message: 27/06/2006, 16h33
  3. installer le control activX pdf avec delphi architect
    Par pierrot67 dans le forum Delphi
    Réponses: 11
    Dernier message: 17/06/2006, 13h43
  4. Installer un cgi pour convertir des html en pdf
    Par sami_c dans le forum Apache
    Réponses: 3
    Dernier message: 23/03/2006, 14h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo