Aspose.HTML html 转换 pdf 样式中postion超过单页高度后会跟浏览器效果不一样, 这个是html的效果:
image.png (25.6 KB)
但是预览的效果为:
image.png (46.9 KB)
我的html代码为:
<html>
<head>
<meta charset="utf-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>PDF测试验证</title>
</head>
<body style='width:210mm ;height:1184mm; margin:0;padding:0;border-bottom:solid 1mm;border-right:solid 1mm;' >
<div style='position:absolute;left:0mm;top:0mm; width:50mm;height:25mm;border:solid 1mm;text-align:center;padding-top:25mm;' > 默认字体aaa</div>
<div style='position:absolute;left:160mm;top:0mm; width:48mm;height:25mm;border:solid 1mm;padding:0;font-style:italic;padding-top:25mm;' > <strong>粗体+斜体</strong></div>
<div style='position:absolute;left:0mm;top:245mm; width:50mm;height:50mm;border:solid 1mm;font-family: "微软雅黑"' > 微软雅黑12313aaaaf</div>
<div style='position:absolute;left:160mm;top:245mm; width:50mm;height:50mm;border:solid 1mm;font-family:"宋体";background:url(http://www.divcss5.com/img201301/divcss5-logo-2013.gif) ' > 宋体1231231发发发</div>
<div style='position:absolute;left:51mm;top:51mm; width:108mm;height:193mm;border:solid 1mm;font-family: sans-serif;padding:0.1px;'></div>
<div style='height:500mm'>
<table border="solid 1px red" bordercolor='red' cellspacing="0cm" cellpadding="0cm" style="margin-left:0px;" >
<tr><td>公司名称<td/><td>项目名称<td/><td>销售金额<td/><td>回款金额<td/><tr/>
<tr><td><td/><td><td/><td><td/><td><td/><tr/>
<tr><td>afafafa<td/><td>bbb<td/><td>ccc<td/><td>ddd<td/><tr/>
<tr><td>afafafa<td/><td>bbb<td/><td>ccc<td/><td>ddd<td/><tr/>
<tr><td><td/><td><td/><td><td/><td><td/><tr/>
<tr><td>afafafa<td/><td>bbb<td/><td>ccc<td/><td>ddd<td/><tr/>
<tr><td>afafafa<td/><td>bbb<td/><td>ccc<td/><td>ddd<td/><tr/>
<tr><td><td/><td><td/><td><td/><td><td/><tr/>
<tr><td>afafafa<td/><td>bbb<td/><td>ccc<td/><td>ddd<td/><tr/>
</table>
</div>
</body></html>
转换的代码为:
var hfile = new Aspose.Html.HTMLDocument(@"C:\Users\chentl\Desktop\faf.html");
// render to PDF & XPS
using (var renderer = new Aspose.Html.Rendering.HtmlRenderer())
{
renderer.Render(new Aspose.Html.Rendering.Pdf.PdfDevice(options, Path.Combine(dataDir, Guid.NewGuid().ToString() + ".pdf")), hfile);
}
辛苦了 我认为应该是div的高度过高导致的转换的效果和浏览器的效果有差别,非常期待您的回复。