jsn / ServiceNow, simplified.
AustraliaREFERENCE GUIDE

SVGToPDFConversionAPI - Scoped, Global

On this page

SVGToPDFConversionAPI - Scoped, Global

The SVGToPDFConversionAPI provides methods that enable the adding of an SVG to a PDF and converting an SVG to PDF.

This API is part of the ServiceNow PDF Generation Utilities plugin (com.snc.apppdfgenerator) and is provided within the sn_pdfgeneratorutils namespace. The plugin is activated by default.

See also PDFGenerationAPI.

Parent Topic:Server API reference

SVGToPDFConversionAPI - SVGToPDFConversionAPI()

Instantiates a new SVGToPDFConversionAPI object.

|Name|Type|Description| |—-|—-|———–| |None| ||

The following examples shows how to create a SVGToPDFConversionAPI object.

var v = new sn_pdfgeneratorutils.SVGToPDFConversionAPI();

SVGToPDFConversionAPI - addSVGToPDF(String svg, String inputPdfSysId, String targetTable, String targetSysId, String nameForPdf, Number pageNo, Number x, Number y, Number svgImgWidth, Number svgImgHeight)

Adds an SVG image to a PDF on a specified page with image size and location coordinates.

<table id=“table_gms_ycm_j4b” class=“parameters”><thead><tr><th>

Name

</th><th>

Type

</th><th>

Description

</th></tr></thead><tbody><tr><td>

svg

</td><td>

String

</td><td>

SVG to convert to a PDF document.

</td></tr><tr><td>

inputPdfSysId

</td><td>

String

</td><td>

Sys_id of the target PDF in which to create a copy of with an SVG. The target PDF is in the Attachments [sys_attachment] table.

</td></tr><tr><td>

targetTable

</td><td>

String

</td><td>

Name of the table containing the record to which the PDF is attached. You can find this value in the same row as the attachment listed in the Attachments [sys_attachment] table.

</td></tr><tr><td>

targetTableSysId

</td><td>

String

</td><td>

Sys_id of the record to which the PDF is attached. You can find this value in the same row as the attachment listed in the Attachments [sys_attachment] table.

</td></tr><tr><td>

targetTable

</td><td>

String

</td><td>

Name of the table on which to attach the converted PDF.

</td></tr><tr><td>

targetTableSysId

</td><td>

String

</td><td>

Sys_id of the record on which to attach the converted PDF.

</td></tr><tr><td>

pdfName

</td><td>

String

</td><td>

Name to give the PDF.Default: Sys_id of the PDF in the Attachments [sys_attachment] table.

</td></tr><tr><td>

pageNo

</td><td>

Number

</td><td>

Page number in the attached PDF on which to place the SVG.

</td></tr><tr><td>

x

</td><td>

Number

</td><td>

Horizontal position of the SVG in the page. Value is in points.

</td></tr><tr><td>

y

</td><td>

Number

</td><td>

Vertical position of the SVG in the page. Value is in points.

</td></tr><tr><td>

svgImgWidth

</td><td>

Number

</td><td>

Width of the SVG image in pixels.

</td></tr><tr><td>

svgImgHeight

</td><td>

Number

</td><td>

Height of the SVG image in pixels.

</td></tr></tbody> </table><table id=“table_hms_ycm_j4b” class=“returns”><thead><tr><th>

Type

</th><th>

Description

</th></tr></thead><tbody><tr id=“row_svg2PDF-return-svg_attach”><td>

Object

</td><td>

Object containing sys_id of a new PDF attachment with inserted SVG if successful, error message otherwise. { "attachment_id": "String", "message": "String", "status": "String" }

</td></tr><tr><td>

<Object>.​attachment_id

</td><td>

If SVG conversion is successful, sys_id of the attached PDF. The file is listed in the Attachments [sys_attachment] table.Data type: String

</td></tr><tr><td>

<Object>.message

</td><td>

Message confirming success or error. Possible values:

  • Adding SVG content to PDF failed.

  • Adding SVG to PDF and creating new PDF is successful.

  • Given target record [<tableName> - <targetTableSysId>] does not exist. – Target table sys_id is not in the table provided. Make sure you include the correct table name for the record.

  • Input PDF attachment sys id to add the SVG content is null

  • Input SVG content is empty or null

  • PdfReader is not opened with owner password

  • The target table name to attach the modified PDF : <targetTable> is empty or null

  • The target table name to attach the modified PDF : <targetTable> is not valid

Data type: String

</td></tr><tr><td>

<Object>.status

</td><td>

Status indicating whether the operation is successful.Possible values:

  • success - Operation was successful.

  • failure – Operation was not successful. The message provides details.

Data type: String

</td></tr></tbody> </table>The following example shows how get SVG from the description field of an incident record and add it to page 5 of a PDF attachment. The new PDF with SVG is located in the Attachments [sys_attachment] table.

var gr = new GlideRecord("incident");

var svg;

if (gr.get("<tableSysId>")) {
 svg = gr.description.toString();
}

var result = new sn_pdfgeneratorutils.SVGToPDFConversionAPI().addSVGToPDF(svg, "<inputPdfSysId>", "incident", "<tableSysId>", "AddSVGToPDF", 5, 30, 30, 300, 100);
gs.info(JSON.stringify(result));

Output:

{"attachment_id":"<sys_id>","message":"Adding SVG to PDF and creating new PDF is successful.","status":"success"}

SVGToPDFConversionAPI - convertSVGToPDF(String svg, String pdfName, String targetTable, String targetTableSysId)

Converts an SVG provided as string to PDF.

<table id=“table_gms_ycm_j4b” class=“parameters”><thead><tr><th>

Name

</th><th>

Type

</th><th>

Description

