Passer au contenu du pied de page
UTILISATION DE IRONPDF

Comment imprimer un formulaire VB.NET en PDF

Soyons réalistes : convertir des Windows Forms en documents PDF dans VB.NET est une exigence qui revient constamment, mais le .NET Framework n'offre tout simplement pas d'impression PDF native. Vous avez besoin d'un moyen fiable pour générer des fichiers PDF à partir de rapports, enregistrer des données de formulaire, ou créer des documents imprimables.

Heureusement, IronPDF offre une solution rapide et simplifiée. Cet outil vous permet d'imprimer des formulaires dans des fichiers PDF sans les tracas des installations Adobe Reader ou de la configuration complexe de l'imprimante PDF. Cet article complet vous montrera comment le faire en quelques minutes.

Pourquoi utiliser IronPDF pour la conversion de formulaire en fichier PDF ?

IronPDF est une bibliothèque PDF .NET complète qui simplifie le processus de conversion des Windows Forms et des formulaires web (y compris les pages ASPX) en documents PDF. Contrairement aux approches traditionnelles qui reposent sur des imprimantes PDF ou des opérations de dessin complexes, IronPDF utilise un moteur de rendu Chrome pour générer des fichiers PDF avec une précision parfaite au pixel près à partir de vos projets VB .NET.

La bibliothèque gère tous les aspects de la création de contenu PDF, depuis le rendu des contrôles de formulaire jusqu'à la gestion des mises en page, ce qui la rend idéale pour les applications Windows Forms et les applications ASP.NET. Avec les capacités de conversion HTML en PDF d'IronPDF, les développeurs peuvent créer des documents professionnels efficacement. Cette ressource puissante est la clé pour accélérer le développement.

Installation d'IronPDF dans votre projet VB.NET

Commencer avec IronPDF ne prend que quelques minutes. La méthode d'installation la plus simple utilise le gestionnaire de packages NuGet dans Visual Studio :

  1. Cliquez avec le bouton droit sur votre projet dans l'Explorateur de solutions
  2. Sélectionnez "Gérer les packages NuGet"
  3. Rechercher "IronPDF"
  4. Cliquez sur Installer pour ajouter la dernière version

Alternativement, utilisez la console du gestionnaire de packages avec la commande suivante :

Install-Package IronPdf

Pour des instructions détaillées sur la configuration, visitez le lien du guide d'installation d'IronPDF. Une fois installé, ajoutez Imports IronPDF pour commencer à utiliser les fonctionnalités puissantes de la bibliothèque.

NuGet Installer avec NuGet

PM >  Install-Package IronPdf

Consultez IronPDF sur NuGet pour une installation rapide. Avec plus de 10 millions de téléchargements, il transforme le développement PDF avec C#. Vous pouvez également télécharger le DLL ou l'installateur Windows.

Conversion d'un Windows Forms en PDF : Code étape par étape

L'exemple de code suivant montre comment capturer et convertir un Windows Form en un nouvel objet PDFDocument :

Imports IronPdf
Imports System.Drawing
Imports System.Windows.Forms
Public Class Form1
    Private Sub btnPrintToPDF_Click(sender As Object, e As EventArgs) Handles btnPrintToPDF.Click
        ' Capture the form as HTML content
        Dim htmlContent As String = GenerateFormHTML()
        ' Initialize IronPDF's ChromePdfRenderer instance
        Dim renderer As New ChromePdfRenderer()
        ' Configure rendering options for better output
        renderer.RenderingOptions.MarginTop = 10
        renderer.RenderingOptions.MarginBottom = 10
        renderer.RenderingOptions.MarginLeft = 10
        renderer.RenderingOptions.MarginRight = 10
        ' Generate PDF from HTML content
        Dim pdfDocument As PdfDocument = renderer.RenderHtmlAsPdf(htmlContent)
        ' Save the PDF file
        Dim fileName As String = "FormOutput.pdf"
        pdfDocument.SaveAs(fileName)
        ' Optional: Open the generated PDF
        Process.Start(fileName)
    End Sub
    Private Function GenerateFormHTML() As String
        ' Build HTML representation of your form
        Dim html As New System.Text.StringBuilder()
        html.Append("<html><head>")
        html.Append("<style>")
        html.Append("body { font-family: Arial, sans-serif; }")
        html.Append("table { width: 100%; border-collapse: collapse; }")
        html.Append("td { padding: 8px; border: 1px solid #ddd; }")
        html.Append("</style>")
        html.Append("</head><body>")
        html.Append("<h1>Hello World</h1>")
        html.Append("<table>")
        ' Add form controls data
        For Each ctrl As Control In Me.Controls
            If TypeOf ctrl Is TextBox Then
                Dim textBox As TextBox = DirectCast(ctrl, TextBox)
                html.AppendFormat("<tr><td>{0}:</td><td>{1}</td></tr>", 
                                textBox.Name, textBox.Text)
            ElseIf TypeOf ctrl Is ComboBox Then
                Dim comboBox As ComboBox = DirectCast(ctrl, ComboBox)
                html.AppendFormat("<tr><td>{0}:</td><td>{1}</td></tr>", 
                                comboBox.Name, comboBox.Text)
            End If
        Next
        html.Append("</table>")
        html.Append("</body></html>")
        Return html.ToString()
    End Function
