Anzeigen einer PDF-Datei in einem VB.NET-Formular

click fraud protection

PDF-Dateien haben ein internes Dokumentformat, für das ein Softwareobjekt erforderlich ist, das das Format "versteht". Da viele von Ihnen möglicherweise die Funktionen von Office in Ihrem VB-Code verwendet haben, betrachten wir kurz Microsoft Word als Beispiel für die Verarbeitung eines formatierten Dokuments, um sicherzustellen, dass wir das Konzept verstehen. Wenn Sie mit einem Word-Dokument arbeiten möchten, müssen Sie einen Verweis auf die Microsoft Word 12.0-Objektbibliothek (für Word 2007) hinzufügen und dann das Word-Anwendungsobjekt in Ihrem Code instanziieren.

 Dim myWord As Microsoft. Büro. Interop. Wort. ApplicationClass
'Starten Sie Word und öffnen Sie das Dokument.
myWord = CreateObject ("Word. Anwendung")
mein Wort. Sichtbar = Richtig
mein Wort. Unterlagen. Öffnen Sie ("C: \ myWordDocument.docx")

("" muss durch den tatsächlichen Pfad zum Dokument ersetzt werden, damit dieser Code auf Ihrem PC funktioniert.)

Microsoft verwendet die Word-Objektbibliothek, um andere Methoden und Eigenschaften für Ihre Verwendung bereitzustellen. Lesen Sie den Artikel

instagram viewer
COM-.NET-Interoperabilität in Visual Basic um mehr über Office COM Interop zu erfahren.

PDF-Dateien sind jedoch keine Microsoft-Technologie. PDF - Portable Document Format - ist ein Dateiformat, das von Adobe Systems für den Dokumentenaustausch erstellt wurde. Es war jahrelang völlig proprietär und man musste Software bekommen, die eine PDF-Datei von Adobe verarbeiten konnte. Am 1. Juli 2008 wurde PDF als veröffentlichter internationaler Standard fertiggestellt. Jetzt kann jeder Anwendungen erstellen, die PDF-Dateien lesen und schreiben können, ohne Lizenzgebühren an Adobe Systems zahlen zu müssen. Wenn Sie vorhaben, Ihre Software zu verkaufen, müssen Sie möglicherweise noch eine Lizenz erwerben, Adobe stellt diese jedoch lizenzgebührenfrei zur Verfügung. (Microsoft hat ein anderes Format namens XPS erstellt, das auf XML basiert. Das PDF-Format von Adobe basiert auf Postscript. XPS wurde am 16. Juni 2009 zu einem veröffentlichten internationalen Standard.)

Die Verwendung von PDF

