PDF Utilities

Overview

This plug-in has the following smart services:

  • Header and Footer - To add header and footer in the PDF document.
  • Add Image - To add image to the PDF document.
  • Watermark Text - To add watermark to the text in the PDF document.
  • Rotate Page in PDF - To rotate the page in the PDF document.
  • Merge PDF - To merge the data in the PDF document.
  • Add Page Number in PDF - To add page number in the PDF document.
  • Add Page Number in PDF with Alignment - To add page number with alignment in the PDF document.
  • Add Image To PDF - To add image in the PDF document.
  • Split PDF By Range - To split the PDF by range.
  • Split PDF By Number - To split the PDF by Number
  • Split PDF By Specific Page - To split the PDF by specific page.
Anonymous
  • Nevermind, I solved my problem. The thing is the page was already rotated 90 degrees, and I was trying to rotate the page an additional 90 degrees. 180 degrees in total. It means, the rotation angle doesn't sum, but works in terms of the page rotation. Hard to explain.

  • Hi Vuram team, 

    I'm trying to use the rotate page smart service, but I'm not getting the expected results. I've tried several combinations in the smart service inputs, with no success.

    After execution, the smart service execution is successful, even a new file is generated, but not with the intended 90 degrees rotation of the given page.

    Additionally, the documentation doesn't explain how this function works.

    Any clue what could be wrong?


    For example, the page number is a text. I've tried it as zero and also one index. But not sure which one is the right choice.

  • Our client would like to be able to apply a watermark consistently in the top left corner of the page. However, they have a mixture of landscape and portrait PDFs, and no way to identify which documents are which dimensions.

    Has anyone come across this scenario before? The same co-ordinates won't work for all docs because top left for some out be out of bounds for others.

  • Hi, this plugin is currently identified by the Appian Healthcheck report as referencing deprecated Appian APIs (com.appiancorp.exceptions.AppianException.getMessage()). This is happening with the latest version installed (9.0.4). 
    Can this please be updated to remove references to the deprecated APIs?

  • Have you ever figured this out?

  • Have you ever figured this out?

  •   
    We are traying to have a page numbering in the following format :"Page 1 of 2" , "Page 2 of 2"
    in order to achieve this we used this format ( "Page " & { ac!StartPage + 1 } & " of " & pv!pageCount) inside the "Page Format Text",but we are not getting the same result below on all pages

  • Hi,

    Just an update on that. After the upgrade to 24.4, I had version 4 the plugin and I faced the error above. Then I upgraded the plugin to version 9.0.4 but still got the error. So, I requested a site restart and now things are working. It seems to be some java cache issue with plugin deployment process.

  • Hello,

    I'm facing issue using the add image to pdf/insert image in pdf on Appian 24.4 version. Both smart service trows the same error. I'm using version 9.0.4

    Tomcat log shows this entry:

    Exception in thread "ThreadPoolTaskExecutor-7533" java.lang.NoClassDefFoundError: javax/imageio/stream/ImageInputStream at com.github.jaiimageio.impl.plugins.pnm.PNMImageReaderSpi.canDecodeInput(PNMImageReaderSpi.java:101) at java.desktop/javax.imageio.ImageIO$CanDecodeInputFilter.filter(ImageIO.java:573) at java.desktop/javax.imageio.spi.FilterIterator.advance(ServiceRegistry.java:873) at java.desktop/javax.imageio.spi.FilterIterator.<init>(ServiceRegistry.java:867) at java.desktop/javax.imageio.spi.ServiceRegistry.getServiceProviders(ServiceRegistry.java:516) at java.desktop/javax.imageio.ImageIO.getImageReaders(ImageIO.java:654) at java.desktop/javax.imageio.ImageIO.read(ImageIO.java:1460) at java.desktop/javax.imageio.ImageIO.read(ImageIO.java:1317) at org.apache.pdfbox.pdmodel.graphics.image.PDImageXObject.createFromFileByExtension(PDImageXObject.java:271) at org.apache.pdfbox.pdmodel.graphics.image.PDImageXObject.createFromFile(PDImageXObject.java:208) at com.vuram.plugins.pdfutilities.InsertImageToPdf.run(InsertImageToPdf.java:143) at com.appiancorp.process.runtime.framework.DefaultActivityExecutor$1.lambda$call$0(DefaultActivityExecutor.java:129) at com.appiancorp.plugins.PluginUsageLogger.runWithPluginInformation(PluginUsageLogger.java:54) at com.appiancorp.process.runtime.framework.DefaultActivityExecutor$1.call(DefaultActivityExecutor.java:129) at com.appiancorp.process.runtime.framework.DefaultActivityExecutor$1.call(DefaultActivityExecutor.java:123) at com.appiancorp.common.ContextClassLoaderSwitcher.runInContext(ContextClassLoaderSwitcher.java:30) at com.appiancorp.process.runtime.framework.DefaultActivityExecutor.execute(DefaultActivityExecutor.java:123) at com.appiancorp.process.engine.UnattendedJavaActivityRequest.execute(UnattendedJavaActivityRequest.java:110) at com.appiancorp.process.engine.UnattendedJavaActivityRequestResponseCreator.getJavaActivityResultResponse(UnattendedJavaActivityRequestResponseCreator.java:23) at com.appiancorp.process.engine.UnattendedJavaActivityRequest.getJavaActivityResultResponse(UnattendedJavaActivityRequest.java:89) at com.appiancorp.process.engine.UnattendedJavaActivityRequest.execute0(UnattendedJavaActivityRequest.java:72) at com.appiancorp.common.persistence.data.AppianDataUserContextProvider.executeWithConsistentDataReads(AppianDataUserContextProvider.java:143) at com.appiancorp.process.engine.ProcessContinuationRequest.executeOuter(ProcessContinuationRequest.java:68) at com.appiancorp.process.engine.ActivityRequest.executeOuter(ActivityRequest.java:41) at com.appiancorp.process.engine.ContinuationRequest.execute(ContinuationRequest.java:136) at com.appiancorp.process.engine.UnattendedJavaActivityRequest.execute(UnattendedJavaActivityRequest.java:125) at com.appiancorp.process.workpoller.UnattendedRequestHandlerBean.onMessage(UnattendedRequestHandlerBean.java:36) at com.appiancorp.process.workpoller.WorkItem.run(WorkItem.java:110) at org.springframework.jca.work.SimpleTaskWorkManager$DelegatingWorkAdapter.run(SimpleTaskWorkManager.java:241) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:840) Caused by: java.lang.ClassNotFoundException: Unable to load class 'javax.imageio.stream.ImageInputStream' because the bundle wiring for pdftools is no longer valid.
  • With the above example, how would you get the unique page number for each page? I am trying to implement somthing like "Page "&{ac!StartPage+1}&" of "&getnumberofpages(pv!uploadedFile), but I cannot seem to get the unique page figured out.