Dokument: Bereichsbezogen, Global
Die Dokument Die 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 von ServiceNow Plugin „PDF-Generierungsdienstprogramme“ (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-Datei anwenden können, z. B. Zellen, Tabellen und Linien.
- Bild – Erstellt ein Bildobjekt, das ein Bild und sein Layout in einer PDF-Datei darstellt. Ermöglicht das Definieren von Attributen wie Skala, Ausrichtung und Rahmenfarbe.
- Position – Erstellt ein Linienobjekt mit Methoden zum Zeichnen einer Linie in einer PDF-Datei.
- Absatz – Erstellt ein Absatzobjekt, das einen Textblock in einer PDF-Datei 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 „Incident“ [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 , um zu erzwingen, dass ein Seitenumbruch ein neues Kapitel oder einen neuen Abschnitt in Ihrem Dokument startet.
- 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 Dokumentverwendung 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 Sie dem Feld Autor in PDF-Dokumenteigenschaften einen Namen hinzufügen. Ein Beispiel für die Dokumentverwendung 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 | Bild | 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 Dokumentverwendung 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 Dokumentverwendung 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 , um zu erzwingen, dass ein Seitenumbruch ein neues Kapitel oder einen neuen Abschnitt in Ihrem Dokument startet.
- 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 Dokumentverwendung 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 , um zu erzwingen, dass ein Seitenumbruch ein neues Kapitel oder einen neuen Abschnitt in Ihrem Dokument startet.
| Name | Typ | Beschreibung |
|---|---|---|
| index | Anzahl | 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 Dokumentverwendung 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 Dokumentverwendung 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 Sie einem Dokument eine Tabelle hinzufügen. Siehe Tabellen-API Weitere Informationen zum Definieren einer Tabelle. Ein Beispiel für die Dokumentverwendung 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 Dokumentverwendung 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 Dokumentverwendung 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 |
|---|---|
| Anzahl | Anzahl der Seiten im Dokument. |
Das folgende Beispiel zeigt, wie die Seitenanzahl eines neunseitigen Dokuments abgerufen wird. Ein Beispiel für die Dokumentverwendung 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 Dokumentverwendung 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:
Standardwert: wahr |
Das folgende Beispiel zeigt, wie die Seitengröße eines Dokuments abgerufen wird. Ein Beispiel für die Dokumentverwendung 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 Dokumentverwendung 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, von 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 Dokumentverwendung 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 | Anzahl | Höhe des oberen Rands in Punkten. |
| Rechter Margin | Anzahl | Breite des rechten Rands in Punkten. |
| BottomMargin | Anzahl | Höhe des unteren Rands in Punkten. |
| Linker Rand | Anzahl | 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 Dokumentverwendung 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);