Page 1 sur 1

[R] Créér un fichier PDF et le remplir avec un GUI

Posté : ven. 05 déc. 2014 09:50
par Hugues
Bonjour,

J'ai pas mal lu de sujet sur la création de fichier pdf, mais je dois dire que c'est flou pour moi...

Avant toute chose, je ne travaillerai qu'avec ADOBE (crontrainte usine...).

Ma question est peut-on créer un fichier PDF de type formulaire (comme un page HTML)?

Remplir les champs avec les données d'un GUI?

Merci par avance pour votre aide, si quelqu'un à des liens?

Re: [..] Créér un fichier PDF et le remplir avec un GUI

Posté : ven. 05 déc. 2014 12:13
par walkson
Bonjour,
Je vais, peut être, être hors sujet, mais si je devais créer un PDF, j'utiliserais Word (enregistrer sous xxx.pdf)

Re: [..] Créér un fichier PDF et le remplir avec un GUI

Posté : ven. 05 déc. 2014 13:03
par Hugues
Salut,

J'ai pensé à ça aussi, mais je ne veux pas trop passer par des applications intermédiaires... Car il faudrait que je gère si elles sont installées etc...

Pour moi le plus simple serait de récupérer les données de mon gui et de créer mon pdf en fonction...

Re: [..] Créér un fichier PDF et le remplir avec un GUI

Posté : ven. 05 déc. 2014 13:52
par Idrazil
Bonjour,
Il existe un UDF (lien: http://www.autoitscript.com/forum/topic ... plication/ ) qui permet de créer ses PDF directement avec Autoit.

Perso je l'utilise pour une de mes applis et ça marche très bien (sauf certains caractères spéciaux) :)

Re: [..] Créér un fichier PDF et le remplir avec un GUI

Posté : ven. 05 déc. 2014 14:25
par Hugues
Merci, je viens d'essayer mais ça me met l'erreur suivante:

Code : Tout sélectionner

 error: _Iif(): undefined function.
EDIT: C'est bon j'ai pas lu dans le post US qu'il fallait ajouter la fonction:

Code : Tout sélectionner

Func _Iif($fTest, $vTrueVal, $vFalseVal)
    If $fTest Then
        Return $vTrueVal
    Else
        Return $vFalseVal
    EndIf
EndFunc   ;==>_Iif
 

Re: [..] Créér un fichier PDF et le remplir avec un GUI

Posté : ven. 05 déc. 2014 21:08
par jguinch
Juste pour info, la fonction _Iif() est l'ancêtre de l'opérateur ternaire qui a débarqué depuis peu dans les dernières versions d'AutoIt. :wink:

Re: [..] Créér un fichier PDF et le remplir avec un GUI

Posté : ven. 05 déc. 2014 21:46
par walkson
Et en complément d'info _Tif se retrouve sous forme Func __Iif($fTest, $vTrue, $vFalse) dans WinApiInternals.Au3 :P

Re: [..] Créér un fichier PDF et le remplir avec un GUI

Posté : lun. 08 déc. 2014 12:56
par Hugues
Re,

Donc voilou, j'ai regardé l'UDF "MPD_UDF" qui parait bien, mais qui bug au niveau de la gestion des accents :( (c'est balot).

J'ai regardé sur la toile et j'ai trouvé une fonction _StringToPDF() qui semble ne pas poser des soucis avec les accents :D .

Mes questions sont:
-Qui a déja fait un mixte des 2?
-Quelqu'un à déjà utilisé cette UDF, si oui un p'tit exemple?

Je ne sais pas créer de rectangle, ni d'input sous Adobe avec cette UDF...

Je voudrais faire un PDF avec ce format suivant, est ce possible?

http://www.cjoint.com/14dc/DLincGdfniN_test.pdf


Merci par avance

Re: [..] Créér un fichier PDF et le remplir avec un GUI

Posté : lun. 08 déc. 2014 13:10
par Utilisateur 3309 supprimé
walkson a écrit :Bonjour,
Je vais, peut être, être hors sujet, mais si je devais créer un PDF, j'utiliserais Word (enregistrer sous xxx.pdf)
Pareil, sauf qu'Excel est plus pratique lorsqu'il s'agit "d'écrire dans des champs".

Re: [..] Créér un fichier PDF et le remplir avec un GUI

Posté : mar. 09 déc. 2014 15:55
par Hugues
Bin non lol, je ne veux pas passer par une application supplémentaire. :mrgreen: :P

Re: [..] Créér un fichier PDF et le remplir avec un GUI

Posté : mar. 09 déc. 2014 16:04
par Y01
Sans vouloir te faire drastiquement changer de direction, je tenais juste à préciser que tu pouvais créer tes PDF avec IE et ADOBE et qu'il est plus simple d'utiliser l'UDF IE.

Information du site d'Adobe.

Re: [..] Créér un fichier PDF et le remplir avec un GUI

Posté : mar. 09 déc. 2014 22:46
par walkson
Bonsoir,
Hugues a écrit :-Qui a déja fait un mixte des 2?
Cela me parait difficile car ils sont de construction différente. La solution est peut être en résolvant le bug des accents, c'est à dire en supprimant les accents (pas terrible mais facile) avec cette fonction (de Tlem)
► Afficher le texte
A intégrer dans l'UDF:

Code : Tout sélectionner

Func _DrawText($iX, $iY, $sText, $sFontAlias, $iFontSize, $iAlign = $PDF_ALIGN_LEFT, $iRotate = 0)
    Local $PI
    Local $sTeta
    Local $cTeta
    Local $C
    Local $l
    $sText = _ChaineSansAccents($sText)
.......
Cette solution permet d'utiliser MPDF_UDF pleinement comme _Draw_Rectangle pour les Inputs ou les Edits
Au sujet des Edits, il faudra incorporer des retours de ligne pourque le texte rentre dans le rectangle sans le dépasser (si le rédacteur entre son texte sans retour de ligne, le PDF aligne une ligne qui dépassera la bordure droite).
Quand à la construction du PDF, il semble que ce soit laborieux pour placer texte et rectangle à la bonne place (le haut de la page est à 28 environ et le bas vers 15 ou moins, pas testé ex: _Draw_Rectangle(9, 28, 5, 1, $PDF_STYLE_STROKED, 0, 0xFFFFFF, 0.05) pour un rectangle blanc en haut de page équivalent à un Input)
Si cela peut faire avancer ton projet...

Une idée pour formater un texte ($long = Nb de caractères avant le retour de ligne, ici 80 avec un maxi de 90) en ne coupant pas les mots.
► Afficher le texte

Re: [..] Créér un fichier PDF et le remplir avec un GUI

Posté : mer. 10 déc. 2014 12:20
par walkson
Bonjour,
Une solution plus convenable pour le bug des accents (testé avec réussite). Ci-dessous, un test style "Edit"
► Afficher le texte

Re: [..] Créér un fichier PDF et le remplir avec un GUI

Posté : mer. 10 déc. 2014 14:25
par Hugues
Ok merci à tous, merci Walkson ^^

Sujet résolu!