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

Delphi Discussion :

Fusion de PDFs


Sujet :

Delphi

  1. #1
    Invité
    Invité(e)
    Par défaut Fusion de PDFs
    Bonjour,

    avec quelle unité peut-on fusionner des PDFs avec Delphi (et si possible en FMX) ? Je ne veux pas de programme externe.

    Merci.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    donc à priori, en utilisant des unités de Delphi (i.e. dans les conditions définies par ma question), il n'y a pas de solution.

    A préciser quand même que par rapport à une remarque amusante que j'ai lue dans ce forum, il y a peu de temps, qu'en .net (c#), cela se fait en "interne" en quelques lignes... et en Windev, en une ligne (PdfFusionne). Que cela ne se fasse pas en Delphi aussi facilement, je ne trouve pas cela "amusant" car je vais perdre mon temps à réaliser quelque chose de finalement très usuel et commun...

    Donc résolu
    Dernière modification par Invité ; 04/07/2015 à 10h43.

  3. #3
    Expert éminent sénior
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Points : 28 445
    Points
    28 445
    Par défaut
    en effet il n'y a aucun support PDF de base dans Delphi

    mais il existe des composants payants et gratuits pour le faire, notamment une traduction en FreePascal de FPDF (en PHP à l'origine)
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonsoir,

    Je suppose que vous parlez de "cela". La fusion de PDFs avec Lazarus, j'ai donné merci ! Et je m'imagine bien porter un code FPC en FMX

    Bref, pour Mac, par TMS, c'est jouable. Mais pas pour Windows. Dommage. Quant aux autres développements que j'ai trouvés, ils sont tous VCL et donc ne m'intéressent pas vraiment : je n'ai pas envie ni le temps de mettre les mains dans le code à ce niveau. Il est vrai que je n'en ai besoin que pour Windows mais en Delphi je n'utilise que FireMonkey. Le VCL est trop différent d'autant que je n'utilise pas que du Pascal.

  5. #5
    Expert éminent sénior
    Homme Profil pro
    Analyste/ Programmeur
    Inscrit en
    Juillet 2013
    Messages
    4 630
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Analyste/ Programmeur

    Informations forums :
    Inscription : Juillet 2013
    Messages : 4 630
    Points : 10 556
    Points
    10 556
    Par défaut
    En C++, j'ai réussi à intégrer dans Embarcadero xe et xe6 PDF-Writer: https://github.com/galkahana/PDF-Writer

    Par contre, la bibliothèque est assez lourde: elle contient zlib, LibTiff, LibJpeg, FreeType (il faut s'aider du projet Visual pour recréer tous les dossiers/ projets/ branches/ ...)

    Arf, je ne peux pas vérifier mais il me semble que j'ai dû compiler avec la zlib Embarcadero: donc il faut modifier les sources ... et prendre son mal en patience.

  6. #6
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 043
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 043
    Points : 40 957
    Points
    40 957
    Billets dans le blog
    62
    Par défaut
    Bonjour,

    Juste une intervention rapide :

    Pourquoi ne pas passer par les API Java ?
    Du coup ce devrait être compatible avec tous les OS et FMX. Tu me rétorqueras que ce n'est pas aussi simple que de le dire et bien sur il faudra passer par Internet (enfin je crois)

    Serge

    [Edit] sinon 200$ de plus et il y a Gnostice XTremeDocument sorti le 4 juillet , compatible FMX (attention IOS 32 uniquement / lecture diagonale)
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  7. #7
    Expert éminent sénior
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Points : 28 445
    Points
    28 445
    Par défaut
    Citation Envoyé par selzig Voir le message
    Bonsoir,

    Je suppose que vous parlez de "cela". La fusion de PDFs avec Lazarus, j'ai donné merci ! Et je m'imagine bien porter un code FPC en FMX

    Bref, pour Mac, par TMS, c'est jouable. Mais pas pour Windows. Dommage. Quant aux autres développements que j'ai trouvés, ils sont tous VCL et donc ne m'intéressent pas vraiment : je n'ai pas envie ni le temps de mettre les mains dans le code à ce niveau. Il est vrai que je n'en ai besoin que pour Windows mais en Delphi je n'utilise que FireMonkey. Le VCL est trop différent d'autant que je n'utilise pas que du Pascal.
    Le problème c'est que MacOS supporte nativement les PDF, il est possible d'afficher directement un PDF y compris sous Delphi.

    Sous Windows rien de tel, il faut passer par Acrobat Reader pour visualiser et Writer pour créer des PDF.

    Ceci dit "Free JPDF Pascal", c'est du pur Pascal au départ, et c'est probablement facilement compatible FMX...sauf peut-être la partie qui gère les images qui faudrait adapter aux équivalents FMX.
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  8. #8
    Membre chevronné
    Avatar de free07
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    931
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 931
    Points : 1 909
    Points
    1 909
    Par défaut
    Bonjour,

    Citation Envoyé par Paul TOTH Voir le message
    Ceci dit "Free JPDF Pascal", c'est du pur Pascal au départ, et c'est probablement facilement compatible FMX...sauf peut-être la partie qui gère les images qui faudrait adapter aux équivalents FMX.
    Je l'ai utilisé pour un projet afin de créer des rapports en pdf avec fmx mais je ne vois pas de fonction de fusion de documents pdf, peut être que cela m'a échappé...

    Il y a eu cette discussion pour la création de pdf

  9. #9
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Compatible Mac, oui, mais pour une fois cela ne m'intéresse pas ! A priori les composants TMS gèrent aussi le PDF sous Mac (pareil - lecture en diagonale).

    Je finalisais un cadeau de départ : un gestionnaire d'emploi du temps. Il est fait depuis longtemps en Lazarus (Win et Nux) mais sans interface graphique. J'ai mélangé du calcul matriciel et de l'algèbre de Bool. A l'arrivée, j'obtiens et imprime les solutions sous la forme luM1-1X34-MA-SL... [Ici, séquence, semaines, matière, enseignant] et donc je voulais "visualiser" tout cela.

    Dans mon cahier des charges, j'avais besoin :
    1. d'un fonctionnement sous Windows uniquement
    2. d'un exécutable sans dll (pour faciliter l'installation : la copie d'un poste à l'autre de l'exécutable est fréquente "ici", aussi fréquente que la perte des programmes d'installation et de leurs supports)
    3. de Grids avec des Cells Split et Merge (pour me simplifier le travail)
    4. des générations en pdf (et donc avec fusion).


    Hormis la fusion des PDF, pour la partie graphique Delphi est plus que dans le coup ! Certes il faut ajouter les grilles TMS, uniDac et FastReport (c'est le point le moins satisfaisant disons le moins ergonomique au développement). Mais une fois l'emploi du temps de chacune des classes généré en pdf, puis celui de chacun des enseignants généré en pdf, j'ai besoin de les fusionner en un seul pdf....
    ...ou alors de les imprimer en un seul document par "addition" des rapports, puis d'exporter le résultat en PDF : sous Lazarus avec PowerPdf ou/et LazReport, j'avais essayé en vain. Une méthode "minimaliste" permettait normalement de résoudre le problème de la "fusion" mais elle était buguée à l'époque ( http://forum.lazarus.freepascal.org/...html#msg103544.) Il y a peut-être une solution avec FastReport... Si j'ai le temps, je regarderai.

    Finalement, j'ai réalisé mon projet avec un autre IDE (d'où le résolu)... Il est vrai que l'exécutable a besoin de dlls pour fonctionner, mais si je copie mon exe (uniquement mon exe) d'un poste à un autre, sur ce dernier au premier lancement, il m'installe les dlls de l'environnement nécessaires par téléchargement sans que je lui demande rien d'ailleurs... et pas de driver non plus pour accéder à la base...

  10. #10
    Invité
    Invité(e)
    Par défaut
    Comme j'ai 2 petites heures à perdre en ce début d'après midi, je teste FastReport

    https://www.fast-report.com/document..._printing).htm. le problème est de savoir si cela se limite à 2 rapports ou si le principe peut être généralisé.

    Si tel est le cas, on génère tous les rapports en les concaténant comme je voulais le faire en Lazarus, et on exporte le résultat en pdf. Je teste et je poste le résultat.

    ADDENDUM 15:10
    • En VCL
      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
      begin
      //Fusion des reports
        with frxReport1 do begin
           LoadFromFile('1.fr3');
           PrepareReport;
           LoadFromFile('2.fr3');
           PrepareReport(False);
           LoadFromFile('3.fr3');
           PrepareReport(False);
           LoadFromFile('4.fr3');
           PrepareReport(False);
           ShowPreparedReport;
         end;
      //Export PDF
        frxPDFExport1.Filename := 'example.pdf';
        frxReport1.Export(frxPDFExport1);
      end;
      Cela fonctionne impeccablement. La fusion des rapports se fait correctement et l'export en PDF aussi. J'ai utilisé la dernière mise à jour XE7 : FastReport VCL 5 for RAD Studio, Delphi and C++Builder XE7 Update du 11-Nov-14
    • En FMX, avec FastReport "Delphi", cela ne fonctionne pas complètement.
      Je viens de vérifier et d'installer la mise à jour la plus récente : FastReport FMX for RAD Studio, Delphi and C++Builder XE7 du 24-Sep-14. Le composant d'exportation pdf n'est pas joint. Or il existe : https://www.fast-report.com/en/news/305/ du October 17, 2013 : New version FastReport FMX 2
      + Added PDF export for both OSX and WIn platforms including font embedding/links/outlines

    Donc pas d'export PDF avec XE7 FMX. Je trouve cela mesquin... Pourquoi les utilisateurs de Delphi FMX bénéficient-ils d'une sous-version de FastReport ? On n'est plus à quelques euros près pour bénéficier de la version complète. On y gagnerait même car la version incluse dans Delphi ne fait pas bénéficier de réduction pour l'achat de la version complète de FastReport.
    Dernière modification par Invité ; 06/07/2015 à 17h54.

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

Discussions similaires

  1. [iText] Fusion de PDF
    Par seb55555 dans le forum Documents
    Réponses: 6
    Dernier message: 17/06/2010, 11h51
  2. PDF::reuse pour la fusion de pdf
    Par PadawanInPerl dans le forum Modules
    Réponses: 2
    Dernier message: 15/02/2010, 13h22
  3. Fusion de pdf - Quelles solutions ?
    Par rivsc dans le forum Ruby
    Réponses: 8
    Dernier message: 10/12/2009, 02h52
  4. Numérotation pages sur fusion de PDF
    Par couetbis dans le forum Jasper
    Réponses: 0
    Dernier message: 20/12/2007, 19h18
  5. Fusion de PDF
    Par dehorter olivier dans le forum Delphi
    Réponses: 2
    Dernier message: 17/01/2007, 11h17

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