Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Programming data for display: the PDF story

B8ee952abb6620c1c93b3acb46cd391c?s=47 Chas Emerick
September 28, 2017

Programming data for display: the PDF story

At the 2017 Papers We Love Conf, a previously-scheduled speaker fell ill. With just 90 minutes to go before the vacant slot, the organizers asked me if I could fill in. I didn't have any sort of appropriate talk prepared, but given my long history working with PDF documents, I thought I'd be able to put together a reasonably-entertaining presentation on the history, heritage, and design decisions that led to the PDF file format and specification while living up to the high standards and expectations of the Papers We Love community.

I was so relieved that the result was well-received!


Chas Emerick

September 28, 2017


  1. Programming data for display, the PDF Story Papers We Love

    Conf 2017 Chas Emerick — @cemerick PDFDATA.io
  2. Prologue On the day of PWLConf 2017 (September 28th), one

    of the scheduled speakers fell ill. The PWL organizers (Zeeshan Lakhani & Darren Newton) asked me to step in approximately 1h30m prior to the newly-open timeslot. I do plan to complete and refine these materials for future presentations…but aside from this prologue, this deck is as it was that afternoon. Darren, Zeeshan: Thanks
  3. Input Computation / Communication Output

  4. Input Computation / Communication Display

  5. Display via… • Telegraph / teletypes • Dynamic displays ◦

    Oscilliscope/CRT/vector ◦ Raster displays (LCDs) • Printers ◦ Fax machines ◦ Laser printers ◦ Offset printers • CAD/CAM
  6. “Page Description Language” Any characterization of the layout and contents

    of a page (and collectively, a document) that is more efficient and/or expressive than a visually-equivalent bitmap of that page. • DVI (via LaTeX) • Interpress • PostScript • PDF • …dozens more…
  7. ASCII, the ~first page description language

  8. ASCII, the ~first page description language

  9. None
  10. Vector Graphics

  11. Raster Images

  12. Text & Typography

  13. How PDF came to be • Evans & Sutherland •

    Chuck Geschke and John Warnock => Xerox • Interpress @ Xerox • Chuck Geschke and John Warnock => Adobe* • PostScript @ Adobe • PDF @ Adobe
  14. Reid, Brian. PostScript and Interpress: a comparison. Newsgroup posting, March

    1985. http://bit.ly/2hzPHoK
  15. Warnock, John. The Camelot Project. Spring, 1991. https://blogs.adobe.com/acrobat/files/2013/09/Camelot.pdf

  16. PostScript Stack-based interpreted language Embedded bitmaps, referencing fonts externally Interpreters

    pushed to the “edge”, i.e. printers, graphics display drivers on workstations
  17. PDF (vamping)