</th></tr></thead><tbody><tr><td>

svg

</td><td>

String

</td><td>

SVG to convert to a PDF document.

</td></tr><tr><td>

pdfName

</td><td>

String

</td><td>

Name to give the PDF.Default: Sys_id of the PDF in the Attachments [sys_attachment] table.

</td></tr><tr><td>

targetTable

</td><td>

String

</td><td>

Name of the table on which to attach the converted PDF.

</td></tr><tr><td>

targetTableSysId

</td><td>

String

</td><td>

Sys_id of the record on which to attach the converted PDF.

</td></tr></tbody> </table><table id=“table_hms_ycm_j4b” class=“returns”><thead><tr><th>

Type

</th><th>

Description

</th></tr></thead><tbody><tr><td>

Object

</td><td>

Object containing sys_id of the PDF attachment converted from SVG if successful, error message otherwise. { "attachment_id": "String", "message": "String", "status": "String" }

</td></tr><tr><td>

<Object>.​attachment_id

</td><td>

If SVG conversion is successful, sys_id of the attached PDF. The file is listed in the Attachments [sys_attachment] table.Data type: String

</td></tr><tr><td>

<Object>.message

</td><td>

Message confirming success or error. Possible values:

  • Converting SVG image to PDF document failed.

  • Exception while reading Source document contents.

  • Given target record [<tableName> - <targetTableSysId>] does not exist. – Target table sys_id is not in the table provided. Make sure you include the correct table name for the record.

  • SVG to PDF conversion is successful.

  • The Target table name - <tableName> to attach the converted SVG is not valid

  • The Target table name - <tableName> to attach the converted SVG is empty or null

Data type: String

</td></tr><tr><td>

<Object>.status

</td><td>

Status indicating whether the operation is successful.Possible values:

  • success - Operation was successful.

  • failure – Operation was not successful. The message provides details.

Data type: String

</td></tr></tbody> </table>The following example shows how get SVG from the description field of an incident record, to convert the SVG to PDF and attach it to a record.

var gr = new GlideRecord("incident");

var svg;

if (gr.get("<tableSysId>")) {
 svg = gr.description.toString();
}

var v = new sn_pdfgeneratorutils.SVGToPDFConversionAPI();

var result = v.convertSVGToPDF(svg, "ConvertSVGToPDF", "incident", "<targetTableSysId>");
gs.info(JSON.stringify(result));

Output:

{"attachment_id":"<pdf_attachment_sys_id>","message":"SVG to PDF conversion is successful.","status":"success"}

SVGToPDFConversionAPI - convertSVGToPDFWithSize(String svg, String nameForPDF, String targetTable, String targetTableSysId, Number svgImgWidth, Number svgImgHeight)

Converts an SVG provided as string to PDF with image width and height values.

<table id=“table_nqj_1dm_j4b” class=“parameters”><thead><tr><th>

Name

</th><th>

Type

</th><th>

Description

</th></tr></thead><tbody><tr><td>

svg

</td><td>

String

</td><td>

SVG to convert to a PDF document.

</td></tr><tr><td>

pdfName

</td><td>

String

</td><td>

Name to give the PDF.Default: Sys_id of the PDF in the Attachments [sys_attachment] table.

</td></tr><tr><td>

targetTable

</td><td>

String

</td><td>

Name of the table on which to attach the converted PDF.

</td></tr><tr><td>

targetTableSysId

</td><td>

String

</td><td>

Sys_id of the record on which to attach the converted PDF.

</td></tr><tr><td>

svgImgWidth

</td><td>

Number

</td><td>

Width of the SVG image in pixels.

</td></tr><tr><td>

svgImgHeight

</td><td>

Number

</td><td>

Height of the SVG image in pixels.

</td></tr></tbody> </table><table id=“table_hms_ycm_j4b” class=“returns”><thead><tr><th>

Type

</th><th>

Description

</th></tr></thead><tbody><tr><td>

Object

</td><td>

Object containing sys_id of the PDF attachment converted from SVG if successful, error message otherwise. { "attachment_id": "String", "message": "String", "status": "String" }

</td></tr><tr><td>

<Object>.​attachment_id

</td><td>

If SVG conversion is successful, sys_id of the attached PDF. The file is listed in the Attachments [sys_attachment] table.Data type: String

</td></tr><tr><td>

<Object>.message

</td><td>

Message confirming success or error. Possible values:

  • Converting SVG image to PDF document failed.

  • Exception while reading Source document contents.

  • Given target record [<tableName> - <targetTableSysId>] does not exist. – Target table sys_id is not in the table provided. Make sure you include the correct table name for the record.

  • The Target table name - <tableName> to attach the converted SVG is not valid

  • The Target table name - <tableName> to attach the converted SVG is empty or null

  • SVG to PDF conversion is successful.

Data type: String

</td></tr><tr><td>

<Object>.status

</td><td>

Status indicating whether the operation is successful.Possible values:

  • success - Operation was successful.

  • failure – Operation was not successful. The message provides details.

Data type: String

</td></tr></tbody> </table>The following example shows how get SVG from the description field of an incident record, to convert the SVG to PDF, and attach it to a record.

var gr = new GlideRecord("incident");

var svg;

if (gr.get("<tableSysId>")) {
 svg = gr.description.toString();
}

var v = new sn_pdfgeneratorutils.SVGToPDFConversionAPI();

var result = v.convertSVGToPDFWithSize(svg, "ConvertSVGToPDF", "incident", "<targetTableSysId>", 600, 150);
gs.info(JSON.stringify(result));

Output:

{"attachment_id":"<pdf_attachment_sys_id>","message":"SVG to PDF conversion is successful.","status":"success"}

Keep exploring.

Find another answer, or bring this documentation into your own tools.