Я мог преобразовать страницы PDF в изображения. если он составляет менее 50 страниц, он работает быстро ... если есть PDF более 1000 страниц ... он приобретает много времени для завершения. любой может рассмотреть этот код и заставить его работать на большой размер файла ... я использовал PdfLibNet DLL (не будет работать в 4.0) в .NET3.5 здесь мой пример кода:Конвертировать PDF-страницы в изображения более 1000
public void ConverIMG(string filename)
{
PDFWrapper wrapper = new PDFWrapper();
wrapper.RenderDPI = Dpi;
wrapper.LoadPDF(filename);
int count = wrapper.PageCount;
for (int i = 1; i <= wrapper.PageCount; i++)
{
string fileName = AppDomain.CurrentDomain.BaseDirectory + @"IMG\" + i.ToString() + ".png";
wrapper.ExportJpg(fileName, i, i, (double)100, 100);
while (wrapper.IsJpgBusy)
{
Thread.Sleep(50);
}
}
wrapper.Dispose();
}
PS: нам нужно разделить страницы и конвертировать в изображения параллельно, и нам нужно получить статус завершен.
Ну, да. Для одного: Thread.Sleep (50) ;? Что с этим. Если вы введете этот блок один раз для каждой из 1000 страниц, то это будет 50 секунд. Почему вы должны это делать? PDFWrapper работает в отдельном потоке? – aquinas
Действительно ли вам нужен Thread.Sleep (50)? Не могли бы вы снизить это до меньшего периода сна? На данный момент вы тратите 5% своего времени. – KingCronus
, если ExportJpg занят при преобразовании PDF в изображения, которые я объявил, чтобы подождать до 50 миллисекунд ... –