使用wkhtmltopdf制作阿拉伯语PDF

时间:2012-12-18 16:06:54

标签: asp.net c#-4.0 pdf-generation arabic wkhtmltopdf

使用wkhtmltopdf和C#生成阿拉伯语PDF时遇到问题。

下面的

是我的代码作为样本

 string HTML = "مرحبا";
            Encoding utf = Encoding.GetEncoding("UTF-8");
            Encoding unicode = Encoding.UTF8;
            byte[] unicodeBytes = unicode.GetBytes(HTML);
            HTML = utf.GetString(unicodeBytes);

结果是?????在pdf 我已经尝试了'-q -n --encoding UTF-8'参数到wkhtmltopdf甚至没有成功。 任何想法如何解决这个问题?

5 个答案:

答案 0 :(得分:2)

您的HTML字符串应具有正确的字符集和内容类型:

 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

答案 1 :(得分:0)

我建议您查看几个阿拉伯网站并尝试使用pdfcrowd或htm2pdf.co.uk进行转换 - 它们都使用wkhtmltopdf并将页面作为输入。

该页面中的内容(因此该字符串的格式)是您传递给wkhtmltopdf的内容。

答案 2 :(得分:0)

我通过创建临时HTML输入文件并将其发送到wkhtmltopdf引擎来设法渲染阿拉伯字符的唯一方法

答案 3 :(得分:0)

<html>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<body>
       مرحبا
</body>
</html>

与我合作wkhtmltopdf 0.12.1
在C#中只需将HTML字符串保存在临时html文件中并运行wkhtmltopdf命令后删除临时html文件

答案 4 :(得分:0)

这对其他人可能有帮助。

我使用的是阿拉伯语的自定义字体,但我的服务器上没有安装。

必须安装它(+使用编码utf-8)才有效..