我正在使用ABCpdf版本5來將某些html頁面轉換爲PDF。ABCpdf 5編碼問題(特殊字符)
我基本上是用HttpServerUtility.Execute()
- 方法,以便檢索的PDF格式的HTML:
System.IO.StringWriter writer = new System.IO.StringWriter();
server.Execute(requestUrl, writer);
string pageResult = writer.ToString();
WebSupergoo.ABCpdf5.Doc pdfDoc = new WebSupergoo.ABCpdf5.Doc();
pdfDoc.AddImageHtml(pageResult);
response.Buffer = false;
response.ContentType = "application/pdf";
response.AddHeader("Content-Disposition", "attachment;filename=MyPdf_" +
FormatDate(DateTime.Now, "yyyy-MM-dd") + ".pdf");
response.BinaryWrite(pdfDoc.GetData());
現在像Umlaute(AOU)一些特殊字符與一個空的空間所取代。有趣的不是全部。我弄明白了: 在我擁有的html頁面內。
`<meta http-equiv="content-type" content="text/xhtml; charset=utf-8" />`
如果我把它解析掉,所有的特殊字符都會被正確渲染。但在我看來,這似乎是一個醜陋的黑客。
在前幾天我沒有使用HttpServerUtility.Execute()
,但我讓ABCpdf調用URL本身:pdfDoc.AddImageUrl("someUrl");
。在那裏我沒有這樣的編碼問題。
我可以試試其他什麼?
我意識到ABCpdf Verion 7似乎沒有這個問題。 – sl3dg3 2012-01-03 16:56:52