gpt4 book ai didi

c# - Pechkin HTML to PDF 该图像未显示在 pdf 中

转载 作者:太空宇宙 更新时间:2023-11-03 15:00:44 27 4
gpt4 key购买 nike

我正在使用 Asp.net(C#)。我正在尝试使用 Pechkin 将 html 转换为 PDF,PDF 转换成功..,但在我的 html 标签中,他们的图像没有以 PDF 格式显示,请帮助我

我的html代码是

<img id="ContentPlaceHolder1_img_header" 
src="/CompanyLogos/12_09_YYYY_07_41_48_logo.png" style="width:130px"

我的 .cs 页面代码是

byte[] pdfContent = new SynchronizedPechkin(
new GlobalConfig())
.Convert(
new ObjectConfig()
.SetLoadImages(true)
.SetPrintBackground(true)
.SetCreateExternalLinks(true)
.SetAllowLocalContent(true),
html);

Msg.Attachments.Add(new Attachment(new MemoryStream(pdfContent), filename.ToString()));

最佳答案

至于你的图片,你需要将它转换为 base64,非常粗略的例子

var base64 = convertTobase64(myImg);

<img src=base64 />

可以找到在 Asp.NET 中将图像转换为 base64 的示例 here .将图像转换为 base64 字符串后,将图像的源设置为 base64 字符串而不是图像 URL。然后您的图像将出现在您的 PDF 中。

如果您想在 javascript/html 中完成此操作,那非常简单。

<canvas id='imgCanvas' style='display:none;'></canvas>

var dataUrl;
var myImg = new Image();
var canvas = document.getElementById('imgCanvas');

$(myImg).on('load', function(){
canvas.height = img.height;
canvas.width = img.width;
var context = canvas.getContext('2d');
context.drawImage(img, 0, 0);
dataUrl = canvas.toDataUrl('png');
});

img.src = '/CompanyLogos/12_09_YYYY_07_41_48_logo.png'

然后您只需将图像标签的来源设置为 dataUrl 变量,它就会呈现在您的 PDF 中。

关于c# - Pechkin HTML to PDF 该图像未显示在 pdf 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46305889/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com