Я использую wkhtmltopdf для создания PDF из данного HTML. В основном у нас есть некоторые отчеты на основе диаграмм/диаграмм, поэтому мы создаем HTML с помощью нашего кода на C#, а затем используем WKHTMLTOPDF для создания PDF. Он работал нормально, но вчера он прекратил создание PDF. Я пытаюсь отлаживать и обрабатывать работы без каких-либо ошибок или сообщений. Просто мы не получили PDF в качестве вывода. Я пытаюсь запустить и использовать Wkhtmltopdf.exe из командной строки, и он создает PDF со всеми подробностями, как ожидалось.wkhtmltopdf: сбой при запуске C# Код
мой код
public static bool HTMLtoPDF(string HTMLPath, string PDFPath, PageOrientation orientation)
{
using (System.Diagnostics.Process proc = new System.Diagnostics.Process())
{
string dir = Path.GetDirectoryName(Assembly.GetAssembly(typeof(Vikasumit.VSCommon)).Location) + "\\wkhtmltopdf\\";
proc.StartInfo.WorkingDirectory = dir;
proc.StartInfo.RedirectStandardOutput = true;
proc.StartInfo.RedirectStandardError = true;
proc.StartInfo.CreateNoWindow = true;
proc.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.FileName = dir + "wkhtmltopdf.exe";
if (orientation == PageOrientation.Landscape)
{
proc.StartInfo.Arguments = " --page-width 11in --page-height 8.5in --margin-left 0.5cm --margin-right 0 --margin-top 1.25cm --margin-bottom 0 " + HTMLPath + " " + PDFPath;
}
else
{
proc.StartInfo.Arguments = " --page-width 8.5in --page-height 11in --margin-left 0.5cm --margin-right 0 --margin-top 1.25cm --margin-bottom 0 " + HTMLPath + " " + PDFPath;
}
proc.Start();
proc.WaitForExit();
string result = proc.StandardOutput.ReadToEnd();
proc.Close();
proc.Dispose();
}
return false;
}
Действительно, это работает отлично, этот код работает отлично PDF с одной или 2-х страниц, но этот отчет содержит 800 страницу [о 1.2MB HTML файла и выходной файл из cmmand проходит линия около 2,3 МБ.]
Любая идея, что может быть неправильным здесь? Это ограничение памяти для задачи ограничено или что? Благодарю.
Какие значения имеют PDFpath и HTMLPath? Кроме того, почему вы всегда вызываете ложь? – Nenotlep
PDFPath и HTMLPath получают полный физический путь к входным и выходным файлам, возврат false был частью ошибки, я попытался поймать раньше и просто оставить что-то там. Но приведенный выше код работает для небольших файлов с 2-10 страницами отчета, но не для 800 страниц отчетов. и это моя главная проблема. –
Арг какая раздражающая проблема :). Есть ли в StandardError что-нибудь? – Nenotlep