End Sub
Imports IronPdf
Imports System.Drawing
Imports System.Windows.Forms
Public Class Form1
    Private Sub btnPrintToPDF_Click(sender As Object, e As EventArgs) Handles btnPrintToPDF.Click
        ' Capture the form as HTML content
        Dim htmlContent As String = GenerateFormHTML()
        ' Initialize IronPDF's ChromePdfRenderer instance
        Dim renderer As New ChromePdfRenderer()
        ' Configure rendering options for better output
        renderer.RenderingOptions.MarginTop = 10
        renderer.RenderingOptions.MarginBottom = 10
        renderer.RenderingOptions.MarginLeft = 10
        renderer.RenderingOptions.MarginRight = 10
        ' Generate PDF from HTML content
        Dim pdfDocument As PdfDocument = renderer.RenderHtmlAsPdf(htmlContent)
        ' Save the PDF file
        Dim fileName As String = "FormOutput.pdf"
        pdfDocument.SaveAs(fileName)
        ' Optional: Open the generated PDF
        Process.Start(fileName)
    End Sub
    Private Function GenerateFormHTML() As String
        ' Build HTML representation of your form
        Dim html As New System.Text.StringBuilder()
        html.Append("<html><head>")
        html.Append("<style>")
        html.Append("body { font-family: Arial, sans-serif; }")
        html.Append("table { width: 100%; border-collapse: collapse; }")
        html.Append("td { padding: 8px; border: 1px solid #ddd; }")
        html.Append("</style>")
        html.Append("</head><body>")
        html.Append("<h1>Hello World</h1>")
        html.Append("<table>")
        ' Add form controls data
        For Each ctrl As Control In Me.Controls
            If TypeOf ctrl Is TextBox Then
                Dim textBox As TextBox = DirectCast(ctrl, TextBox)
                html.AppendFormat("<tr><td>{0}:</td><td>{1}</td></tr>", 
                                textBox.Name, textBox.Text)
            ElseIf TypeOf ctrl Is ComboBox Then
                Dim comboBox As ComboBox = DirectCast(ctrl, ComboBox)
                html.AppendFormat("<tr><td>{0}:</td><td>{1}</td></tr>", 
                                comboBox.Name, comboBox.Text)
            End If
        Next
        html.Append("</table>")
        html.Append("</body></html>")
        Return html.ToString()
    End Function
End Sub
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Ce extrait de code démontre plusieurs concepts clés. Premièrement, il capture les données de formulaire en parcourant les contrôles Windows Forms. Ensuite, il construit une représentation HTML avec un formatage approprié en utilisant les styles CSS. Enfin, la variante de la méthode RenderUrlAsPdf d'IronPDF, RenderHtmlAsPdf, convertit cet HTML en un document PDF avec un formatage professionnel. La méthode gère automatiquement toute la génération du contenu PDF, garantissant que vos formulaires sont représentés fidèlement dans le fichier de sortie avec le nom de fichier spécifié. Une approche similaire est utilisée lors de la création d'un nouveau document à partir d'une page web ou d'une URL.

Exemple d'interface utilisateur de Windows Forms

Comment imprimer un formulaire VB.NET en PDF : Figure 1 - Exemple de sortie de formulaire Windows

Document PDF de sortie

