PDFsharp & MigraDoc Foundation
http://forum.pdfsharp.de/

Error while merging multiple PDFs
http://forum.pdfsharp.de/viewtopic.php?f=2&t=1546
Page 1 of 1

Author:  gouletpo [ Mon Feb 14, 2011 6:02 pm ]
Post subject:  Error while merging multiple PDFs

I am trying to combine multiple PDFs into a single PDF. The PDFs come from SSRS, from some LocalReports that I processed. I am using PDFSharp, because it is already used through out the project. However, the outputDocument.addPage(page) methods throws an InvalidOperationException("Cannot change document.") exception. I have tried many different way of doing this, but I can't get it to work...

Here my method, where all the inputs have already been checked:

Code:
private static void saveFile(string fileName, params byte[][] bytes)
{
    try
    {
        PdfDocument outputDocument = new PdfDocument();
        for (int i = 0; i < bytes.Length; i++)
        {
            using (MemoryStream stream = new MemoryStream(bytes[i]))
            {
                PdfDocument inputDocument = PdfReader.Open(stream, PdfDocumentOpenMode.Import);
                foreach (PdfPage page in inputDocument.Pages)
                {
                    outputDocument.AddPage(page); //throws the exception !!!
                }
            }
        }
        outputDocument.Save(fileName); 
    }
    catch (Exception ex)
    {
        throw new Exception("Erreur lors de l'enregistrement du fichier", ex);
    }
}


From the examples I saw on the web, this seems to be the right way of doing this... I am opened to other suggestions for merging my PDFs, but I would rather not use another 3rd party lib, like ITextSharp, because PDFSharp is already used in the project.

If it matters, I am using VS2010 Pro on a Win7 machine.

Author:  Thomas Hoevel [ Tue Feb 15, 2011 9:32 am ]
Post subject:  Re: Error while merging multiple PDFs

Also discussed here:
http://stackoverflow.com/questions/4995 ... g-pdfsharp

Page 1 of 1 All times are UTC
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/