Asp.net 使用wkhtmltopdf生成阿拉伯文PDF
我在使用wkhtmltopdf和C#制作阿拉伯语PDF时遇到问题Asp.net 使用wkhtmltopdf生成阿拉伯文PDF,asp.net,c#-4.0,pdf-generation,arabic,wkhtmltopdf,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.GetStrin
string HTML = "مرحبا";
Encoding utf = Encoding.GetEncoding("UTF-8");
Encoding unicode = Encoding.UTF8;
byte[] unicodeBytes = unicode.GetBytes(HTML);
HTML = utf.GetString(unicodeBytes);
下面是我的代码示例
string HTML = "مرحبا";
Encoding utf = Encoding.GetEncoding("UTF-8");
Encoding unicode = Encoding.UTF8;
byte[] unicodeBytes = unicode.GetBytes(HTML);
HTML = utf.GetString(unicodeBytes);
结果是""?????pdf格式
我尝试了'-q-n--将UTF-8'
参数编码为wkhtmltopdf,但没有成功。
你知道如何解决这个问题吗?我建议你看看一些阿拉伯语网站,尝试使用pdfcrowd或htm2pdf.co.uk进行转换-它们都使用wkhtmltopdf,只需将页面作为输入
string HTML = "مرحبا";
Encoding utf = Encoding.GetEncoding("UTF-8");
Encoding unicode = Encoding.UTF8;
byte[] unicodeBytes = unicode.GetBytes(HTML);
HTML = utf.GetString(unicodeBytes);
页面中的任何内容(字符串的格式)都是传递给wkhtmltopdf的内容。我建议您查看一些阿拉伯语网站,并尝试使用pdfcrowd或htm2pdf.co.uk进行转换-它们都使用wkhtmltopdf并将页面作为输入
string HTML = "مرحبا";
Encoding utf = Encoding.GetEncoding("UTF-8");
Encoding unicode = Encoding.UTF8;
byte[] unicodeBytes = unicode.GetBytes(HTML);
HTML = utf.GetString(unicodeBytes);
该页面中的任何内容(该字符串的格式)都是传递给wkhtmltopdf的内容。您的HTML字符串应具有正确的字符集和内容类型:
string HTML = "مرحبا";
Encoding utf = Encoding.GetEncoding("UTF-8");
Encoding unicode = Encoding.UTF8;
byte[] unicodeBytes = unicode.GetBytes(HTML);
HTML = utf.GetString(unicodeBytes);
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
您的HTML字符串应具有正确的字符集和内容类型:
string HTML = "مرحبا";
Encoding utf = Encoding.GetEncoding("UTF-8");
Encoding unicode = Encoding.UTF8;
byte[] unicodeBytes = unicode.GetBytes(HTML);
HTML = utf.GetString(unicodeBytes);
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
我通过创建临时HTML输入文件并将其发送到wkhtmltopdf引擎来渲染阿拉伯字符的唯一方法我通过创建临时HTML输入文件并将其发送到wkhtmltopdf引擎来渲染阿拉伯字符的唯一方法
string HTML = "مرحبا";
Encoding utf = Encoding.GetEncoding("UTF-8");
Encoding unicode = Encoding.UTF8;
byte[] unicodeBytes = unicode.GetBytes(HTML);
HTML = utf.GetString(unicodeBytes);
مرحبا
مرحبا
这可能对其他人有所帮助
string HTML = "مرحبا";
Encoding utf = Encoding.GetEncoding("UTF-8");
Encoding unicode = Encoding.UTF8;
byte[] unicodeBytes = unicode.GetBytes(HTML);
HTML = utf.GetString(unicodeBytes);
我使用的是阿拉伯语自定义字体,但服务器上没有安装
string HTML = "مرحبا";
Encoding utf = Encoding.GetEncoding("UTF-8");
Encoding unicode = Encoding.UTF8;
byte[] unicodeBytes = unicode.GetBytes(HTML);
HTML = utf.GetString(unicodeBytes);
必须安装它(+使用utf-8编码),然后它才能工作。这可能对其他人有所帮助
string HTML = "مرحبا";
Encoding utf = Encoding.GetEncoding("UTF-8");
Encoding unicode = Encoding.UTF8;
byte[] unicodeBytes = unicode.GetBytes(HTML);
HTML = utf.GetString(unicodeBytes);
我使用的是阿拉伯语自定义字体,但服务器上没有安装
string HTML = "مرحبا";
Encoding utf = Encoding.GetEncoding("UTF-8");
Encoding unicode = Encoding.UTF8;
byte[] unicodeBytes = unicode.GetBytes(HTML);
HTML = utf.GetString(unicodeBytes);
必须安装它(+使用utf-8编码),然后它才能工作。pdfcrowd正确地呈现了单词,htm2pdf没有,这里仍然没有解决方案pdfcrowd正确地呈现了单词,htm2pdf没有,这里仍然没有解决方案已经尝试过这一点:“我认为它在这里没有编码问题,我尝试使用记事本创建一个新的html文件,使用utf-8编码,并将其发送到wkhtmltopdf引擎。它正确地呈现了该文件。在我的情况下,我需要使用c#进行编码,这在我的情况下不起作用。请删除上述编码转换行,然后再次测试。c#中的字符串是Unicode+您可以尝试相同的结果..由于某种原因,转换不起作用,默认编码应该是Unicode,我试图将其转换为UTF-8,但没有成功,即使是wkHtmltoPdf--编码UTF-8似乎也不起作用。我已经尝试过这样做:“مح㶕㶕㶋”我认为它在这里没有编码问题,我尝试使用记事本创建一个新的html文件,使用utf-8编码,并将其发送到wkhtmltopdf引擎。它正确地呈现了该文件。在我的情况下,我需要使用c#进行编码,这在我的情况下不起作用。请删除上述编码转换行,然后再次测试。c#中的字符串是Unicode+您可以尝试相同的结果..由于某些原因,转换不起作用,默认编码应该是Unicode,我试图将其转换为UTF-8,但没有成功,即使wkHtmltoPdf--编码UTF-8似乎也没有任何作用
string HTML = "مرحبا";
Encoding utf = Encoding.GetEncoding("UTF-8");
Encoding unicode = Encoding.UTF8;
byte[] unicodeBytes = unicode.GetBytes(HTML);
HTML = utf.GetString(unicodeBytes);