Comment imprimer un formulaire VB.NET en PDF : Figure 2 - Exemple de sortie PDF

Méthode alternative : Utilisation d'images pour des formulaires complexes

Pour les formulaires avec des graphiques complexes ou des dessins personnalisés, vous pouvez capturer le formulaire comme une image. L'extrait de code suivant montre cette approche :

Private Sub PrintFormAsImage()
    ' Capture form as bitmap
    Dim bitmap As New Bitmap(Me.Width, Me.Height)
    Me.DrawToBitmap(bitmap, New Rectangle(0, 0, Me.Width, Me.Height))
    ' Save bitmap to memory stream
    Dim ms As New System.IO.MemoryStream()
    bitmap.Save(ms, System.Drawing.Imaging.ImageFormat.Png)
    ' Convert image to PDF using IronPDF
    Dim pdfDocument As PdfDocument = ImageToPdfConverter.ImageToPdf(ms.ToArray())
    pdfDocument.SaveAs("FormImage.pdf")
End Sub
Private Sub PrintFormAsImage()
    ' Capture form as bitmap
    Dim bitmap As New Bitmap(Me.Width, Me.Height)
    Me.DrawToBitmap(bitmap, New Rectangle(0, 0, Me.Width, Me.Height))
    ' Save bitmap to memory stream
    Dim ms As New System.IO.MemoryStream()
    bitmap.Save(ms, System.Drawing.Imaging.ImageFormat.Png)
    ' Convert image to PDF using IronPDF
    Dim pdfDocument As PdfDocument = ImageToPdfConverter.ImageToPdf(ms.ToArray())
    pdfDocument.SaveAs("FormImage.pdf")
End Sub
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Ce code fournit une approche alternative pour les formulaires complexes. Il utilise la méthode DrawToBitmap pour capturer l'intégralité du formulaire en tant qu'image, préservant l'apparence visuelle exacte, y compris les graphiques personnalisés et les contrôles spéciaux. La classe ImageToPdfConverter assure une conversion de haute qualité de PNG ou d'autres formats d'image en PDF. Cela fournit une référence claire pour la gestion des formulaires complexes.

Impression directe de documents PDF

Une fois que vous avez généré votre fichier PDF, IronPDF prend également en charge l'impression directe :

' Print PDF to default printer
pdfDocument.Print()
' Print with specific settings
Dim printDoc As System.Drawing.Printing.PrintDocument = pdfDocument.GetPrintDocument()
printDoc.PrinterSettings.PrinterName = "My Printer"
printDoc.Print()
' Print PDF to default printer
pdfDocument.Print()
' Print with specific settings
Dim printDoc As System.Drawing.Printing.PrintDocument = pdfDocument.GetPrintDocument()
printDoc.PrinterSettings.PrinterName = "My Printer"
printDoc.Print()
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Ce code exemple montre comment imprimer des fichiers PDF directement sans les ouvrir. La première méthode envoie le document à l'imprimante par défaut, tandis que la deuxième vous permet de spécifier les paramètres de l'imprimante de manière programmatique. Pour plus de détails sur l'impression de documents PDF, consultez la documentation d'impression d'IronPDF.

Ajout de fonctionnalités professionnelles

IronPDF vous permet d'améliorer vos documents PDF avec des fonctionnalités professionnelles. Cela inclut des options d'édition avancées :

