Document : dans le champ d’application, global
L’API Document fournit des méthodes pour initialiser un PDF, ajouter du contenu et fermer le PDF. Après avoir ajouté du contenu, le document peut être joint à un enregistrement cible.
Cette API fait partie du module d’extension ServiceNow PDF Generation Utilities (com.snc.apppdfgenerator) et est fournie dans l’espace de noms sn_pdfgeneratorutils . Le module d’extension est activé par défaut.
- Cellule – Crée un objet Cell sous forme de cellule dans une table. Vous pouvez utiliser cette API pour formater la cellule et inclure des blocs supplémentaires, tels que des paragraphes et des images.
- Couleur – Crée un objet Couleur utilisé pour définir des attributs de couleur que vous pouvez appliquer aux éléments d’un PDF. tels que les cellules, les tableaux et les lignes.
- L’image – Crée un objet Image représentant une image et son insertion de mise en page dans un PDF. Permet de définir des attributs tels que l’échelle, l’alignement et la couleur des bordures.
- Graphique linéaire – Crée un objet Ligne à l’aide de méthodes pour tracer une ligne dans un PDF.
- Paragraphe – Crée un objet Paragraphe représentant un bloc de texte dans un PDF.
- PdfPage – (en anglais seulement ) Crée un objet PdfPage représentant une page PDF et ses attributs ; tels que la taille, la largeur et la couleur.
- Le style – Crée un style pour définir des propriétés telles que la taille de police, la bordure et l’alignement. Vous pouvez appliquer le même style à plusieurs objets simultanément.
- Tableau – Crée un objet Table à ajouter à un document PDF. Définit les données à utiliser dans chaque cellule et définit les styles, les marges et l’alignement.
L’exemple suivant montre comment créer un PDF de base à l’aide de l’API Document et de plusieurs composants, tels qu’un tableau, une cellule et un paragraphe. Le résultat est une liste d’incidents de la table Incident [incident] répertoriée dans un PDF. Vous pouvez tester cet exemple dans votre instance si vous remplacez <sys_id> par la sys_id d’un enregistrement d’incident.
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");
La pièce jointe PDF est répertoriée dans la table Pièces jointes [sys_attachment].
Document : document(PdfPagepageSize)
Instancie un objet Document et génère un document PDF.
| Nom | Type | Description |
|---|---|---|
| pageSize | Page PDF | Taille de page PDF. |
| Type | Description |
|---|---|
| Objet | Document PDF. |
L’exemple suivant montre comment créer un objet Document et renvoyer un PDF.
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document(pageSize);
Document – addAndStartNewPage()
Ajoute une page au document en terminant la page actuelle et en en créant une nouvelle.
- addNewPage() – Ajoute une nouvelle page blanche au document. Utilisez cette fonction pour forcer un saut de page au début d’un nouveau chapitre ou d’une nouvelle section de votre document.
- addNewPageAtIndex() – Ajoute une nouvelle page à l’index spécifié du document. Par exemple, si vous définissez l’index sur 6, vous insérez une page six ou la page à la position de la page six existante dans un document. La page six d’origine devient la page sept.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Aucun |
L’exemple suivant montre comment ajouter une nouvelle page à un document. Pour obtenir un exemple d’utilisation de document, consultez API de document .
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(String author)
Ajoute un nom au champ Auteur dans les propriétés du document PDF.
| Nom | Type | Description |
|---|---|---|
| auteur | Chaîne | Nom de l’auteur du document. |
| Type | Description |
|---|---|
| Aucun |
L’exemple suivant montre comment ajouter un nom au champ Auteur dans les propriétés d’un document PDF. Pour obtenir un exemple d’utilisation de document, consultez API de document .
var author = "John Do";
document.addAuthor(author);
Document – addImage(Image image)
Ajouter une image à un document.
| Nom | Type | Description |
|---|---|---|
| image | Image | Image à ajouter à un document. |
| Type | Description |
|---|---|
| Aucun |
L’exemple suivant montre comment ajouter une image à un document. Pour obtenir un exemple d’utilisation de document, consultez API de document .
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");
Document – addNewLine()
Ajoute une nouvelle ligne vide au document.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Aucun |
L’exemple suivant montre comment ajouter une nouvelle ligne à un document. Pour obtenir un exemple d’utilisation de document, consultez API de document .
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
document.addNewLine();
Document – addNewPage()
Ajoute une nouvelle page blanche au document. Utilisez cette fonction pour forcer un saut de page au début d’un nouveau chapitre ou d’une nouvelle section de votre document.
- addAndStartNewPage()– Ajoute une page au document en terminant la page actuelle et en en créant une nouvelle.
- addNewPageAtIndex() – Ajoute une nouvelle page à l’index spécifié du document. Par exemple, si vous définissez l’index sur 6, vous insérez une page six ou la page à la position de la page six existante dans un document. La page six d’origine devient la page sept.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Aucun |
L’exemple suivant montre comment ajouter une nouvelle page blanche à un document. Pour obtenir un exemple d’utilisation de document, consultez API de document .
Usage:
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
document.addNewPage();
Document – addNewPageAtIndex(index numérique)
Ajoute une nouvelle page à l’index spécifié du document. Par exemple, si vous définissez l’index sur 6, vous insérez une page six ou la page à la position de la page six existante dans un document. La page six d’origine devient la page sept.
- addAndStartNewPage()– Ajoute une page au document en terminant la page actuelle et en en créant une nouvelle.
- addNewPage() – Ajoute une nouvelle page blanche au document. Utilisez cette fonction pour forcer un saut de page au début d’un nouveau chapitre ou d’une nouvelle section de votre document.
| Nom | Type | Description |
|---|---|---|
| Index | Numéro | Position à laquelle insérer une nouvelle page. |
| Type | Description |
|---|---|
| Aucun |
L’exemple suivant montre comment ajouter une nouvelle page PDF à la position 6 d’un document. Pour obtenir un exemple d’utilisation de document, consultez API de document .
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
var index = 6;
document.addNewPageAtIndex(index);
Document – addParagraph(Paragraphe paragraphe)
Ajouter un paragraphe à un document.
| Nom | Type | Description |
|---|---|---|
| paragraphe | Paragraphe | Bloc de texte fourni en tant qu’objet de paragraphe. |
| Type | Description |
|---|---|
| Aucun |
L’exemple suivant montre comment ajouter un paragraphe à un document. Pour obtenir un exemple d’utilisation de document, consultez API de document .
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 de table)
Ajoute une table à un document.
| Nom | Type | Description |
|---|---|---|
| table | Table | Table à insérer dans le document. |
| Type | Description |
|---|---|
| Aucun |
L’exemple suivant montre comment ajouter un tableau à un document. Voir l’API de table pour plus de détails sur la définition d’une table. Pour obtenir un exemple d’utilisation de document, consultez API de document .
var table = new sn_pdfgeneratorutils.Table([70,200], false);
document.addTable(table);
Document – close()
Ferme un document.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Aucun |
L’exemple suivant montre comment fermer un document. Pour obtenir un exemple d’utilisation de document, consultez API de document .
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
document.close();
Document : createDocument(PdfPage, pageSize)
Crée un document avec la taille de page spécifiée.
| Nom | Type | Description |
|---|---|---|
| pageSize | Page PDF | Taille de la page du document. |
| Type | Description |
|---|---|
| Objet | Document PDF. |
L’exemple suivant montre comment créer un document. Pour obtenir un exemple d’utilisation de document, consultez API de document .
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
Document : getPageCount()
Obtient le nombre de pages du document.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Numéro | Nombre de pages du document. |
L’exemple suivant montre comment obtenir le nombre de pages d’un document de neuf pages. Pour obtenir un exemple d’utilisation de document, consultez API de document .
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);
Sortie :
The number of pages is 9
Document : getPageSize()
Obtient la taille de page par défaut du document.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Chaîne | Valeur de la taille de page par défaut définie à l’aide de l’API PdfPage . Valeurs possibles :
|
L’exemple suivant montre comment obtenir la taille de page d’un document. Pour obtenir un exemple d’utilisation de document, consultez API de document .
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
var pagesize = document.getPageSize();
Document : isClosed()
Indique si un document est fermé ou ouvert.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Aucun | Marqueur indiquant si un document est ouvert ou fermé. Valeurs valides :
Valeur par défaut : true |
L’exemple suivant montre comment obtenir la taille de page d’un document. Pour obtenir un exemple d’utilisation de document, consultez API de document .
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
var closed = document.isClosed();
Document – saveAsAttachment(String tableName, String tableSysId, String fileName)
Joint le fichier de document à la table cible spécifiée.
| Nom | Type | Description |
|---|---|---|
| tableName | Chaîne | Nom de la table à laquelle joindre le document. |
| tableSysId | Chaîne | Sys_id de l’enregistrement auquel joindre le document. |
| fileName | Chaîne | Nom du document à joindre. |
| Type | Description |
|---|---|
| Chaîne | Sys_id du document joint dans le tableau Pièces jointes [sys_attachment]. |
L’exemple suivant montre comment joindre un document à un enregistrement d’incident. Pour obtenir un exemple d’utilisation de document, consultez API de document .
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
// Additional document properties
document.saveAsAttachment("incident", "<record_sys_id>", "SampleDocGeneration.pdf");
Document – setBaseDirection(direction de la chaîne)
Définit le sens du flux du texte de base à partir duquel réorganiser en fonction de la reconnaissance de caractères
| Nom | Type | Description |
|---|---|---|
| direction | Chaîne | Direction du flux de texte. Valeurs valides :
Par défaut : LEFT_TO_RIGHT |
| Type | Description |
|---|---|
| Aucun |
L’exemple suivant montre comment définir le flux de texte de gauche à droite. Pour obtenir un exemple d’utilisation de document, consultez API de document .
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
document.setBaseDirection("RIGHT_TO_LEFT");
Document – setMargins(Number topMargin, Number rightMargin, Number bottomMargin, Number leftMargin)
Définit les dimensions des marges de page dans le document.
| Nom | Type | Description |
|---|---|---|
| Marge supérieure | Numéro | Hauteur de la marge supérieure en points. |
| Marge droite | Numéro | Largeur de la marge de droite en points. |
| Marge inférieure | Numéro | Hauteur de la marge inférieure en points. |
| Marge gauche | Numéro | Largeur de la marge de gauche en points. |
| Type | Description |
|---|---|
| Aucun |
L’exemple suivant montre comment définir les marges de page d’un document. Pour obtenir un exemple d’utilisation de document, consultez API de document .
var pageSize = new sn_pdfgeneratorutils.PdfPage("A4");
var document = new sn_pdfgeneratorutils.Document.createDocument(pageSize);
document.setMargins(72,36,36,36);