Dokument: Umfang, Global
Die Dokument Die API bietet Methoden zum Initialisieren einer PDF, Hinzufügen von Inhalten und Schließen der PDF. Nach dem Hinzufügen von Inhalten kann das Dokument an einen Zieldatensatz angehängt werden.
Diese API ist Teil von ServiceNowPDF-Generierungsdienstprogramme-Plugin (com.snc.apppdfgenerator) und wird in bereitgestellt sn_pdfgeneratorutils Namespace. Das Plugin ist standardmäßig aktiviert.
- Zelle – Erstellt ein Zellenobjekt als Zelle in einer Tabelle. Sie können diese API verwenden, um die Zelle zu formatieren und zusätzliche Blöcke wie Absätze und Bilder einzubeziehen.
- Farbe – Erstellt ein Farbobjekt, das zum Definieren von Farbattributen verwendet wird, die Sie auf Elemente in einer PDF anwenden können, z. B. Zellen, Tabellen und Linien.
- Bild – Erstellt ein Bildobjekt, das ein Bild und dessen Layouteinfügung in einer PDF darstellt. Aktiviert das Definieren von Attributen wie Skala, Ausrichtung und Rahmenfarbe.
- Position – Erstellt ein Zeilenobjekt mit Methoden zum Zeichnen einer Linie in einer PDF-Datei.
- Absatz – Erstellt ein Absatzobjekt, das einen Textblock in einer PDF darstellt.
- PdfSeite – Erstellt ein PdfPage-Objekt, das eine PDF-Seite und ihre Attribute darstellt, z. B. Größe, Breite und Farbe.
- Stil – Erstellt einen Stil zum Definieren von Eigenschaften wie Schriftgröße, Rahmen und Ausrichtung. Sie können denselben Stil auf mehrere Objekte gleichzeitig anwenden.
- Tabelle – Erstellt ein Tabellenobjekt, das einem PDF-Dokument hinzugefügt werden soll. Definiert die Daten, die in jeder Zelle verwendet werden sollen, und legt Stile, Ränder und Ausrichtung fest.
Das folgende Beispiel zeigt, wie Sie eine Standard-PDF mit erstellen Dokument API und mehrere Komponenten, z. B. eine Tabelle, eine Zelle und ein Absatz. Das Ergebnis ist eine Liste von Incidents aus der Tabelle „Incidents [Incident]“, die in einer PDF-Datei aufgeführt sind. Sie können dieses Beispiel in Ihrer Instanz testen, wenn Sie ersetzen <sys_id> Mit der sys_ID eines Incident-Datensatzes.
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
var whiteColor = sn_pdfgeneratorutils.Color([1,1,1]);
var greyColor = sn_pdfgeneratorutils.Color([0.8,0.8,0.8]);
var headerBgColor = new sn_pdfgeneratorutils.Color([0.4,0.6,0.8]);
// Query the Incident table
var gr = new GlideRecord("incident");
gr.query();
// declare table by providing width array and Boolean for large table
var table = new sn_pdfgeneratorutils.Table(true, [70,200], false);
var headerStyle = new sn_pdfgeneratorutils.Style;
headerStyle.setBackgroundColor(headerBgColor);
headerStyle.setTextAlignment("text-center");
headerStyle.setBold();
headerStyle.setFontColor(whiteColor);
table.setHeaderStyle(headerStyle);
var nParagraph = new sn_pdfgeneratorutils.Paragraph("Number");
var sParagraph = new sn_pdfgeneratorutils.Paragraph("Short Description");
var hdrCell1 = new sn_pdfgeneratorutils.Cell;
var hdrCell2 = new sn_pdfgeneratorutils.Cell;
hdrCell1.addParagraph(nParagraph);
hdrCell2.addParagraph(sParagraph);
table.addHeaderCell(hdrCell1);
table.addHeaderCell(hdrCell2);
var row = 0;
while(gr.next()) {
var numCell = new sn_pdfgeneratorutils.Cell;
var sdCell = new sn_pdfgeneratorutils.Cell;
var numberParagraph = new sn_pdfgeneratorutils.Paragraph(gr.number);
var sdParagraph = new sn_pdfgeneratorutils.Paragraph(gr.short_description);
numCell.addParagraph(numberParagraph);
sdCell.addParagraph(sdParagraph);
if (row % 2 == 1) {
table.setDefaultbackGroundColor(greyColor);
} else {
table.setDefaultbackGroundColor(whiteColor);
}
table.addCell(numCell);
table.addCell(sdCell);
row = row + 1;
}
document.addTable(table);
document.saveAsAttachment("incident", "<sys_id>", "SampleGenerationTest.pdf");
Der PDF-Anhang wird in der Tabelle „Anhänge“ [sys_attachment] aufgeführt.
Dokument – Dokument(PdfPage pageSize)
Instanziiert einen Dokument Objekt und generiert ein PDF-Dokument.
| Name | Typ | Beschreibung |
|---|---|---|
| pageSize | PdfSeite | PDF-Seitengröße. |
| Typ | Beschreibung |
|---|---|
| Objekt | PDF-Dokument. |
Das folgende Beispiel zeigt, wie ein erstellt wird Dokument Objekt und PDF zurückgeben.
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document(pageSize);
Dokument – addAndStartNewPage()
Fügt dem Dokument eine Seite hinzu, indem die aktuelle Seite beendet und eine neue erstellt wird.
- AddNewPage() – Fügt dem Dokument eine neue leere Seite hinzu. Verwenden Sie diese Option, um einen Seitenumbruch zu erzwingen, um ein neues Kapitel oder einen neuen Abschnitt in Ihrem Dokument zu starten.
- AddNewPageAtIndex() – Fügt eine neue Seite im angegebenen Index des Dokuments hinzu. Wenn Sie beispielsweise den Index auf 6 festlegen, wird eine Seite sechs eingefügt oder die Seite an der Position der vorhandenen Seite sechs in einem Dokument eingefügt. Die ursprüngliche Seite sechs wird zu Seite sieben.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Beispiel zeigt, wie einem Dokument eine neue Seite hinzugefügt wird. Ein Beispiel für die Dokumentnutzung finden Sie unter Dokument API.
var pageSize = new sn_pdfgeneratorutils.PdfPage("LETTER");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
var para1 = new sn_pdfgeneratorutils.Paragraph("This text lands on the first page.");
var para2 = new sn_pdfgeneratorutils.Paragraph("This text lands on the new page.");
document.addParagraph(para1);
document.addAndStartNewPage();
document.addParagraph(para2);
// save pdf as attachment to target record in the Incident table
document.saveAsAttachment("incident", "<record_sys_id>", "newPage.pdf");
Dokument – addAuthor(Zeichenfolgenautor)
Fügt dem Feld „Autor“ in PDF-Dokumenteigenschaften einen Namen hinzu.
| Name | Typ | Beschreibung |
|---|---|---|
| Autor | Zeichenfolge | Name des Autors des Dokuments. |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Beispiel zeigt, wie dem Feld „Autor“ in PDF-Dokumenteigenschaften ein Name hinzugefügt wird. Ein Beispiel für die Dokumentnutzung finden Sie unter Dokument API.
var author = "John Do";
document.addAuthor(author);
Dokument – addImage(Image)
Fügt einem Dokument ein Bild hinzu.
| Name | Typ | Beschreibung |
|---|---|---|
| Bild | Image | Bild, das einem Dokument hinzugefügt werden soll. |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Beispiel zeigt, wie einem Dokument ein Bild hinzugefügt wird. Ein Beispiel für die Dokumentnutzung finden Sie unter Dokument API.
var pageSize = new sn_pdfgeneratorutils.PdfPage("LETTER");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
// declare image using sys attachment
var image = new sn_pdfgeneratorutils.Image("<imgAttachment_sys_id>");
// add the image to the doc
document.addImage(image);
document.saveAsAttachment("incident", "<record_sys_id>", "docWithImage.pdf");
Dokument – addNewLine()
Fügt dem Dokument eine neue leere Zeile hinzu.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Beispiel zeigt, wie einem Dokument eine neue Position hinzugefügt wird. Ein Beispiel für die Dokumentnutzung finden Sie unter Dokument API.
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
document.addNewLine();
Dokument – addNewPage()
Fügt dem Dokument eine neue leere Seite hinzu. Verwenden Sie diese Option, um einen Seitenumbruch zu erzwingen, um ein neues Kapitel oder einen neuen Abschnitt in Ihrem Dokument zu starten.
- AddAndStartNewPage() – Fügt dem Dokument eine Seite hinzu, indem die aktuelle Seite beendet und eine neue erstellt wird.
- AddNewPageAtIndex() – Fügt eine neue Seite im angegebenen Index des Dokuments hinzu. Wenn Sie beispielsweise den Index auf 6 festlegen, wird eine Seite sechs eingefügt oder die Seite an der Position der vorhandenen Seite sechs in einem Dokument eingefügt. Die ursprüngliche Seite sechs wird zu Seite sieben.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Beispiel zeigt, wie einem Dokument eine neue leere Seite hinzugefügt wird. Ein Beispiel für die Dokumentnutzung finden Sie unter Dokument API.
Usage:
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
document.addNewPage();
Dokument – addNewPageAtIndex(Nummernindex)
Fügt eine neue Seite im angegebenen Index des Dokuments hinzu. Wenn Sie beispielsweise den Index auf 6 festlegen, wird eine Seite sechs eingefügt oder die Seite an der Position der vorhandenen Seite sechs in einem Dokument eingefügt. Die ursprüngliche Seite sechs wird zu Seite sieben.
- AddAndStartNewPage() – Fügt dem Dokument eine Seite hinzu, indem die aktuelle Seite beendet und eine neue erstellt wird.
- AddNewPage() – Fügt dem Dokument eine neue leere Seite hinzu. Verwenden Sie diese Option, um einen Seitenumbruch zu erzwingen, um ein neues Kapitel oder einen neuen Abschnitt in Ihrem Dokument zu starten.
| Name | Typ | Beschreibung |
|---|---|---|
| index | Nummer | Position, an der eine neue Seite eingefügt werden soll. |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Beispiel zeigt, wie eine neue PDF-Seite zu Position 6 eines Dokuments hinzugefügt wird. Ein Beispiel für die Dokumentnutzung finden Sie unter Dokument API.
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
var index = 6;
document.addNewPageAtIndex(index);
Dokument – addParagraph (Absatz)
Fügt einem Dokument einen Absatz hinzu.
| Name | Typ | Beschreibung |
|---|---|---|
| Absatz | Absatz | Textblock, der als Absatzobjekt bereitgestellt wird. |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Beispiel zeigt, wie einem Dokument ein Absatz hinzugefügt wird. Ein Beispiel für die Dokumentnutzung finden Sie unter Dokument API.
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
var para = "Lorem ipsum dolor sit amet.";
document.addParagraph(para);
Dokument – addTable(Tabellentabelle)
Fügt einem Dokument eine Tabelle hinzu.
| Name | Typ | Beschreibung |
|---|---|---|
| table | Tabelle | Tabelle, die in das Dokument eingefügt werden soll. |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Beispiel zeigt, wie einem Dokument eine Tabelle hinzugefügt wird. Siehe Tabellen-API Für weitere Details zum Definieren einer Tabelle. Ein Beispiel für die Dokumentnutzung finden Sie unter Dokument API.
var table = new sn_pdfgeneratorutils.Table([70,200], false);
document.addTable(table);
Dokument – CLOSE()
Schließt ein Dokument.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Beispiel zeigt, wie ein Dokument geschlossen wird. Ein Beispiel für die Dokumentnutzung finden Sie unter Dokument API.
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
document.close();
Dokument – createDocument(PdfPage pageSize)
Erstellt ein Dokument mit der angegebenen Seitengröße.
| Name | Typ | Beschreibung |
|---|---|---|
| pageSize | PdfSeite | Größe der Dokumentseite. |
| Typ | Beschreibung |
|---|---|
| Objekt | PDF-Dokument. |
Das folgende Beispiel zeigt, wie ein Dokument erstellt wird. Ein Beispiel für die Dokumentnutzung finden Sie unter Dokument API.
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
Dokument – getPageCount()
Ruft die Anzahl der Seiten im Dokument ab.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Nummer | Anzahl der Seiten im Dokument. |
Das folgende Beispiel zeigt, wie die Seitenanzahl eines neunseitigen Dokuments abgerufen wird. Ein Beispiel für die Dokumentnutzung finden Sie unter Dokument API.
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
var count = document.getPageCount();
gs.info("The number of pages is " + count);
Ausgabe:
The number of pages is 9
Dokument – getPageSize()
Ruft die Standardseitengröße des Dokuments ab.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Wert der Standardseitengröße, die mit festgelegt wurde PdfSeite API. Mögliche Werte:
|
Das folgende Beispiel zeigt, wie die Seitengröße eines Dokuments abgerufen wird. Ein Beispiel für die Dokumentnutzung finden Sie unter Dokument API.
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
var pagesize = document.getPageSize();
Dokument – isClosed()
Gibt an, ob ein Dokument geschlossen oder geöffnet ist.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Keine | Kennzeichnung, die angibt, ob ein Dokument geöffnet oder geschlossen ist. Gültige Werte:
Standard: Wahr |
Das folgende Beispiel zeigt, wie die Seitengröße eines Dokuments abgerufen wird. Ein Beispiel für die Dokumentnutzung finden Sie unter Dokument API.
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
var closed = document.isClosed();
Dokument – saveAsAttachment (Zeichenfolge tableName, Zeichenfolge tableSysId, Zeichenfolge Dateiname)
Hängt die Dokumentdatei an die angegebene Zieltabelle an.
| Name | Typ | Beschreibung |
|---|---|---|
| tableName | Zeichenfolge | Name der Tabelle, an die das Dokument angehängt werden soll. |
| tableSysId | Zeichenfolge | SYS_ID des Datensatzes, an den das Dokument angehängt werden soll. |
| fileName | Zeichenfolge | Name des anzuhängenden Dokuments. |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | SYS_ID des angehängten Dokuments in der Tabelle „Anhänge“ [sys_attachment]. |
Das folgende Beispiel zeigt, wie ein Dokument an einen Incident-Datensatz angehängt wird. Ein Beispiel für die Dokumentnutzung finden Sie unter Dokument API.
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
// Additional document properties
document.saveAsAttachment("incident", "<record_sys_id>", "SampleDocGeneration.pdf");
Dokument – setBaseDirection (Zeichenfolgenrichtung)
Legt die Basis-Text-Flow-Richtung fest, ab der basierend auf der Zeichenerkennung neu angeordnet werden soll
| Name | Typ | Beschreibung |
|---|---|---|
| direction | Zeichenfolge | Text-Flow-Richtung. Gültige Werte:
STANDARD: LEFT_TO_RIGHT |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Beispiel zeigt, wie der Text-Flow von links nach rechts festgelegt wird. Ein Beispiel für die Dokumentnutzung finden Sie unter Dokument API.
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
document.setBaseDirection("RIGHT_TO_LEFT");
Dokument – setMargins (Nummer oben Rand, Zahl rechts Rand, Zahl unten Rand, Zahl links Rand)
Legt die Seitenrandgrößen im Dokument fest.
| Name | Typ | Beschreibung |
|---|---|---|
| Oberer Rand | Nummer | Höhe des oberen Rands in Punkten. |
| Rechter Rand | Nummer | Breite des rechten Rands in Punkten. |
| Unterer Rand | Nummer | Höhe des unteren Rands in Punkten. |
| Linker Rand | Nummer | Breite des linken Rands in Punkten. |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Beispiel zeigt, wie Seitenränder in einem Dokument festgelegt werden. Ein Beispiel für die Dokumentnutzung finden Sie unter Dokument API.
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
document.setMargins(72,36,36,36);