' Add headers and footers
renderer.RenderingOptions.TextHeader = New TextHeaderFooter() With {
    .CenterText = "Company Report",
    .DrawDividerLine = True
}
' Set page numbers on first page and beyond
renderer.RenderingOptions.TextFooter = New TextHeaderFooter() With {
    .RightText = "Page {page} of {total-pages}",
    .FontSize = 10
}
' Add headers and footers
renderer.RenderingOptions.TextHeader = New TextHeaderFooter() With {
    .CenterText = "Company Report",
    .DrawDividerLine = True
}
' Set page numbers on first page and beyond
renderer.RenderingOptions.TextFooter = New TextHeaderFooter() With {
    .RightText = "Page {page} of {total-pages}",
    .FontSize = 10
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Ces fonctionnalités transforment des fichiers PDF de base en documents professionnels. La bibliothèque prend en charge une personnalisation complète du contenu PDF, des en-têtes et pieds de page aux paramètres de sécurité. Découvrez plus sur les fonctionnalités PDF avancées (notez les options de personnalisation).

Sortie

Comment imprimer un formulaire VB.NET en PDF : Figure 3 - Exemple de sortie PDF avec un en-tête et un pied de page personnalisés

Conseils de dépannage courants

Lorsque vous travaillez avec la conversion des formulaires en PDF dans des applications .NET, gardez ces points à l'esprit :

  • Assurez-vous que tous les composants nécessaires du .NET Framework sont installés
  • Pour les applications web (ASPX), vérifiez les permissions IIS pour l'accès au système de fichiers
  • Utilisez le codage UTF-8 pour les caractères internationaux dans les données de formulaire (argument)
  • Testez le rendu avec différentes tailles de formulaire pour garantir une mise en page correcte
  • Stockez les fichiers PDF générés dans un répertoire de copie local approprié. Cela se produit à la fin du chargement de la conversion des données de formulaire

For additional support, consult the comprehensive IronPDF documentation or explore community solutions on Stack Overflow (post a question).

Conclusion

IronPDF transforme la tâche complexe d'imprimer des formulaires en PDF en un processus simple. Que vous construisiez des applications Windows Forms ou des formulaires web ASP.NET, la bibliothèque fournit tous les outils nécessaires pour générer des documents PDF à partir de vos projets VB.NET. C'est une ressource puissante pour tout utilisateur.

La combinaison des capacités de rendu HTML et des méthodes de capture directe des formulaires offre aux développeurs une flexibilité pour gérer divers types de formulaires et exigences. Avec le support de fonctionnalités avancées comme les en-têtes, les pieds de page et les paramètres de sécurité, IronPDF offre une solution complète pour la génération de PDF dans les applications .NET.

Prêt à utiliser IronPDF pour vos tâches d'impression de formulaire VB.NET en PDF, ou pour tout autre flux de travail PDF ? Commencez avec un essai gratuit d'IronPDF, ou explorez la documentation complète et la référence API pour découvrir plus de fonctionnalités. Pour les déploiements en production, les options de licence commencent à $799.

Téléchargez IronPDF dès aujourd'hui et transformez vos Windows Forms en documents PDF professionnels avec seulement quelques lignes de code.

Questions Fréquemment Posées

Comment puis-je convertir des formulaires Windows en PDF en utilisant VB.NET?

Vous pouvez convertir des formulaires Windows en PDF dans VB.NET en utilisant IronPDF, qui offre un moyen simple de générer des fichiers PDF à partir de vos données de formulaire.

Le .NET Framework prend-il en charge l'impression PDF nativement?

Non, le .NET Framework ne prend pas en charge l'impression PDF native. Cependant, vous pouvez utiliser IronPDF pour convertir et imprimer facilement des documents PDF à partir de formulaires Windows.

Quels sont les avantages d'utiliser IronPDF pour imprimer des formulaires?

IronPDF simplifie le processus de génération de PDF à partir de formulaires Windows, offrant des fonctionnalités comme des exemples de code, un guide d'installation et un support de dépannage robuste pour garantir une création PDF fluide.

IronPDF peut-il gérer des données de formulaire complexes en VB.NET?

Oui, IronPDF est conçu pour gérer des données de formulaire complexes, vous permettant de générer des documents PDF précis et de haute qualité à partir de vos applications VB.NET.

Existe-t-il un tutoriel disponible pour apprendre à convertir des formulaires en PDF avec VB.NET?

Oui, le guide du développeur VB.NET Print Form to PDF disponible sur le site d'IronPDF fournit un tutoriel complet, y compris des exemples de code et des conseils de dépannage.

Que dois-je faire si je rencontre des problèmes lors de la conversion de formulaires en PDF avec IronPDF?

Le guide du développeur IronPDF inclut des conseils de dépannage pour vous aider à résoudre les problèmes courants rencontrés lors de la conversion de formulaires en PDF.

IronPDF est-il entièrement compatible avec .NET 10 lors de l'impression de formulaires VB.NET au format PDF ?

Oui, IronPDF est entièrement compatible avec .NET 10. Il prend en charge les projets VB.NET et C# ciblant .NET 10, vous permettant de convertir des formulaires en PDF et de profiter des dernières améliorations de performances et d'exécution de .NET 10 sans aucune manipulation particulière.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite