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
  • In the 23.2 release, Appian introduced modernized file management APIs that offer a cleaner abstraction layer for easier file handling within Appian. We simultaneously announced that we are deprecating some older APIs. We are aware of the utilization of deprecated APIs within some AppMarket plug-ins that work with documents. As part of our commitment to ensuring compatibility, we anticipate all Appian-authored plug-ins currently using deprecated APIs to be updated for API compatibility by the 24.1 General Availability (GA) release. We also proactively work with Partner plug-in authors to ensure all AppMarket plug-ins have optimal performance and functionality. 
    If you have any questions or require AppMarket assistance, please don't hesitate to reach out by sending an email to appmarket@appian.com.

  • as we will have a setup with this plugin as key peace, i raised it with some appian folks :)

  • Yes, we came across the same issue. We are looking to upgrade our platform and it would be great if we can get an update on when the new version of the plugin will be available that doesn't reference the deprecated APIs.

  • It is planned a new version for this plugin?
    The heath check report is saying that is using deprecated API's.
    In a future this can be a problem. 

    "PDF Tools (pdftools) references deprecated Appian APIs
    [deprecated] com.appiancorp.suiteapi.content.ContentOutputStream.close()
    [deprecated] com.appiancorp.suiteapi.content.ContentOutputStream.getContentId()
    [deprecated] com.appiancorp.suiteapi.content.ContentService.getInternalFilename(java.lang.Long)
    [deprecated] com.appiancorp.suiteapi.content.ContentService.upload(com.appiancorp.suiteapi.knowledge.Document, java.lang.Integer)
    "

  • v2.4.2 Release Notes
    • Updated apache pdfbox library

  • Hello,

    I was having issues parsing a pdf.

    The pdf contains data in a table format with some blank data cells. When using getpdftext(), the delimiter between 2 adjacent cells and between 2 cells with a missing cell value in between is the same (<space>). Because of this, I'm unable to map the cell data with the correct column header.


    Any help is much appreciated. Thanks!

  • not really, but the sense of this plugin is not really meant to compress PDF files.Its meant especially meant to convert files. 
    The single exception are images in PDF

  • Hello,

    I have a PDF file that was converted from word to PDF using the Aspose convert Docx to PDF plugin. The size of the PDF file is 3.11MB, I then used this plugin to attempt to compress the PDF, which after doing so, the file size became 5.11MB. Any thoughts of why that is?

  • How can I add page numbers in existing pdf using create Pdf content

  • Hi Team,

    I am facing the below error. can someone help me to fix this error?

    2023-05-16 12:47:24,886 [Appian Plugin Hot Deploy] ERROR com.atlassian.plugin.manager.DefaultPluginManager - There was an error loading the descriptor 'Pdftoolsfunctions' of plugin 'pdftools'. Disabling.
    com.atlassian.plugin.PluginException: com.appiancorp.suiteapi.common.exceptions.AppianException: The Function Module com.appiancorp.ps.pdftools.PDFToolsFunctions could not be installed due to invalid type: Invalid Type: Unsupported type [Lcom.appiancorp.ps.pdftools.types.PdfSignatureField;. Use the @Type annotation to indicate the type of a function parameter. The deprecated ’type’ attribute for the @Parameter annotation has been removed. (APNX-1-4104-008)
    at com.appiancorp.plugins.ExceptionHandlingModuleDescriptor.enabled(ExceptionHandlingModuleDescriptor.java:68)
    at com.atlassian.plugin.manager.DefaultPluginManager.notifyModuleEnabled(DefaultPluginManager.java:2039)
    at com.appiancorp.plugins.AppianPluginManager.notifyModuleEnabled(AppianPluginManager.java:78)
    at com.atlassian.plugin.manager.DefaultPluginManager.enableConfiguredPluginModule(DefaultPluginManager.java:1780)
    at com.atlassian.plugin.manager.DefaultPluginManager.enableConfiguredPluginModules(DefaultPluginManager.java:1757)
    at com.atlassian.plugin.manager.DefaultPluginManager.enableDependentPlugins(DefaultPluginManager.java:1263)
    at com.atlassian.plugin.manager.DefaultPluginManager.addPlugins(DefaultPluginManager.java:1218)
    at com.atlassian.plugin.manager.DefaultPluginManager.scanForNewPlugins(DefaultPluginManager.java:927)
    at com.appiancorp.plugins.AppianPluginManager.scanForNewPlugins0(AppianPluginManager.java:204)
    at com.appiancorp.plugins.AppianPluginManager.scanForNewPlugins(AppianPluginManager.java:196)
    at com.appiancorp.plugins.AppianPluginManager.scanResultIfNotDeployingPlugins(AppianPluginManager.java:184)
    at com.appiancorp.plugins.HotDeployerRunnable.run(HotDeployerRunnable.java:30)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)
    Caused by: com.appiancorp.suiteapi.common.exceptions.AppianException: The Function Module com.appiancorp.ps.pdftools.PDFToolsFunctions could not be installed due to invalid type: Invalid Type: Unsupported type [Lcom.appiancorp.ps.pdftools.types.PdfSignatureField;. Use the @Type annotation to indicate the type of a function parameter. The deprecated ’type’ attribute for the @Parameter annotation has been removed. (APNX-1-4104-008)
    at com.appiancorp.process.expression.ExpressionFunctionModuleDescriptor.enabledInternal(ExpressionFunctionModuleDescriptor.java:159)
    at com.appiancorp.plugins.ExceptionHandlingModuleDescriptor.enabled(ExceptionHandlingModuleDescriptor.java:66)
    ... 18 more
    Caused by: com.appiancorp.suiteapi.type.exceptions.InvalidTypeException: com.appiancorp.suiteapi.common.exceptions.AppianException: Invalid Type: Unsupported type [Lcom.appiancorp.ps.pdftools.types.PdfSignatureField; (APNX-1-4047-000)
    at com.appiancorp.type.util.AppianTypeResolver.getRestrictedType(AppianTypeResolver.java:155)
    at com.appiancorp.type.util.AppianTypeResolver.inferAppianType(AppianTypeResolver.java:94)
    at com.appiancorp.type.util.AppianTypeResolver.inferReturnType(AppianTypeResolver.java:71)
    at com.appiancorp.process.expression.ExpressionFunctionModuleDescriptor.inferReturnType(ExpressionFunctionModuleDescriptor.java:203)
    at com.appiancorp.process.expression.ExpressionFunctionModuleDescriptor.enabledInternal(ExpressionFunctionModuleDescriptor.java:148)
    ... 19 more
    2023-05-16 12:47:24,889 [Appian Plugin Hot Deploy] ERROR com.appiancorp.plugins.LoggingPluginEventListener - Failed to enable Plug-in 'PDF Tools' (pdftools) version 2.4.1: 'The Function Module com.appiancorp.ps.pdftools.PDFToolsFunctions could not be installed due to invalid type: Invalid Type: Unsupported type [Lcom.appiancorp.ps.pdftools.types.PdfSignatureField;. Use the @Type annotation to indicate the type of a function parameter. The deprecated ’type’ attribute for the @Parameter annotation has been removed. (APNX-1-4104-008)'