Affichage d'un fichier PDF dans un formulaire VB.NET

Les fichiers PDF ont un format de document interne qui nécessite un objet logiciel qui "comprend" le format. Étant donné que beaucoup d'entre vous ont peut-être utilisé les fonctions d'Office dans votre code VB, examinons brièvement Microsoft Word comme exemple de traitement d'un document formaté pour nous assurer que nous comprenons le concept. Si vous souhaitez travailler avec un document Word, vous devez ajouter une référence à la bibliothèque d'objets Microsoft Word 12.0 (pour Word 2007), puis instancier l'objet Application Word dans votre code.

 Dim myWord en tant que Microsoft. Bureau. Interop. Mot. ApplicationClass
'Démarrez Word et ouvrez le document.
myWord = CreateObject ("Word. Application")
ma parole. Visible = Vrai
ma parole. Documents. Ouvrir ("C: \ myWordDocument.docx")

("" doit être remplacé par le chemin d'accès réel au document pour que ce code fonctionne sur votre PC.)

Microsoft utilise la bibliothèque d'objets Word pour fournir d'autres méthodes et propriétés à votre usage. Lire l'article

instagram viewer
Interopérabilité COM -.NET dans Visual Basic pour en savoir plus sur l'interopérabilité COM d'Office.

Mais les fichiers PDF ne sont pas une technologie Microsoft. PDF - Portable Document Format - est un format de fichier créé par Adobe Systems pour l'échange de documents. Pendant des années, il était totalement propriétaire et vous deviez obtenir un logiciel capable de traiter un fichier PDF d'Adobe. Le 1er juillet 2008, le PDF a été finalisé en tant que norme internationale publiée. Désormais, tout le monde est autorisé à créer des applications qui peuvent lire et écrire des fichiers PDF sans avoir à payer de redevances à Adobe Systems. Si vous prévoyez de vendre votre logiciel, vous devrez peut-être toujours obtenir une licence, mais Adobe les fournit gratuitement. (Microsoft a créé un format différent appelé XPS basé sur XML. Le format PDF d'Adobe est basé sur Postscript. XPS est devenu une norme internationale publiée le 16 juin 2009.)

Les utilisations du PDF

Étant donné que le format PDF est un concurrent de la technologie de Microsoft, ils ne fournissent pas beaucoup de support et vous doivent obtenir un objet logiciel qui "comprend" le format PDF de quelqu'un d'autre que Microsoft en ce moment. Adobe retourne la faveur. Ils ne prennent pas très bien en charge la technologie Microsoft. Citant la dernière documentation (Acrobat 2009) d'Adobe Acrobat 9.1, "Il n'y a actuellement aucun support pour développement de plug-ins utilisant des langages gérés tels que C # ou VB.NET. "(Un" plug-in "est un logiciel à la demande composant. Le plug-in d'Adobe est utilisé pour afficher les PDF dans un navigateur. ")

Étant donné que le PDF est une norme, plusieurs sociétés ont développé un logiciel à vendre que vous pouvez ajouter à votre projet qui fera le travail, y compris Adobe. Il existe également un certain nombre de systèmes open source. Vous pouvez également utiliser les bibliothèques d'objets Word (ou Visio) pour lire et écrire des fichiers PDF, mais en utilisant ces gros systèmes pour seulement cette seule chose nécessitera une programmation supplémentaire, a également des problèmes de licence et rendra votre programme plus gros qu'il ne le doit être.

Tout comme vous devez acheter Office avant de pouvoir profiter de Word, vous devez également acheter la version complète d'Acrobat avant de pouvoir profiter de bien plus que du Reader. Vous utiliseriez le produit Acrobat complet de la même manière que les autres bibliothèques d'objets, comme Word 2007 ci-dessus, sont utilisées. Je n'arrive pas à avoir le produit Acrobat complet installé, je n'ai donc pas pu fournir d'exemples testés ici.

Comment

Mais si vous avez seulement besoin d'afficher des fichiers PDF dans votre programme, Adobe fournit un contrôle COM ActiveX que vous pouvez ajouter à la boîte à outils VB.NET. Il fera le travail gratuitement. C'est le même que vous utilisez probablement pour afficher les fichiers PDF de toute façon: le lecteur gratuit Adobe Acrobat PDF Reader.

Pour utiliser le contrôle Reader, assurez-vous d'abord d'avoir téléchargé et installé Acrobat Reader gratuit d'Adobe.

L'étape 2 consiste à ajouter le contrôle à la boîte à outils VB.NET. Ouvrez VB.NET et démarrez une application Windows standard. (La «nouvelle génération» de présentation de Microsoft, WPF, ne fonctionne pas encore avec ce contrôle. Désolé!) Pour ce faire, cliquez avec le bouton droit sur un onglet (tel que "Contrôles communs") et sélectionnez "Choisir les éléments ..." dans le menu contextuel qui apparaît. Sélectionnez l'onglet "Composants COM" et cochez la case en regard de "Adobe PDF Reader" et cliquez sur OK. Vous devriez pouvoir faire défiler la page jusqu'à l'onglet "Contrôles" dans la boîte à outils et y voir "Adobe PDF Reader".

Maintenant, faites simplement glisser le contrôle vers votre formulaire Windows dans la fenêtre de conception et redimensionnez-le de manière appropriée. Pour cet exemple rapide, je ne vais pas ajouter d'autre logique, mais le contrôle a beaucoup de flexibilité que je vous dirai comment découvrir plus tard. Pour cet exemple, je vais simplement charger un simple PDF que j'ai créé dans Word 2007. Pour ce faire, ajoutez ce code à la procédure événementielle de chargement de formulaire:

 Console. WriteLine (AxAcroPDF1.LoadFile (_
"C: \ Users \ Temp \ SamplePDF.pdf"))

Remplacez le chemin et le nom de fichier d'un fichier PDF sur votre propre ordinateur pour exécuter ce code. J'ai affiché le résultat de l'appel dans les fenêtres de sortie uniquement pour montrer comment cela fonctionne. Voici le résultat:


Cliquez ici pour afficher l'illustration
Cliquez sur le bouton Retour de votre navigateur pour revenir

Si vous souhaitez contrôler le Reader, il existe également des méthodes et des propriétés dans le contrôle. Mais les bons employés d'Adobe ont fait un meilleur travail que moi. Téléchargez le SDK Adobe Acrobat depuis leur centre de développement ( http://www.adobe.com/devnet/acrobat/). Le programme AcrobatActiveXVB du répertoire VBSamples du SDK vous montre comment naviguer dans un document, obtenir les numéros de version du logiciel Adobe que vous utilisez, et bien plus encore. Si vous n'avez pas installé le système Acrobat complet - qui doit être acheté auprès d'Adobe - vous ne pourrez pas exécuter d'autres exemples.

instagram story viewer