How to create a JavaScript action to open the attachments panel?

Tags: actionsjavascript actionattachmentsfile attachmentiText 5

Is there an action which opens the attachments panel? Not right away, but when the user presses some text?

I know the writer.setViewerPreferences(PdfWriter.PageModeUseAttachments) but I don't want it to open right away.

Posted on StackOverflow on Sep 12, 2012 by Michael A

This can be done using a JavaScript action:

Chunk c = new Chunk("Show / Hide attachment panel");
c.setAction(PdfAction.javaScript(
    "app.execMenuItem('ShowHideFileAttachment');", writer));
document.add(new Paragraph(c));

Note that this won't work on all viewers (app = Adobe Reader) and it won't work if people disable Javascript.