boazsegev / combine_pdf

A Pure ruby library to merge PDF files, number pages and maybe more...
MIT License
735 stars 157 forks source link

won't be able to load Adobe LiveCycle pdf file #57

Closed vsrboth closed 8 years ago

vsrboth commented 8 years ago

hi @boazsegev

It seems the library is having an issue loading pdf file that is creating using Adobe LiveCycle (containing xml file).

Link to download sample pdf

here is the error I got

screen shot 2016-05-01 at 9 58 19 am
boazsegev commented 8 years ago

Hi @vsrboth ,

Thank you for reporting the issue.

Could you please explain what you're experiencing?

I downloaded the file to test and CombinePDF.load loaded the file properly.

The warnings are due to the fact that some features aren't fully supported by the library, so the library is warning about potential data loss... but I didn't notice any data loss, did you?

Best regards, Bo.

vsrboth commented 8 years ago

Hi @boazsegev ,

thank you so much for your prompt assistance (so much appreciate [bow]).

Problem is it takes me forever to load the pdf file. Probably you can find another Pdf sample for testing.

screen shot 2016-05-01 at 2 45 09 pm

Note: I am using Mac - El Captian.

boazsegev commented 8 years ago

Hi @vsrboth ,

Are you experiencing long load times when using the terminal?

When using the Terminal, Ruby will print back the value of the last statement, which can take a very long time for PDF objects.

PDF objects are stored in a recursive Hash (some hash keys point to their parents). Your file will have a Hash with more then 500 Kb of data.

This will take irb a long time to process for printing.

You can avoid this slow "print" processing by giving irb a smaller object to print.

i.e. the following line will print out the PDF Hash, which will take a long time:

CombinePDF.load "test.pdf"

So, you can change it to the following line, which prints nil, which is fast:

pdf = CombinePDF.load "test.pdf"; nil

Then you can use the data in the pdf variable to test out any actions you need. i.e.

pdf.save "out.pdf"

Please tell me if this helps.

vsrboth commented 8 years ago

that's a magic ;) thank you so much @boazsegev

boazsegev commented 8 years ago

You're Welcome :)