I have had to change the way I use PdfConverter because it is so slow. When looking at the use, I noticed that even though I only asked for 1 single page to be converted, the conversion was very long when I sent an 18-page PDF compared to when I sent a 1-page PDF.
It is like StartPage and EndPage are not being used to determine how much of the PDF to work on. It is acting like it is converting the entire PDF then returning only the pages desired…inefficient.
Original (Very Slow because converting the whole PDF instead of just the single page requested)
//Bug in PdfConverter object doesn’t close handle on the file so instead
//sending stream so that we can control use.
FileStream pdfFile = new FileStream(inputFilePath, FileMode.Open);PdfConverter converter = new PdfConverter();
converter.BindPdf(pdfFile); //inputFilePath);
converter.StartPage = pageNumber;
converter.EndPage = pageNumber;
converter.DoConvert();
converter.GetNextImage(outputFilePath, ImageFormat.Jpeg);pdfFile.Close();
Rework (To Speed up…but still slow…I am now having to use Extract of specific page desired)
PdfFileEditor pdfEditor = new PdfFileEditor();
bool isExtracted = Extracted(pdfEditor inputStream, pageNumber, pageNumber, tempStream );
if (isExtracted)
{
//Now convert single page
PdfConverter converter = new PdfConverter();
converter.BindPdf(tempStream);
converter.DoConvert();
converter.GetNextImage(outputStream); //DEFAULT image format is JPEG
}
Maybe this is an issue to be resolved?