PDF per DataSection einlese und Anzeigen

Für allgemeine Fragen zur Programmierung mit PureBasic.
Benutzeravatar
kunstlust
Beiträge: 259
Registriert: 12.04.2012 23:47
Wohnort: Hannover
Kontaktdaten:

PDF per DataSection einlese und Anzeigen

Beitrag von kunstlust »

Ich möchte gerne eine Hilfe in Form eines PDF einlesen und bin mir nicht so sicher ob die Datasection der richtige Weg ist.
Ich würde gerne eine Exe Erzeugen, die das PDF mitbringt, danach könnte das PDF auch in Temp geschrieben werden und per RunProgram... aufgerufen werden, welche Vorgehensweise würdet Ihr dafür empfehlen? Ist die Datasection und IncludeBinary der richtigen Weg? Nur wie bekomme ich das File wieder auf die Platte? Oder ist das der falsche Ansatz?
Danke für einen Ansatz und eine Beispiel, ich habe nicht rechte gefunden :cry:
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7039
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Re: PDF per DataSection einlese und Anzeigen

Beitrag von STARGÅTE »

Das ist "ein" richtiger Ansatz (gibt ja noch andere).

Die DataSection sieht dann so aus:

Code: Alles auswählen

DataSection
	MyPDF:
	IncludeBinary "MyPDF.pdf"
	EndMyPDF:
EndDataSection
Und wenn jemand das PDF angezeigt haben will (zB durch einen Button-Klick):

Code: Alles auswählen

Case #MyButton
	If CreateFile(#File, GetTemporaryDirectory()+"MyPDF.pdf")
		WriteData(#File, ?MyPDF, ?EndMyPDF-?MyPDF)
		CloseFile(#File)
	EndIf
	RunProgram(GetTemporaryDirectory()+"MyPDF.pdf")
Hier könnte man noch zusätzlich abfragen, ob das PDF schon in den Temps liegt, damit nicht erneut erstellt werden muss.
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Benutzeravatar
kunstlust
Beiträge: 259
Registriert: 12.04.2012 23:47
Wohnort: Hannover
Kontaktdaten:

Re: PDF per DataSection einlese und Anzeigen

Beitrag von kunstlust »

Super Danke STARGÅTE, so habe ich mir das gedacht, wusste nur nicht genau wie es geht, aber durch deine Hilfe, ist es ja ganz einfach. :D
Antworten