【发布时间】:2015-07-17 04:18:36
【问题描述】:
我正在尝试从包含图像和 css 文件(如“bootstrap”)的 azure 网站将 HTML 转换为 PDF。
我的代码(与本案例的教程相同 - MVC c# - http://www.html2pdfrocket.com/Examples/CSharp)
string apiKey = "MY KEY";
string value = html; // SOME HTML IN STRING FORMAT
using (var client = new WebClient())
{
// Build the conversion options
NameValueCollection options = new NameValueCollection();
options.Add("apikey", apiKey);
options.Add("value", value);
// Call the API convert to an image
byte[] result = client.UploadValues("http://api.html2pdfrocket.com/pdf", options);
// Save the image to disk
System.IO.File.WriteAllBytes(Server.MapPath("~/PDF/somepdf.pdf"), result);
}
代码正在生成 pdf 文件,但没有 css 样式和图像。
我该如何解决这个问题?
html真的很简单,只有一张表格,一张图片和一个css文件“bootstrap”
我要在html中显示的图片是这样放置的:
<img id="image" src="~/Images/someimage.jpg" >
CSS 文件是:
<link href="~/Scripts/bootstrap/dist/css/bootstrap.css" rel="stylesheet" />
我也有一些这样的 CSS 类:
#header {
padding: 0;
margin: 0;
float: left;
position: relative;
min-height: 1px;
font-size: 12px;
}
我已经尝试放置图像和“引导程序”的完整路径,但它仍然无法正常工作。
【问题讨论】:
-
你最终做了什么来解决这个问题?我目前有同样的问题。
-
你好@emragins,好吧,我最终使用了另一个解决方案 - NReco:nrecosite.com/pdf_generator_net.aspx 他们有一个免费版本,它在我的项目中运行良好。
-
嗯...我试过了,但它似乎不适用于 azure 网站。也许我得再看看它。 (但我越来越多地认为我只需要切换到虚拟机——问题已解决。)感谢您的快速回复:)
-
我的临时解决方案是使用引导 CDN 并内联任何其他 css。我正在用 razor 构建 html,并且只是制作了一个部分视图,我可以将其包含在我的常见“打印”css 中。将图像嵌入为 base64 字符串也可以...
-
是的,如果您使用 Azure,NReco 会出现问题,我必须创建一个 Web 角色才能使其正常工作
标签: html css image azure pdf-generation