Versions:
Aspose.Pdf 11.3.0.0
Aspose.Words 16.1.0.0
Error:
Result: Produces corrupted pdfs…
Error Message: There is a problem reading this document (14).
Meaning: Pdf is corrupted…
Simplified Code Snippet:
static void Main(string[] args)
{
string url1 = “C:\temp\input1.docx”;
string url2 = “C:\temp\input2.pdf”;
string url3 = “C:\temp\input2.pdf”;
// Gather Inputs.
Document input1 = WordToPdf(url1);
Document input2 = new Document(url2);
Document input3 = new Document(url3);
// Humor the array method… The actual implementation assumes that not
// all inputs have data, so it populates the array as necessary.
Queue queue = new Queue();
queue.Enqueue(input1);
queue.Enqueue(input2);
queue.Enqueue(input3);
// Actual Implementation converts result to Memory Stream, and then to byte array
// to be stored in the database.
Document collatedpdf = queue.Dequeue();
while (queue.Count > 0) {
collatedpdf.Pages.Add(queue.Dequeue().Pages);
}
// Save Collated Pdf.
collatedpdf.Save(“C:\temp\output.pdf”, SaveFormat.Pdf);
}
private static Aspose.Pdf.Document WordToPdf(string url)
{
// Load .docx file…
Aspose.Words.Document wordDoc = new Aspose.Words.Document(url);
// Convert .docx to .pdf
Aspose.Pdf.Document pdf = new Aspose.Pdf.Document();
using (MemoryStream ms = new MemoryStream())
{
wordDoc.Save(ms, Aspose.Words.SaveFormat.Pdf);
pdf = new Aspose.Pdf.Document(ms);
//ms.Position = 0;
}
return pdf;
}
}