0

使用 RazorPDF 时,我无法显示希伯来语字符。我很想知道是否有可能,或者是否有任何其他好的解决方案可以将 HTML 转换为 PDF。最好的办法是指定视图(我使用的是 MVC 4)并获取 PDF 文档。

4

1 回答 1

0

对于云,您可以使用iTextSharp库来完成此操作。看看itextsharp.text.html.simpleparser.htmlworker

其他可靠的方法是使用 Ghostscript 库(我不确定你是否可以在云中使用它)。您可以先将 Html 转换为 Postscript,然后将 Postscript 转换为 PDF。

如果您需要最完整的 .NET Ghostscript 包装器,请查看:Ghostscript.NET

这是 iTextSharp Html 到 PDF 的示例:

private MemoryStream createPDF(string html)
{
    MemoryStream msOutput = new MemoryStream();
    TextReader reader = new StringReader(html);

    // step 1: creation of a document-object
    Document document = new Document(PageSize.A4, 30, 30, 30, 30);            

    // step 2:
    // we create a writer that listens to the document
    // and directs a XML-stream to a file
    PdfWriter writer = PdfWriter.GetInstance(document, msOutput);

    // step 3: we create a worker parse the document
    HTMLWorker worker = new HTMLWorker(document);

    // step 4: we open document and start the worker on the document
    document.Open();
    worker.StartDocument();

    // step 5: parse the html into the document
    worker.Parse(reader);

    // step 6: close the document and the worker
    worker.EndDocument();
    worker.Close();
    document.Close();

    return msOutput;
}
于 2013-09-04T07:55:11.523 回答