How to convert and publish Large PDF Documents to the web

Making large documents available to your end users can sometimes be difficult leading to long waiting times and excessive memory consumption when trying to load the entire document at once. FlowPaper solves this by allowing you to split up your documents and downloading only the visible pages.

This also makes it possible to publish large documents to devices with lower memory and CPU power than a desktop.

Publishing documents in split up mode is easy. FlowPaper 1.4.5 and onwards provides you with out of the box scripts of how to publish large documents using PHP and ASP.NET. Make sure you set your configuration to 'split mode publishing' to use this functionality.

Publishing large documents manually to flash

In case you cannot run PHP on your server, splitting a document up using PDF2SWF is as simple as modifying your conversion command slightly:

C:\SWFTools\pdf2swf.exe Paper.pdf -o Paper%.swf -f -T 9 -t -s storeallcharacters

The % sign is what makes PDF2SWF create one file per page. Running this command should give you files "Paper1.swf", "Paper2.swf". FlowPaper recognizes loading up pages in split mode by the having SwfFile in the following syntax: {filename[*,padding],total pages}

Following our previous example, we can now modify SwfFile parameter slightly to fit our needs:
$('#documentViewer').FlowPaperViewer(
 { config : {
    SwfFile : "{Paper[*,0].swf,28}",
    Scale : 0.6,
    ZoomTime : 0.5,
    ZoomInterval : 0.1,
    FitPageOnLoad : false,
    FitWidthOnLoad : false,
    PrintEnabled : false,
    MinZoomSize : 0.2,
    MaxZoomSize : 5,
    localeChain : "en_US"
}});

We have changed our name from FlexPaper to FlowPaper so if you'are using an older version than 2.4.7 then use FlexPaperViewer instad of FlowPaperViewer when referencing the viewer.

In this example, we are instructing FlowPaper to load up pages in a split-up approach with a total of 28 pages, with 0 in padding</b>. The padding needs to be set to 1 should you have your files stored as "Paper01.swf", "Paper02.swf", ..