Usage of PDF24 Javascript PDF API

Index

Allgemein

PDF24.org bietet einen kostenlosen Service zur Erstellung von PDF Dateien. Diese Javascript PDF API ist ein Interface zu diesem Service.
The API wurde für artikelbasierte Internetsysteme wie Blogs, Foren und Wiki-Systemen entwickelt, um in diesen Systemen PDF Dateien erstellen zu können. Entwickler von Blogs, Foren und Wiki-Systemen können diese API benutzen und in ihr Sysrem integrieren, um den Benutzern die Möglichkeit zu geben, sich eine Kopie eines Artikel oder mehrerer Artikel zukommen zu lassen.

Link zur API

Die API ist unter folgendem dem Link http://doc2pdf.pdf24.org/js/api.js erreichbar. Sie können die API herunterladen oder aber auch direkt verlinken.

Klassenreferenz

Es gibt zwei Javascript Klassen welche für die PDF-Erstellung wichtig sind. Die Klasse PDF24Doc beinhaltet allgemeine Eigenschaften einer PDF (Titel, Seitenformat, ...) und stellt Methoden bereit, diese allgemeinen Eigenschaften zu setzen und abzufragen. Ebenfalls beinhaltet diese Klasse Methoden, um ein oder mehrere Elemente in die PDF einzufügen.
Die Klasse PDF24Element repräsentiert ein Element innerhalb eines PDF24Doc. Ein PDF24Element ist ein Container für Daten wie Titel, Inhalt und Author.

Die folgende Darstellung verdeutlicht den Zusammenhang:
PDF24Doc
PDF24Element 1
PDF24Element 2
PDF24Element 3

Klasse PDF24Doc

Parameter

charset
Der Zeichensatz des Dokuments. Standardwert ist ISO-8859-1. Aktuell unterstützte Zeichensätze sind ISO-8859-1 und UTF-8.
headline
Die Überschrift des Dokuments.
headlineUrl
Die URL, die zusammen mit headline einen Link bildet.
baseUrl
Die baseUrl des Dokuments. Diese URL ist bei der Verwendung von relativen Links in Elementen sehr wichtig, um die relativen Links korrekt auflösen zu können.
filename
Der Dateiname der zu erstellenden PDF Datei z.b. meinePDF.
pageSize
Die Größe einer jeden Seite innerhalb der PDF. Die Seitengröße wird in der Form WIDTHxHEIGHT kodiert, wobei WIDTH die Weite und HEIGHT die Höhe einer Seite in mm angibt. Der Standardwert beinhaltet eine Weite von 210mm und eine Höhe von 297mm, was dem A4 Format entspricht.
emailTo
Speichert eine oder mehrere Email Adressen durch Semikolon getrennt. Diese Email Adressen sind die Empfänger der zu erstellenden PDF.
emailFrom
Dieses Feld ist für den Emailadresse des API-Benutzers vorgesehen. Diese Adresse erscheint als FROM Adresse in gesendeten Emails mit der erstellten PDF.
emailSubject
Diese Variable speichert den Betreff der Email mit der PDF.
emailBody
Dies ist der Inhaltstext der Email mit der PDF. Es wird normaler Text sowie HTML formatierter Text unterstützt.
emailBodyType
In dieser Variable wird der Typ von emailBody vermerkt. Gültige Werte sind text und html.
emailCharset
Dieser Parameter speichert den Zeichensatz der Email. Aktuell unterstützte Zeichensätze sind ISO-8859-1 und UTF-8.

Konstruktoren

PDF24Doc()
Erstellt eine leere Instanz eines PDF-Dokuments. Durch die Verwendung der setXX muss Inhalt in das Dokument eingefügt werden.
PDF24Doc(params)
Erstellt eine Instanz eines Dokuments und initialisiert die Parameter mit den Parametern in params.

Methoden

addElement(element)
Fügt das Element element zum PDF Dokument hinzu.
setParam(paramKey, paramValue)
Setzt ein Parameter mit dem Schlüssel paramKey und dem Wert paramValue.
getParam(paramKey)
Gibt den Wert eines Parameters mit dem Schlüssel paramKey zurück.
setCharset(charset)
Setzt den Zeichensatz charset im Dokument.
setHeadline(headline)
Setzt die Überschrift headline im Dokument.
setHeadlineUrl(headlineUrl)
Setzt die URL der Überschrift zu headlineUrl.
setBaseUrl(baseUrl)
Setzt die Basisadresse des Dokuments zur Auflösung von relativen Links zu baseUrl.
setFilename(filename)
Setzt den Dateiname der PDF zu filename.
setPageSize(width, height)
Speichert die Seitengröße width, height unter dem Parameter pageSize.
setEmailTo(emailAddr)
Speichert die Emailadresse emailAddr als Empfänger der PDF.
addEmailTo(emailAddr)
Fügt die Emailadresse emailAddr dem Dokument als Empfänger hinzu.
setEmailFrom(emailAddr)
Setzt den Parameter emailFrom im Dokument.
setEmailSubject(subject)
Setzt den Betreff der Email mit der PDF zu emailSubject.
setEmailBodyType(bodyType)
Setzt den Content-Type des Email-Body zu emailBodyType. Gültige Werte sind text oder html.
setEmailBody(body)
Setzt den Email Body der Email mit der erstellten PDF Datei.
setEmailCharset(charset)
Setzt den Zeichensatz der Email mit der erstellten PDF.
create()
Diese Methode packt alle gegebenen Parameter in ein HTML-Formular und übermittelt dieses in einem Popup-Fenster an den kostenlosen PDF Erstellungsservice von PDF24.org. Dieser Service prüft die Parameter und erstellt daraufhin die PDF Datei. Status-Meldungen werden im Popup-Fenster ausgegeben.

