Appian Community and Appian Academy are being upgraded. As a part of the upgrade, Appian Community is currently in read-only mode, and user registration is disabled until August 3. We apologize for any inconvenience this may cause, but a more secure, stable, and performant Community experience is coming soon!

The new Appian Community launches August 3, followed by Appian Academy on August 7. During the migration, Appian Community Edition, Appian Academy, Documentation, Certifications, Instructor-led Customer Training, Partner Sales Training & Accreditation, and Forum (for Appian Partners and Customers only) will remain available.

PDF Tools

Overview

Contains multiple Smart Services and Functions for interacting with PDF Documents.

Key Features & Functionality

Smart Services:

  • Merge PDF - Merges multiple PDF documents into a single document.
  • Extract PDF Pages - Extracts a range of pages from an existing PDF into a new PDF.
  • Fill PDF - Populates the fields of a PDF Form and optionally flattens it disallow further changes.
  • Create PDF Content - Allows text to be added to a PDF with control over the style, position, and angle. An existing PDF can be updated or a new one created from scratch.
  • Convert PDF to Image - Creates an array of images or a multi-page tiff from a PDF.
  • Compress PDF - Compresses the images in the PDF to make it smaller.
  • Un-protect and Copy PDF - Using the document password, create an un-protected copy of a protected PDF.
  • Convert Image to PDF - Creates a PDF starting from one or many images. It also supports multi-page tiff images.
  • Encrypt PDF - Encrypts an existing PDF with a password,
  • Split PDF Pages In Half - Supports spitting individual pdf pages horizontally or vertically with an overlap
  • Rotate PDF - rotate entire pdf by 90, 180, or 270 degrees
  • Convert Txt to PDF - Convert a text to pdf with a choice of font type and size
  • Split PDF Into Chunks - Splits a PDF document into multiple smaller PDFs with a specified number of pages per chunk

Functions:

  • Get PDF Metadata - Retrieves metadata on the PDF: page count, title, author, security, encryption, etc.
  • Get PDF Text - Retrieves the text content from a PDF.
  • Get PDF Form Fields - Retrieves the populated form field values of an unflattened PDF.
  • Get PDF Signature Fields - Retrieves the populated signature field values of an unflattened PDF.
  • Get PDF Bookmarks - Retrieves the list of bookmarks and associated page number in the PDF
  • Find Pages with Text - Retrieves an array of page numbers that contain a specified search string within the PDF

Anonymous
Parents
  • This is the feedback I got from Appian support for the issue with deploying the plug-in code. 

    To resolve this issue, you will need to change the plugin code to explicitly reference PdfField?list^1 so that it matches the internally mapped version of the CDT, then recompile the plugin and attach the new .jar to this case. To do this, please identify each @Input and @Output of type "PdfFields" in the plugin code, the update its annotation following the Action section of KB-1097. For example, the error references the smart service "FillPDFPauseOnError," so you will need to make the following update in the file FillPDFPauseOnError.java:

    Old:
    @Input(required = Required.ALWAYS)
    @Name("PdfFields")
    public void setPdfFields(PdfField[] val) {
    this.pdfFields = val;
    }

    New:
    @Input(required = Required.ALWAYS)
    @Name("PdfFields")
    @Type(namespace = "">types.appiancorp.com/ps", name = "PdfField?list^1")
    public void setPdfFields(PdfField[] val) {
    this.pdfFields = val;
    }

      Any plans to update a new version with these changes?  If not, I will plan on making these changes myself on my end.  Thanks!

Comment
  • This is the feedback I got from Appian support for the issue with deploying the plug-in code. 

    To resolve this issue, you will need to change the plugin code to explicitly reference PdfField?list^1 so that it matches the internally mapped version of the CDT, then recompile the plugin and attach the new .jar to this case. To do this, please identify each @Input and @Output of type "PdfFields" in the plugin code, the update its annotation following the Action section of KB-1097. For example, the error references the smart service "FillPDFPauseOnError," so you will need to make the following update in the file FillPDFPauseOnError.java:

    Old:
    @Input(required = Required.ALWAYS)
    @Name("PdfFields")
    public void setPdfFields(PdfField[] val) {
    this.pdfFields = val;
    }

    New:
    @Input(required = Required.ALWAYS)
    @Name("PdfFields")
    @Type(namespace = "">types.appiancorp.com/ps", name = "PdfField?list^1")
    public void setPdfFields(PdfField[] val) {
    this.pdfFields = val;
    }

      Any plans to update a new version with these changes?  If not, I will plan on making these changes myself on my end.  Thanks!

Children
  • Hi Raj,

    We are in exactly the same situation. We are in need of this plugin, but with a version 1 reference for the PdfField cdt.

    Did you manage to resolve this yet? And if so, how?

    can you perhaps share a version of the plugin that references the ^1 of PdfField?

    Thank you