Sugesstion needed: pdf to swf page flipping in drupal

Events happening in the community are now at Drupal community events on www.drupal.org.
xamount's picture

On a newspapers site, I need to do something like this:

http://www.flashpageflip.com/demos/free

The source file I will have is a pdf of the actual printed newspaper, so ideally I would like to create a node and just upload the pdf and drupal auto-magically creates a page flip flash as shown above in the example.

I have searched around drupal.org for hours and been googling, but all the page flip software I have found thus far is paid software.

The closest module I have come across is http://drupal.org/project/ipaper

But you still depend on a 3rd party website. I don't think the client would like the idea of depending on a 3rd party website.

Any ideas? has anyone done this before using drupal?

Comments

I've done something similar

chrisyates's picture

http://www2.islandpacket.com/special-sections/destination_hilton_head_is...

We used a script that converted PDF > SWF, extacted text (for searchability), made a thumbnail, then imported a CSV file of everything into a 'print page' CCK node. The page flipping is done with a contrib module whose name I need to look up, and the UI is done with jQuery.

If this is similar to what you're looking for, I can write something up in greater detail.

Edit: I started to write something up a year ago... but it's very general:
http://www.christianyates.com/blog/drupal/how-save-crapload-money-conver...

Chris Yates
http://christianyates.com

very good alternative

xamount's picture

It's a tempting solution. Looks like to get it to work the way I want it might be a series of steps.

On your site you mentioned "with some proprietary workflow software". What software is that?

Also are these steps manually done by someone or does it all happen automatically? I imagine it can be all done automatically....

Looks like I can use SWFCombine to combine all the individual swf files into one page flipping swf file template.

Also how did you combine the output files (from multiplexing the pdf) into an xml feed?

We wrote a generic python

chrisyates's picture

We wrote a generic python daemon for managing workflows - moving files, running and monitoring processes. We used it for a lot of things, including this task.

That tool handled
• Converting PDF to SWF with swftools
• Extracting text from the PDFs with pdftotext (part of xpdf)
• Creating thumbnail images with imagemagick

Then it ran a perl script that gathered all of this stuff and generated and uploaded an RSS file to a server. Then came the only human interaction - someone would manually import the feed into Drupal (with simplefeed IIRC).

No reason this couldn't all be built into a module that monitored an import directory and imported PDFs via functions called from hook_cron. At the time, it was faster to do it offline.

I chose to make each page a node for the purpose of searchability, so that a user could run a keyword search and go straight to the page. If that's not important, you could use swftools to create a SWF from a multipage PDF, and use javascript and/or actionscript to implement the flipping.

Of course, searchability is at the mercy of the quality of the PDF. In our case, a lot of the ads were put into our advertising front end (which generated the PDFs) as TIFFs. This is why we considered including OCR in the process. Nowadays, you could also look at Robert Douglass' excellent apachesolr module, which allows attachment searching, and include the original (or a downsampled) PDF file in the feed.

fossie's picture

Hello,

I'm looking for some solution to do something simular:
- upload a presentation ppt or openoffice (or put it in a directory on the server and do the work with a deamon)
- do offline processing, split the presentation into seperate images and text with openoffice (at the command line it's working)
- import the image of one slide + text of that slide in a node (module or via services module)
- group all nodes (link them so the different slides are related 1st to 2nd and so on) from the presentation so the presentation can be browsed online on the drupal site.

So maybe can you give me some hints, code or other ideas to help me with this goal?

It will run on linux, python, perl is available, openoffice as a service (headless) to process, drupal on the same server (for the moment).

TIA,
Fossie

If I had to do it over again

chrisyates's picture

I'd honestly build it all in Drupal as a module that called the external binaries that did the processing steps.

I don't really have any code I could share, because the workflow manager was a multipurpose tool we had lying around, and the Perl script I used to assemble the products into an RSS feed was pretty one-off.

I'd think you could use some functions called from hook_cron in a drupal module to do the same thing, and skip the packaging into XML step - fire off a function to convert ODF files in a directory into images and text, and another to watch a folder where those files get dumped, and build nodes with file path references in CCK, images in image.module, or file attachments, then write a custom .tpl file to theme that content type.

possible solution

exile_ch's picture

hey there, maybe this helps:

1.: înstall lightbox2

2: download http://www.flashpageflip.com/FreeFPF.asp

copy the content to an accessable folder

call Default.html with lightbox (use rel="lighframe")

this is a nice workaround for me. if i remember, i will add a link here when the page is finished.

cheers

try issuu.com

j4's picture

works like a charm for me....

Hello You mentioned here to

akash_rawat's picture

Hello
You mentioned here to copy the contents to an accessable folder, can you please specify the sae, whre should I copy it under my root folder .?
And also how to call the respective html page of FPF .. ?

Thanks

Was just searching for a

SeanBannister's picture

Was just searching for a similar solution and found Page Flip.

Maybe this would work

gmclelland's picture

http://drupal.org/node/641372
http://drupal.org/project/pdf_to_imagefield

Basically you would store the images in a multi-value imagefield. Then create a view that would display the output as what ever the flash file needs (xml). Embed the flash file in your template with swftools that points to the view as it's datasource.

Have not tried the above solution, but I think it might work.

Hope that helps

Newspapers on Drupal

Group organizers

Group categories

Topics - Newspaper on Drupal

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds:

Hot content this week