使用wkhtmltopdf,ASP.NET Core中的docker将HTML转换为PDF
我试图在我的ASP.NET核心应用程序中使用wkhtmltopdf将HTML转换为PDF。 我已经添加了一个wkhtmltopdf.exe到我的项目,并标记为复制到一个输出总是。
这是我的代码:
var htmlContent = receiptBody; var wkhtmltopdf = new FileInfo(@"/app/Configuration/Wkhtmltopdf/wkhtmltopdf.exe"); var converter = new HtmlToPdfConverter(wkhtmltopdf); var pdfBytes = converter.ConvertToPdf(htmlContent);
该文件已经build立,但在:
var pdfBytes = converter.ConvertToPdf(htmlContent);
我收到一个错误:
System.Exception:无法生成PDF:已损坏的pipe道—> System.IO.IOException:已损坏的pipe道
我使用Docker运行我的应用程序,这里是我的dockerfile:
FROM microsoft/aspnetcore:1.1.2 ARG source WORKDIR /app ENV ASPNETCORE_URLS http://project-test:80 EXPOSE 80 COPY ${source:-obj/Docker/publish} . RUN apt-get update RUN apt-get install-y libgdiplus ENTRYPOINT ["dotnet", "ProjectTest.dll"]
也许应该以某种方式安装wkhtmltopdf为Linux?