Dokument: bereichsbezogen, global
Die Dokumenten -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 Inhalt kann das Dokument an einen Zieldatensatz angehängt werden.
Diese API ist Teil des Plugins ServiceNow PDF Generierung 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 Bildobjekt, das ein Bild und dessen Layout in einer PDF-Datei einfügt. Ermöglicht das Definieren von Attributen wie Skala, Ausrichtung und Rahmenfarbe.
- Zeile – Erstellt ein Linienobjekt mithilfe von Methoden zum Zeichnen einer Linie in einer PDF-Datei.
- 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 Incident-Tabelle [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.
Dokument: 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 Sie ein Document- Objekt erstellen und eine PDF-Datei 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 einen Seitenumbruch zu erzwingen und 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 setzen, wird eine Seite sechs eingefügt oder die Seite wird an der Position der vorhandenen Seite sechs in ein 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 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(Zeichenfolgeautor)
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 dem Feld „Autor“ in den PDF-Dokumenteigenschaften ein Name hinzugefügt wird. Ein Beispiel für die Dokumentverwendung finden Sie unter Dokument -API.
var author = "John Do";
document.addAuthor(author);
Dokument – addImage(Image 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 Sie einem Dokument ein Bild hinzufügen. 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 Sie einem Dokument eine neue Zeile hinzufügen. 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 einen Seitenumbruch zu erzwingen und 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 erstellt wird.
- addNewPageAtIndex() – Fügt eine neue Seite am angegebenen Index des Dokuments hinzu. Wenn Sie beispielsweise den Index auf 6 setzen, wird eine Seite sechs eingefügt oder die Seite wird an der Position der vorhandenen Seite sechs in ein 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 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 am angegebenen Index des Dokuments hinzu. Wenn Sie beispielsweise den Index auf 6 setzen, wird eine Seite sechs eingefügt oder die Seite wird an der Position der vorhandenen Seite sechs in ein 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 einen Seitenumbruch zu erzwingen und 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 an Position 6 eines Dokuments eine neue PDF-Seite 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(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 Dokumentverwendung finden Sie unter Dokument -API.
var table = new sn_pdfgeneratorutils.Table([70,200], false);
document.addTable(table);
Dokument – schließen ()
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 | PDF-Seite | Seitengröße des Dokuments. |
| 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 |
|---|---|
| Nummer | Anzahl der Seiten im Dokument. |
Das folgende Beispiel zeigt, wie Sie die Seitenanzahl eines Dokuments mit neun Seiten abrufen. 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 der PdfPage- API festgelegt wird. Mögliche Werte:
|
Das folgende Beispiel zeigt, wie Sie die Seitengröße eines Dokuments abrufen. 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: true |
Das folgende Beispiel zeigt, wie Sie die Seitengröße eines Dokuments abrufen. 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(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 Sie ein Dokument an einen Incident-Datensatz anhängen. 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 Flow-Richtung des Basistexts für die Neuanordnung von basierend auf der Zeichenerkennung fest
| Name | Typ | Beschreibung |
|---|---|---|
| direction | Zeichenfolge | Textflussrichtung. Gültige Werte:
Standard: LINKS_NACH_RECHTS |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Beispiel zeigt, wie der Textfluss 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(Number topMargin, Nummer rechtsrand, Nummer untenrand, Nummer linksrandrand)
Legt die Seitenrandgrößen im Dokument fest.
| Name | Typ | Beschreibung |
|---|---|---|
| topMargin | Nummer | Höhe des oberen Randes in Punkten. |
| rechten Rand | Nummer | Breite des rechten Randes in Punkten. |
| unterer Rand | Nummer | Höhe des unteren Randes 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 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);