Pushing the limits of PDFs. First, what are they?
September 27, 2008 8:39 PM   Subscribe

When it comes to document interactivity, what are PDF files really capable of? Which features are best for creating dynamic displays of information? What are some of the best examples you've seen of interactive PDFs?

I'm trying to get a sense of how PDFs, as one of the most standard document formats in the business world, can provide a more dynamic, interactive presentation of a document's contents, rather than just a static "start here, finish here" experience.

Some of the specific things I'd like to know are:
-Is it possible to create an area where more information can be hidden/shown at will, based on reader action? What about user input, so that instead of clicking each time I want to see more information, I check a box at the beginning of the document, or type in a number of extra info pieces I want displayed per area?

-Can the document maker create a PDF that 'calls home' to the web for the latest information? Can the document be saved with the latest info available for offline viewing later? Can this call be based on reader action, or does it have to happen automatically each time the document's opened?

-What about images? Can I let a reader click to see different images in the same space (selecting which scale to see a graph at, for example)?

And, as bolded above, I'd really love to see examples of the best uses of PDF features you know of for document interaction, or dynamic display of information.

Thanks for any insights!
posted by ElfWord to Computers & Internet (10 answers total) 12 users marked this as a favorite
You can embed VRML in PDFs. For instance, with s2plot. This means that texture-based volume rendering can be stuck in there and spun around and interacted with.
posted by headlessagnew at 9:20 PM on September 27, 2008

The PDF standard is close kin to Adobe's Postscript, a language originally developed to make it easier to talk to printer hardware. Postscript (and, I'm pretty sure, PDF) is a Turing-complete language, and so any problem that can be solved by any computer anywhere can in principle be solved by a PDF reader and an appropriately-formed document.

Of course, "possible in principle" does not have much to do with "achievable in practice": you could make the same statement about any Turing-complete language, including this one.

PDFs are plain text files (though they're usually compressed); you can tweak what they do in a vanilla editor like Notepad or Emacs. There are lots of books on the standard, and open-source readers and writers. You can certainly do simple forms, and do spreadsheet-type math on the input. I'd expect the most features from Adobe's reader software, since Adobe still controls the standard; you would have to be careful not to make you supercool interactive PDF not turn out as a "your browser doesn't support frames, go away" experience for users who are not as up-to-date as you.
posted by fantabulous timewaster at 10:01 PM on September 27, 2008 [1 favorite]

I just did an interview with PressDisplay.com. Their entire business model is based on simple PDF's. Their software makes the pdf searchable for keywords in the stories and advertisements. Any URL, Phone number, or url is dynamic. If you do click a phone number you can connect with your Skype connection. Each page is mapped for readership info. The ads can be made dynamic to launch multimedia ads when clicked on.

It's really amazing. Check out the full interview on my site to get the details.
posted by Paleoindian at 11:31 PM on September 27, 2008

I've never delved into it myself but PDFs support the inclusion of JavaScript code, the same language that is used in web pages, for enabling dynamic behavior and features. It looks as though scripts can add and retrieve attachments within the document, which is at least one way the document might store new content downloaded from a web site. So in theory, it ought to be possible to do everything you're asking about above. But as ft points out, there can be a wide difference between "in theory" and "in practice".

P.S. From the stuff on Adobe's web site it looks like a new feature in the very latest Acrobat 9 is the ability to embed Flash, which probably makes any sort of dynamic content you could expect to see in a web page possible in a PDF document as well.
posted by XMLicious at 12:20 AM on September 28, 2008

Without delving into javascript or Flash, you can show and hide fields with rollovers and buttons (i.e., do all the stuff with image views you mention), open files and websites, play audio and video files, navigate to pages and custom page views within the doc...

Bob Connelly is probably the most visible author these days on rich-media pdfs. His web site and book are worth checking out. So is this book.

Adobe made some OK example pdf magazines, here and here, in 2006/7; they're no longer pursuing these apparently.

(The second link above will download a no-longer-available issue of Adobe mag which I've placed on my own website, and which I'll keep online for a few days; it's got several basic examples of the show/hide fields function being used to stack multiple images in the same spot; obviously, this functionality could be used to do a lot more interesting things than they're using it for.)

I make rich-media pdfs on CD as a business; they don't involve any of the java- or action-script-driven stuff alluded to above; they're basically video-tutorial delivery devices dressed up to look like full-color ebooks. One problem with them is explaining exactly what they are to potential, and often not-tech-savvy, customers. So I posted a sort of video tour guide to a recent example here; it shows most of the simple interactive and media-delivery options I've mentioned in action.

As f. timewaster says above, it's important to note that Adobe's Reader app is the ONLY pdf viewer I've found that allows all these interactive and media features. My main tech-support task, besides explaining to PC users that they really do need to download QuickTime if they want to see the videos, is explaining that Apple Preview should not be used to view my CDs, since none of the media or links will work outside of Reader...
posted by dpcoffin at 2:24 AM on September 28, 2008

Just to clarify a couple of things:

* PDF and PostScript have similar graphic models, but PDF is not a programming language like PostScript, and is in no sense Turing Complete.

* PDF's are binary and not simple text files. They can be damaged by editing in a text editor or transmitting over a 7-bit ASCII-only FTP connection.

* PDF supports layers, which might do some of what you want. Layers turn some content on and off by clicking in a hierarchy list on the left side of Acrobat Reader.

* PDF supports JavaScript, which can do all kinds of stuff, but offhand I don't know what tools are required to actually implement something. Probably some of the high end Adobe tools.

* PDF also supports XFA, which is an XML forms package Adobe bought and integrated. You can do lots of stuff in this, too, and XFA also has JavaScript support and (I believe) a way to store information in the current document; again your looking at the high end Adobe tools for creation.

* as dpcoffin says, if you go with JavaScript or 3D or XFA PDF stuff, you're probably limited to the Adobe viewer.

good luck.
posted by and for no one at 11:01 AM on September 28, 2008 [1 favorite]

One more thing: The PDF Reference
posted by and for no one at 11:02 AM on September 28, 2008

A useful-looking site for java-in-pdf questions, with examples: pdfscripting.com

And the Adobe Javascript Scripting Reference: 700 pages of pdf goodness
posted by dpcoffin at 1:26 PM on September 28, 2008

A final note (maybe; sorry—this is something I feel evangelical about):

I notice you've listed both Acrobat and InDesign as tags for this post. Here are the button options for creating interactivity in Acrobat 8 and ID CS3. Weird that they're not the same...? Together they reflect the possibilities for doing stuff in pdfs with rollovers, clicks or when opening or closing pages. New, cool, interlocking and useful ways to leverage these possibilities remain largely unexplored, as far as I can tell; apparently, not many folks are interested in, or even aware of, pdf interactivity. Hardly anybody expects, or wants, to do anything but page through a pdf while reading it, except maybe to be able to link to and from a TOC, or out to the web, so explaining what you've made remains a problem for limit-pushing pdf makers, in my experience.
posted by dpcoffin at 6:19 PM on September 28, 2008

Future readers of this thread might be interested in ConTeXt, a free TeX-based tool for making PDFs that includes some interactivity features.
posted by miyabo at 7:40 PM on March 23, 2009

« Older I dont have time to be asking about this. I have...   |   How do I get there from here?... Newer »
This thread is closed to new comments.