Klasse PDF24Element

Parameter

title
Der Titel des Elements.
url
Die URL des Elements. Titel und URL bilden einen Link.
author
Der Author von Inhalt des Elements.
dateTime
Ein Zeitstempel, ein Zeit und Datumswert oder nur ein Zeit oder ein Datumswert. Jede Kombination ist erlaubt.
body
Der Inhalt des Elements. Kann normaler sowie HTML formatiertet Text sein.

Konstruktoren

PDF24Element()
Erstellt ein leeres Element. Über die setXX Methoden können dem Element Parameter angefügt werden.

Methoden

setTitle(title)
Setzt den Titel Parameter des Elements zu title.
setUrl(url)
Setzt den url Parameter des Elements. URL und Titel bilden einen Link in der PDF.
setAuthor(author)
Setzt den author Parameter des Elements.
setDateTime(dateTime)
Setzt den dateTime Parameter im Element.
setBody(body)
Setzt den Inhalt des Elements zu body. body kann normaler als auch HTML formatierter Text sein.

Codebeispiele

Binde zuerst die Javascript PDF API in die HTML-Seite ein, indem die folgende Codezeile zugefügt wird:

<script type="text/javascript" src="http://doc2pdf.pdf24.org/js/api.js"></script>

Beispiel 1

/*
* Erstelle ein PDF Dokuemnt und setze Parameter
*/
var doc = new PDF24Doc();
doc.setCharset("UTF-8");
doc.setHeadline("Die ist die Überschrift der PDF");
doc.setHeadlineUrl("http://www.pdf24.org");
doc.setBaseUrl("http://www.pdf24.org");
doc.setFilename("test");
doc.setPageSize(210, 297);

doc.setEmailTo("stefanz@pdf24.org");
doc.setEmailFrom("stefanz@pdf24.org");
doc.setEmailSubject("Hier ist deine erstellte PDF Datei");
doc.setEmailBody("Die erstellte PDF Datei befindet sich im Anhang dieser Email!");
doc.setEmailBodyType("text");

/*
* Create one or more elements
*/
var element = new PDF24Element();
element.setTitle("Dies ist ein Titel");
element.setUrl("http://www.pdf24.org");
element.setAuthor("Stefan Ziegler");
element.setDateTime("2010-04-15 8:00");
element.setBody("Das ist der Text des Beitrags");

/*
* Element dem Dokument zufügen
*/
doc.addElement(element);

/*
* Die PDF erstellen
*/
doc.create();

Beispiel 2

/*
* Dokument mit Parameter erstellen
*/
var doc = new PDF24Doc({
	charset : "UTF-8",
	headline : "Das ist eine Headline",
	headlineUrl : "http://www.pdf24.org",
	baseUrl : "http://www.pdf24.org",
	filename : "test",
	pageSize : "210x297"
	emailTo : "stefanz@pdf24.org",
	emailFrom : "stefanz@pdf24.org",
	emailSubject: "Hier ist deine erstellte PDF Datei",
	emailBody: "Die erstellte PDF Datei befindet sich im Anhang dieser Email!"
	emailBodyType: "text"
});

/*
* Ein Element direkt der PDF zufügen, ohne PDF24Element zu benutzen.
*/
doc.addElement({
	title : "Das ist ein Titel",
	url : "http://www.pdf24.org",
	author : "Stefan Ziegler",
	dateTime : "2010-04-15 8:00",
	body : "Das ist der Text des Beitrags"
});

/*
* PDF erstellen
*/
doc.create();

Test der Javascript PDF API

Mit diesem kleinen Formular kann man die Javascript PDF API testen. Füllen sie einfach das Formular aus und drücken sie den PDF erstellen Button. Die erstellte PDF wird an die eingetragene Emailadresse gesendet.
Dokument Parameter
Zeichensatz
Überschrift
URL zur Überschrift
BaseUrl
Dateiname
Seitegröße
Email Parameter
Email senden an
Email gesendet von
Betreff der Email
Typ der Email
Text der Email
Element
Titel
Url
Author
Zeitstempel
Inhalt