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

Programming data for display: the PDF story

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
Tweet

More Decks by Chas Emerick

Other Decks in Technology

Transcript

  1. Programming data for
    display, the PDF Story
    Papers We Love Conf 2017
    Chas Emerick — @cemerick
    PDFDATA.io

    View Slide

  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

    View Slide

  3. Input
    Computation /
    Communication
    Output

    View Slide

  4. Input
    Computation /
    Communication
    Display

    View Slide

  5. Display via…
    ● Telegraph / teletypes
    ● Dynamic displays
    ○ Oscilliscope/CRT/vector
    ○ Raster displays (LCDs)
    ● Printers
    ○ Fax machines
    ○ Laser printers
    ○ Offset printers
    ● CAD/CAM

    View Slide

  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…

    View Slide

  7. ASCII, the ~first page description language

    View Slide

  8. ASCII, the ~first page description language

    View Slide

  9. View Slide

  10. Vector
    Graphics

    View Slide

  11. Raster
    Images

    View Slide

  12. Text &
    Typography

    View Slide

  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

    View Slide

  14. Reid, Brian. PostScript and Interpress: a comparison. Newsgroup posting, March 1985. http://bit.ly/2hzPHoK

    View Slide

  15. Warnock, John. The Camelot Project. Spring, 1991. https://blogs.adobe.com/acrobat/files/2013/09/Camelot.pdf

    View Slide

  16. PostScript
    Stack-based interpreted language
    Embedded bitmaps, referencing fonts externally
    Interpreters pushed to the “edge”, i.e. printers, graphics
    display drivers on workstations

    View Slide

  17. PDF
    (vamping)

    View Slide