【发布时间】:2021-01-18 07:52:38
【问题描述】:
目前我正在研究使用 itext7 将 html 转换为 pdf 的功能。但是当我尝试将 pdf 页面大小适合 html 内容时,我被卡住了。
我的期望是删除这些空间,使 pdf 看起来像 html。
这就是html的样子
这是我目前使用的代码
private MemoryStream _GenerateFile(string html)
{
ConverterProperties converterProperties = new ConverterProperties();
converterProperties.SetImmediateFlush(false);
converterProperties.SetBaseUri("");
MemoryStream stream = new MemoryStream();
PdfWriter writer = new PdfWriter(stream);
PdfDocument pdf = new PdfDocument(writer);
pdf.SetDefaultPageSize(PageSize.A4);
HtmlConverter.ConvertToPdf(html, pdf, converterProperties);
var pdfBytes = stream.ToArray();
pdf.Close();
MemoryStream result = new MemoryStream(pdfBytes);
result.Position = 0;
return result;
}
我尝试过的事情
- 删除页面大小选项
- 添加边距:0(这只会删除html上方的空间
- 添加填充:0
请随时在这里提出任何建议,谢谢。
更新
感谢您的建议,我已经尝试了所有建议并没有解决我的问题。同时在中途我们决定将itext7改为aspose。所以这个问题不再重要了。
【问题讨论】:
-
你确定要这个吗?打印机可能会切断部分页面。
-
这能回答你的问题吗? iText 7 can not set margin