Da das PDF-Format ein Konkurrent der Microsoft-Technologie ist, bieten sie und Sie nicht viel Unterstützung Sie müssen ein Softwareobjekt erhalten, das das PDF-Format gerade von einer anderen Person als Microsoft "versteht". Adobe erwidert den Gefallen. Sie unterstützen die Microsoft-Technologie auch nicht so gut. Zitat aus der neuesten (Oktober 2009) Adobe Acrobat 9.1-Dokumentation: "Es gibt derzeit keine Unterstützung für die Entwicklung von Plug-Ins mit verwalteten Sprachen wie C # oder VB.NET. "(Ein" Plug-In "ist eine On-Demand-Software Komponente. Das Plug-In von Adobe wird verwendet, um PDFs in einem Browser anzuzeigen. ")

Da PDF ein Standard ist, haben mehrere Unternehmen Software zum Verkauf entwickelt, die Sie Ihrem Projekt hinzufügen können, um die Aufgabe zu erledigen, einschließlich Adobe. Es gibt auch eine Reihe von Open-Source-Systemen. Sie können auch die Word-Objektbibliotheken (oder Visio-Objektbibliotheken) zum Lesen und Schreiben von PDF-Dateien verwenden, diese großen Systeme jedoch nur verwenden Diese eine Sache erfordert zusätzliche Programmierung, hat auch Lizenzprobleme und macht Ihr Programm größer als nötig Sein.

So wie Sie Office kaufen müssen, bevor Sie Word nutzen können, müssen Sie auch die Vollversion von Acrobat kaufen, bevor Sie mehr als nur den Reader nutzen können. Sie würden das vollständige Acrobat-Produkt ungefähr so ​​verwenden, wie andere Objektbibliotheken wie Word 2007 oben verwendet werden. Ich habe nicht das vollständige Acrobat-Produkt installiert, daher konnte ich hier keine getesteten Beispiele bereitstellen.

Wie man

Wenn Sie jedoch nur PDF-Dateien in Ihrem Programm anzeigen müssen, bietet Adobe ein ActiveX COM-Steuerelement an, das Sie der VB.NET Toolbox hinzufügen können. Es wird den Job kostenlos machen. Es ist das gleiche, mit dem Sie wahrscheinlich ohnehin PDF-Dateien anzeigen: der kostenlose Adobe Acrobat PDF Reader.

Um das Reader-Steuerelement zu verwenden, stellen Sie zunächst sicher, dass Sie den kostenlosen Acrobat Reader von Adobe heruntergeladen und installiert haben.

Schritt 2 besteht darin, das Steuerelement zur VB.NET Toolbox hinzuzufügen. Öffnen Sie VB.NET und starten Sie eine Standard-Windows-Anwendung. (Microsofts "Next Generation" der Präsentation, WPF, funktioniert mit diesem Steuerelement noch nicht. Entschuldigung!) Klicken Sie dazu mit der rechten Maustaste auf eine Registerkarte (z. B. "Allgemeine Steuerelemente") und wählen Sie im angezeigten Kontextmenü die Option "Elemente auswählen ...". Wählen Sie die Registerkarte "COM-Komponenten", aktivieren Sie das Kontrollkästchen neben "Adobe PDF Reader" und klicken Sie auf "OK". Sie sollten in der Toolbox zur Registerkarte "Steuerelemente" scrollen und dort den "Adobe PDF Reader" sehen können.

Ziehen Sie nun das Steuerelement einfach auf Ihr Windows Form im Entwurfsfenster und passen Sie es entsprechend an. In diesem kurzen Beispiel werde ich keine andere Logik hinzufügen, aber das Steuerelement verfügt über eine große Flexibilität, über die Sie später erfahren werden. In diesem Beispiel lade ich nur eine einfache PDF-Datei, die ich in Word 2007 erstellt habe. Fügen Sie dazu diesen Code zum Formular Ereignisereignis laden hinzu:

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

Ersetzen Sie den Pfad und den Dateinamen einer PDF-Datei auf Ihrem eigenen Computer, um diesen Code auszuführen. Ich habe das Ergebnis des Aufrufs nur in den Ausgabefenstern angezeigt, um zu zeigen, wie das funktioniert. Hier ist das Ergebnis:


Klicken Sie hier, um die Abbildung anzuzeigen
Klicken Sie in Ihrem Browser auf die Schaltfläche Zurück, um zurückzukehren

Wenn Sie den Reader steuern möchten, gibt es auch im Steuerelement Methoden und Eigenschaften dafür. Aber die guten Leute bei Adobe haben einen besseren Job gemacht als ich. Laden Sie das Adobe Acrobat SDK von ihrem Entwicklercenter herunter ( http://www.adobe.com/devnet/acrobat/). Das AcrobatActiveXVB-Programm im VBSamples-Verzeichnis des SDK zeigt Ihnen, wie Sie in einem Dokument navigieren, die Versionsnummern der von Ihnen verwendeten Adobe-Software abrufen und vieles mehr. Wenn Sie nicht das vollständige Acrobat-System installiert haben, das von Adobe erworben werden muss, können Sie keine anderen Beispiele ausführen.

instagram story viewer