Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Printable Large PDF on the Web

The Problem

I have a 35mb PDF file with 130 pages that I need to put online so that people can print off different sections from it each week.

I host the PDF file on Amazon S3 now and have been told that the users don't like to have to wait on the whole file to download before they choose which pages they want to print.

I assume I am going to have to get creative and output the whole magazine to JPGs and get a neat viewer or find another service like ISSUU that doesn't suck.

The Requirements and Situation

I am given 130 single page PDF Files each week (All together this makes up The Magazine).

  • Users can browse the Magazine
  • Users can print a few pages.
  • Can Pay
  • Automated Process

Things I've tried

  • Google Docs Viewer - Get an Error, Sorry, we are unable to retrieve the document for viewing or you don't have permission to view the document.
  • ISSUU.com - They make my users log in to print. No way to automate the upload/conversion.
  • FlexPaper - Uses SWFTools (see next)
  • SWFTools - File is too complex error.
  • Hosting PDF File with an Image Preview of Cover - Users say having to download the whole file before viewing it is too slow. (I can't get new users. =()

Anyone have a solution to this? Or a fix for something I have tried already?

like image 286
Jason Avatar asked Jan 23 '12 19:01

Jason


2 Answers

PDF documents can be optimized for downloading through the web, this process is known as PDF Linearization. If you have control over the PDF files you are going to use, you could try to optimize them as linearized PDF files. There are many tools that can help you on this task, just to name a few:

  • Ghostscript (GPL)
  • Amyuni PDF Converter (Commercial, Windows only, usual disclaimer applies)

Another option could be to split your file in sections and only deliver each section to its "owner". For the rest of the information, you can put bookmarks linking to the other sections, so that they can be retrieved also if needed. For example:

enter image description here

If the linearization was not enough and you do not have a way to know how to split the file, you could try to split it by page numbers and create bookmarks like these:

-Pages 1-100
-Pages 101-200
-Pages 201-300
...
-Pages 901-1000
-All pages*

The last bookmark is for the ambitious guy that wants to have the whole thing by all means.

And of course you can combine the two approaches and deliver each section as a linearized PDF.

like image 97
yms Avatar answered Oct 12 '22 00:10

yms


Blankasaurus,

Based on what you've tried, it looks like you are willing to prep the document(s) or I wouldn't suggest this. See if it'll meet your needs... Download ColdFusion and install locally on your PC/VM. You can use CF's cfpdf function to automatically create "thumbnails" (you can set the size) of each of the pages without so much work. Then load it into your favorite gallery script with links to the individual PDFs. Convaluted, I know, but it shouldn't take more than 10 mins once you get the gallery script working.

like image 27
AlexC Avatar answered Oct 12 '22 00:10

AlexC