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

Windows Forms Discussion :

[VB .net] Ecrire dans un formulaire PDF


Sujet :

Windows Forms

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2009
    Messages
    137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 137
    Points : 69
    Points
    69
    Par défaut [VB .net] Ecrire dans un formulaire PDF
    Bonjour,

    Je développe actuellement un progiciel pour mon entreprise, sous VB .net, utilisant les windows FORM.

    Il est régulièrement question dans l'entreprise de devoir remplir des formulaires PDF 'a la main', les formulaires ne sont pas identiques dans leurs données, mais identique dans leurs architecture. Les données que nous rentrerons dans le formulaire PDF seront identiques. J'ai donc fais un formulaire avec les champs a remplir.

    Je générais avant des fichier PDF a l'aide de iTextSharp, j'ai trouver cette page qui décrivait la procédure en C#. Malheureusement, je n'obtenais pas tout a fais les mêmes résultats que sur l'exemple donné (probablement du a ma mauvaise transition entre les deux langages), alors que la fonction présenté est exactement ce que je cherche faire.

    J'ai aussi trouver pas mal de topic existant, mais beaucoup d'entre eux commence a accuser leurs ages, et si j'ai bien lu, la version d'Adobe change pas mal de chose.

    C'est donc a vous que je m'en remets, j'ai auparavant utiliser iTextSharp, je préférais donc continuer son utilisation, mais avant tout l'objectif est de remplir cette fonction.

    Merci a tous vos futurs réponses !

  2. #2
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2009
    Messages
    137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2009
    Messages : 137
    Points : 69
    Points
    69
    Par défaut
    Finalement resolu mon souci avec le code C#.

    Voila la solution pour ceux qui serais coincé comme je l'ai été :

    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
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
     
     
    Imports iTextSharp.text.pdf
    Imports System.Text
    Imports System.IO
     
    Public Class DICTGen
     
        Dim newFile As String = "CheminDuNouveauFichierPDF\NouveauFichierPDF.pdf"
     
        Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
            ListFieldNames()
            FillForm()
            Process.Start(newFile)
        End Sub
     
        Private Sub FillForm()
            Dim pdfTemplate As String = txtPath.Text
            Dim NomChamps As String
     
            Dim pdfReader As New PdfReader(pdfTemplate)
            Dim pdfStamper As New PdfStamper(pdfReader, New FileStream( _
                newFile, FileMode.Create))
            Dim pdfFormFields As AcroFields = pdfStamper.AcroFields
     
            For Each item In ListBox1.Items
                NomChamps = Replace(item, ", iTextSharp.text.pdf.AcroFields+Item]", "")
                NomChamps = Replace(NomChamps, "[", "")
                pdfFormFields.SetField(NomChamps, "Valeur")
            Next
     
            pdfStamper.FormFlattening = True
            pdfStamper.Close()
        End Sub
     
     
        Private Sub ListFieldNames()
            Dim pdfTemplate As String = txtPath.Text
            Dim pdfReader As PdfReader = New PdfReader(pdfTemplate)
            Dim sb As New StringBuilder()
     
            For Each de In pdfReader.AcroFields.Fields
                ListBox1.Items.Add(de.ToString)
            Next
        End Sub
     
     
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            With OpenFileDialog1
                .Title = "DICT"
                .FileName = ""
            End With
     
            Dim res As DialogResult
            res = OpenFileDialog1.ShowDialog()
            If res = Windows.Forms.DialogResult.OK Then
                txtPath.Text = OpenFileDialog1.FileName
            End If
        End Sub
    End Class

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

Discussions similaires

  1. [VB.NET] Ecrire dans un champs texte ecrit en HTML
    Par mael94420 dans le forum ASP.NET
    Réponses: 4
    Dernier message: 12/10/2006, 19h01
  2. [VB.NET] Ecrire dans EXCEL 2002 depuis VB.net
    Par vijeo dans le forum Windows Forms
    Réponses: 4
    Dernier message: 13/06/2006, 13h09
  3. [VB.net]ecrire dans un fichier text
    Par grand_prophete dans le forum Windows Forms
    Réponses: 12
    Dernier message: 04/05/2006, 16h37
  4. <xml><asp.net> Ecrire dans un fichier xml
    Par kenkine dans le forum XML/XSL et SOAP
    Réponses: 1
    Dernier message: 24/03/2006, 11h17
  5. [VB.NET] Ecrire dans un fichier texte...
    Par robert.michel9 dans le forum VB.NET
    Réponses: 5
    Dernier message: 04/12/2005, 14h35

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