- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我尝试使用 C# 中的库 TheArtOfDev.HtmlRenderer.PdfSharp.PdfGenerator
生成 pdf 文档,但正文 HTML 中的内联图像没有显示。有没有人有想法或解决方案如何做到这一点?
在电子邮件正文中添加嵌入图像,例如src="CID:",这实际上是在生成的 PDF 中不加载图像的问题。
这是我的示例输入:
<b>Dell</b><hr style='background-color: #000000 !important;color: #000000 !important;border: solid 1px #000000 !important;'/><br/><table border='0'><col width='100'><col><tr><td style='font-weight:bold;'>From:</td><td>dipak patel</td></tr><tr><td style='font-weight:bold;'>Sent:</td><td>Friday, April 12, 2019 06:58 PM</td></tr><tr><td style='font-weight:bold;'>To:</td><td>dipak patel</td></tr><tr><td style='font-weight:bold;'>Subject:</td><td>Test Embedded image</td></tr></table><html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head>
</head>
<body lang="EN-IN" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p><span style="color:black">My test no is HO284848<o:p></o:p></span></p>
<p><span style="color:black"><o:p> </o:p></span></p>
<p><span style="color:black">This is my embedded image.<o:p></o:p></span></p>
<p><span style="color:black">e.g.<o:p></o:p></span></p>
<p><span style="color:black"><o:p> </o:p></span></p>
<p>
<img width="643" height="345" style="width:6.7in;height:3.5916in" id="Picture_x0020_1"
src="cid:image001.jpg@01D4F161.62577ED0">
<span style="color:black"> <o:p></o:p></span></p>
<p><span style="color:black"><o:p> </o:p></span></p>
<p><span style="color:black">Thanks<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</body>
</html>
Here you can see the <img> tag which contains the src="cid:image001.jpg@01D4F161.62577ED0" which is embedded image and not loaded in PDF.
这是我的代码片段:
public static string GeneratePDFWithHTML(string BodyHTMLText, string SavedFilePath)
{
//PdfSharp.Pdf.PdfDocument pdf = TheArtOfDev.HtmlRenderer.PdfSharp.PdfGenerator.GeneratePdf(BodyHTMLText, PdfSharp.PageSize.Letter, 20, null, null, OnImageLoad);
PdfSharp.Pdf.PdfDocument pdf = TheArtOfDev.HtmlRenderer.PdfSharp.PdfGenerator.GeneratePdf(BodyHTMLText, PdfSharp.PageSize.Letter);
////pdf.AddPage()
pdf.Save(SavedFilePath);
return "";
}
private static void OnImageLoad(object sender, HtmlImageLoadEventArgs e)
{
using (var client = new WebClient())
{
var url = e.Src;
//e.Attributes.Add("width", "90");
if (!e.Src.StartsWith("http://") && !e.Src.StartsWith("https://"))
{
//url = Properties.Settings.Default.BaseUrl.TrimEnd('/') + e.Src;
url = "http://localhost:58909/content/" + e.Src;
}
using (var stream = new MemoryStream(client.DownloadData(url)))
{
//e.Callback(PdfSharp.Drawing.XImage.FromStream(stream));
}
}
}
I have commented out the code in function GeneratePDFWithHTML which i actually needs with OnImageLoad event to load the embedded images.
这是输出:
This is the generated pdf result where you can see the image not loaded correctly
请注意,图像不在输出 pdf 中。
如何让图像出现在输出 .pdf 中?
最佳答案
有趣的是,我昨天遇到了完全相同的问题!有趣的是,这是怎么发生的,嗯?
我找到了解决问题的办法。有关详细信息,请在此处查看我的 stackoverflow 帖子:
https://stackoverflow.com/a/55286205/1289046
PS - 如果元级别的任何人都在看这个,我应该在另一个线程中链接到我的答案,还是应该在这里发布相同的答案?
关于c# - 如何在最终生成的 pdf 文档中使用库 TheArtOfDev.HtmlRenderer.PdfSharp.PdfGenerator 下载嵌入式图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55274365/
我正在使用 Nreco PdfGenerator 从 HTML 生成 pdf。一切都很好,但字符彼此靠得很近,不容易阅读。 有什么办法可以解决这个问题吗? HTML 版本 PDF版本 这是我的CSS
我已经使用这个工具大约一个星期了,现在,今天,它刚刚停止工作。我已将其余代码恢复到以前的状态,但我不断收到相同的错误。 我从抛出的异常中得到的是: An exception of type 'Syst
我正在使用 NReco.PdfGenerator 库从 html 生成 pdf。它适用于英语。我还需要包括 non-english language(marathi) ,在那种情况下不能像预期的那样工
我将“NReco.PdfGenerator.dll”用于我的网络项目(Visual Studio 2012,c#),并且它可以成功地从互联网网址(如 http://google.com.tw)导出但是
这个问题属于 NReco's PdfGenerator组件。 我使用此产品在使用 C# 的 .NET MVC 框架内将动态生成的 HTML 字符串转换为 Pdf 文档。 在寻找向 Pdf 页脚添加页码
我正在使用NReco .PdfGenerator 用于我的 PDF 文档(该组件基于 WkHtmlToPdf 工具),我的代码允许我创建一个 pdf,调用带有参数 Controller 、操作、模型的
我正在使用 VS2015 和 C# 开发 WPF 应用程序。 在该应用程序中,我有一个使用 NReco PdfGenerator 将 HTML 转换为 PDF 的功能。 在我的 PDF 中,我有一些标
我正在使用 NReco.PdfGenerator.LT从 HTML 页面创建 PDF 文档。如果我只是将它指向 wkhtmltopdf.exe 可执行文件,这在 Windows 上工作正常,但这在 L
我尝试使用 C# 中的库 TheArtOfDev.HtmlRenderer.PdfSharp.PdfGenerator 生成 pdf 文档,但正文 HTML 中的内联图像没有显示。有没有人有想法或解决
我是一名优秀的程序员,十分优秀!