Dokument – bereichsbezogen, global
Die Document API bietet Methoden zum Initialisieren einer PDF-Datei, zum Hinzufügen von Inhalten und zum Schließen der PDF-Datei. Nach dem Hinzufügen von Inhalten kann das Dokument an einen Zieldatensatz angehängt werden.
Diese API ist Teil des Plugins ServiceNow PDF Generation Utilities (com.snc.apppdfgenerator) und wird im Namespace sn_pdfgeneratorutils bereitgestellt. 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 hinzuzufügen.
- Farbe – Erstellt ein Farbobjekt, das zum Definieren von Farbattributen verwendet wird, die Sie auf Elemente in einer PDF-Datei anwenden können. wie Zellen, Tabellen und Zeilen.
- Bild – Erstellt ein Image-Objekt, das ein Bild darstellt, und dessen Layout in eine PDF-Datei einfügt. Ermöglicht die Definition von Attributen wie Skalierung, Ausrichtung und Rahmenfarbe.
- Linie – Erstellt ein Linienobjekt mit Methoden, um eine Linie in einer PDF-Datei zu zeichnen.
- Absatz – Erstellt ein Absatzobjekt, das einen Textblock in einer PDF-Datei darstellt.
- PdfPage – Erstellt ein PdfPage-Objekt, das eine PDF-Seite und ihre Attribute darstellt; wie 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 in jeder Zelle zu verwendenden Daten und legt Stile, Ränder und Ausrichtung fest.
Das folgende Beispiel zeigt, wie Sie mit der Dokument -API und mehreren Komponenten, z. B. einer Tabelle, einer Zelle und einem Absatz, eine einfache PDF-Datei erstellen. Das Ergebnis ist eine Liste von Incidents aus der Tabelle „Incident“ [incident], die in einer PDF-Datei aufgelistet 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.
Document – Document(PdfPage pageSize)
Instanziiert ein Dokumentobjekt und generiert ein PDF-Dokument.
| Name | Typ | Beschreibung |
|---|---|---|
| pageSize | PDF-Seite | PDF-Seitengröße. |
| Typ | Beschreibung |
|---|---|
| Objekt | PDF-Dokument. |
Das folgende Beispiel zeigt, wie ein Dokumentobjekt erstellt und eine PDF-Datei zurückgegeben wird.
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 Seite 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 beginnen.
- addNewPageAtIndex() – Fügt eine neue Seite am angegebenen Index des Dokuments hinzu. Wenn Sie beispielsweise den Index auf 6 festlegen, wird Seite sechs eingefügt oder die Seite wird 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 Sie einem Dokument eine neue Seite hinzufügen. Ein Beispiel für die Verwendung von Dokumenten finden Sie unter Document 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");
Document – addAuthor(Stringauthor)
Fügt dem Feld „Autor“ in den PDF-Dokumenteigenschaften einen Namen hinzu.
| Name | Typ | Beschreibung |
|---|---|---|
| Autor | Zeichenfolge | Name des Autors des Dokuments. |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Beispiel zeigt, wie Sie dem Feld „Autor“ in den PDF-Dokumenteigenschaften einen Namen hinzufügen. Ein Beispiel für die Verwendung von Dokumenten finden Sie unter Document API.
var author = "John Do";
document.addAuthor(author);
Document – addImage(Image image)
Fügt ein Bild zu einem Dokument hinzu.
| Name | Typ | Beschreibung |
|---|---|---|
| Bild | Bild | Bild, das einem Dokument hinzugefügt werden soll. |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Beispiel zeigt, wie Sie einem Dokument ein Bild hinzufügen. Ein Beispiel für die Verwendung von Dokumenten finden Sie unter Document 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 Sie einem Dokument eine neue Zeile hinzufügen. Ein Beispiel für die Verwendung von Dokumenten finden Sie unter Document 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 beginnen.
- addAndStartNewPage()– Fügt dem Dokument eine Seite hinzu, indem die aktuelle Seite beendet und eine neue Seite erstellt wird.
- addNewPageAtIndex() – Fügt eine neue Seite am angegebenen Index des Dokuments hinzu. Wenn Sie beispielsweise den Index auf 6 festlegen, wird Seite sechs eingefügt oder die Seite wird 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 Sie einem Dokument eine neue leere Seite hinzufügen. Ein Beispiel für die Verwendung von Dokumenten finden Sie unter Document API.
Usage:
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
document.addNewPage();
Document – addNewPageAtIndex(Number index)
Fügt eine neue Seite am angegebenen Index des Dokuments hinzu. Wenn Sie beispielsweise den Index auf 6 festlegen, wird Seite sechs eingefügt oder die Seite wird 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 Seite 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 beginnen.
| 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 an Position 6 eines Dokuments hinzugefügt wird. Ein Beispiel für die Verwendung von Dokumenten finden Sie unter Document API.
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
var index = 6;
document.addNewPageAtIndex(index);
Dokument – addParagraph(Paragraph paragraph)
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 Sie einem Dokument einen Absatz hinzufügen. Ein Beispiel für die Verwendung von Dokumenten finden Sie unter Document 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);
Document – addTable(Table table)
Fügt einem Dokument eine Tabelle hinzu.
| Name | Typ | Beschreibung |
|---|---|---|
| Tabelle | Tabelle | Tabelle, die in das Dokument eingefügt werden soll. |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Beispiel zeigt, wie Sie einem Dokument eine Tabelle hinzufügen. Weitere Informationen zum Definieren einer Tabelle finden Sie in der Tabellen- API. Ein Beispiel für die Verwendung von Dokumenten finden Sie unter Document 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 Verwendung von Dokumenten finden Sie unter Document API.
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
document.close();
Document – createDocument(PdfPage pageSize)
Erstellt ein Dokument mit der angegebenen Seitengröße.
| Name | Typ | Beschreibung |
|---|---|---|
| pageSize | PDF-Seite | Dokumentseitengröße. |
| Typ | Beschreibung |
|---|---|
| Objekt | PDF-Dokument. |
Das folgende Beispiel zeigt, wie ein Dokument erstellt wird. Ein Beispiel für die Verwendung von Dokumenten finden Sie unter Document API.
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
Document – 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 Verwendung von Dokumenten finden Sie unter Document 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
Document – getPageSize()
Ruft die Standardseitengröße des Dokuments ab.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Wert der Standardseitengröße, der mit der PdfPage- API festgelegt wird. Mögliche Werte:
|
Das folgende Beispiel zeigt, wie die Seitengröße eines Dokuments ermittelt wird. Ein Beispiel für die Verwendung von Dokumenten finden Sie unter Document 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:
Standardwert: true |
Das folgende Beispiel zeigt, wie die Seitengröße eines Dokuments ermittelt wird. Ein Beispiel für die Verwendung von Dokumenten finden Sie unter Document API.
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
var closed = document.isClosed();
Dokument – saveAsAttachment(String tableName, String tableSysId, String fileName)
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 Verwendung von Dokumenten finden Sie unter Document API.
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
// Additional document properties
document.saveAsAttachment("incident", "<record_sys_id>", "SampleDocGeneration.pdf");
Document – setBaseDirection(String gerichtet)
Legt die Basistextflussrichtung so fest, dass sie basierend auf der Zeichenerkennung neu angeordnet wird
| Name | Typ | Beschreibung |
|---|---|---|
| direction | Zeichenfolge | Textflussrichtung. Gültige Werte:
Standard: LEFT_TO_Right |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Beispiel zeigt, wie der Textfluss von links nach rechts festgelegt wird. Ein Beispiel für die Verwendung von Dokumenten finden Sie unter Document API.
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
document.setBaseDirection("RIGHT_TO_LEFT");
Dokument – setMargins(Number topMargin, Number rightMargin, Number BottomMargin, Number leftMargin)
Legt die Seitenrandgrößen im Dokument fest.
| Name | Typ | Beschreibung |
|---|---|---|
| topMargin | Nummer | Höhe des oberen Rands in Punkten. |
| rightMargin | Nummer | Breite des rechten Rands in Punkten. |
| unterer Rand | Nummer | Höhe des unteren Rands in Punkten. |
| leftMargin | 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 Verwendung von Dokumenten finden Sie unter Document API.
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
document.setMargins(72,36,36,36);