2014-09-05 2 views
3

У меня есть некоторые «большие» html-файлы 4Mb +.Какой самый быстрый способ конвертировать Html в Pdf?

Затем я конвертирую один файл в PDF через Pechkin (.NET Wrapper for WkHtmlToPdf static DLL). Я могу спокойно спать около 3-5 минут.

Выходной файл PDF имеет 2 Мб + и около 500 страниц внутри.

var html = "...html..."; 
var data = HtmlToPdf2(res); 
Console.WriteLine("HtmlToPdf2 done: " + sw.Elapsed); 

...

private static byte[] HtmlToPdf2(string html) 
{ 
    var pechkin = new SimplePechkin(new GlobalConfig()); 
    var pdf = pechkin.Convert(new ObjectConfig() 
          .SetLoadImages(true) 
          .SetZoomFactor(1.5) 
          .SetPrintBackground(true) 
          .SetScreenMediaType(true) 
          .SetCreateExternalLinks(true) 
          ,html); 
} 

Мой Секундомер сказать:

Start: 00:00:00.0007693 
TransformXMLToHTML done: 00:00:03.6661490 
HtmlToPdf2 done: 00:03:50.7784590 
WriteAllBytes done: 00:03:50.7871326 

Мои пользователи будут плакать, когда они так долго ждать.

+0

Какую цель вы ожидали бы и почему? –

+3

Вы пробовали передать исходный html в командную строку wkhtmltopdf (http://wkhtmltopdf.org/) на вашем компьютере и получили сопоставимые результаты? Вы можете написать сценарий Powershell, чтобы обернуть его и в таймер. –

+0

Vash - Дамиан, я ожидаю чего-то около 1, может быть, 2 минуты. –

ответ

1

Я думаю, что создание 500 страниц PDF за 3-5 минут вполне разумно. Может быть, это может быть перенесено в пакетное задание, позволяющее пользователям делать что-то еще какое-то время?

+0

Is is sad way, но если я не разрешу эту проблему, конечно, я буду иметь идти t путь. Благодаря! –

Смежные вопросы