wkhtmltopdf 创建空 pdf

wkhtmltopdf creating empty pdf

我正在使用 wkhtmltopdf 将 HTML 页面转换为 ASP.NET 中的 PDF。以下是我的编码

protected void Button_Click(object sender, EventArgs e)
{
    Process p = new Process();
    p.StartInfo = new ProcessStartInfo();
    p.StartInfo.UseShellExecute = false;
    p.StartInfo.RedirectStandardOutput = true;
    p.StartInfo.FileName = Server.MapPath("~/wkhtmltopdf/wkhtmltopdf.exe");
    string arguments = "\"" + "http://localhost:51528/settings/InvoiceStatementPrint.aspx?InvoiceID=48\"" + " " + Server.MapPath("~/settings/" + "InvoiceDetail_1.pdf");
    p.StartInfo.Arguments = arguments;
    p.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
    p.StartInfo.CreateNoWindow = true;
    p.Start();
    p.WaitForExit();
    p.Close();
    p.Dispose();
}

URL 创建正确的页面。但是 InvoiceDetail_1.pdf 生成黑页 PDF。我的代码有什么问题吗?

您的代码没有问题,问题出在您的输入 HTML 上。单独尝试 运行 该工具,您会看到相同的结果。

顺便说一句,TuesPechkin 提供了一种从 .NET 调用 wkhtmltopdf 的更简单方法。