当使用HTML到PDF时,我得到奇怪的结果试图调整一点 在页面的死点没有彩色背景的文本。
现在,我似乎无法从顶部获得一个h1或p来填充 但我可以得到一个div来填充,但不能对齐中心。
请给我任何提示。
:}
PdfReader template = new PdfReader(Server.MapPath("~/Cirtificate.pdf"));
Document document = new Document(PageSize.A4);
PdfWriter writer = PdfWriter.GetInstance(document, new FileStream(Server.MapPath("~/test.pdf"), FileMode.Create));
document.Open();
PdfContentByte cb = writer.DirectContent;
PdfImportedPage page = writer.GetImportedPage(template, 1);
document.NewPage();
cb.AddTemplate(page, 0, 0);
WebClient wc = new WebClient();
string htmlText = wc.DownloadString("http://localhost:65061/TEST_OUTPUT_PAGE.html");
StringReader sr = new StringReader(htmlText);
XMLWorkerHelper.GetInstance().ParseXHtml(writer, document, sr);
document.Close();
Response.Redirect("~/test.pdf");
CSS
html, body {
display: block;
clear: both;
float: left;
position: static;
overflow: visible;
width: 100%;
height: 100%;
margin: 0px;
border: 0px;
padding: 0px;
background-color: #fff;
}
body {
font-family: Arial, Sans-Serif;
text-align: center;
color: #000;
font-size: 12px;
line-height: 100%;
text-align: center;
}
答案 0 :(得分:0)
有关各种对象的信息,请参阅this page for a list of supported CSS styles。我建议使用<p>
上的填充<div>
和<div>
上的对齐方式将<p>
包裹在var outputFile = System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop), "Test1.pdf");
using (var fs = new FileStream(outputFile, FileMode.Create, FileAccess.Write, FileShare.None)) {
using (Document document = new Document(PageSize.A4)) {
using (PdfWriter writer = PdfWriter.GetInstance(document, fs)) {
document.Open();
var html = "<html><head><title>Test</title></head><body><div style=\"padding-top:200px;\"><p style=\"text-align:center;padding-top:200px;\">This is a test</p></div></body></html>";
using (StringReader sr = new StringReader(html)) {
XMLWorkerHelper.GetInstance().ParseXHtml(writer, document, sr);
}
document.Close();
}
}
}
中。
{{1}}