我想使用FlyingSaucer将一个包含阿拉伯字符的HTML页面转换为PDF文件,但生成的PDF不包含组合字符,并向后打印输出。
HTML:
null
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body style="font-size:15px;font-family: Arial Unicode MS;">
<center style="font-size: 18px; font-family: Arial Unicode MS;">
<b>
<i style="font-family: Arial Unicode MS;">
جميع الحقوق<br />
</i>
</b>
</center>
</body>
</html>
null
Java摘录:
String inputFile = "c:\\html.html";
String url = new File(inputFile).toURI().toURL().toString();
String outputFile = "c:\\html.pdf";
OutputStream os = new FileOutputStream(outputFile);
ITextRenderer renderer = new ITextRenderer();
renderer.getFontResolver().addFont("c://ARIALUNI.TTF", BaseFont.IDENTITY_H,BaseFont.EMBEDDED);
renderer.setDocument(url);
renderer.layout();
renderer.createPDF(os);
os.close();
我怎样做才能得到正确的结果?
是的,它与RTL相关,但如果你没有选择与字体相关,那么你可以使用Arial字体,它有你所需要的所有字符。请单击此链接https://stackoverflow.com/A/47801584/3335776查看代码。
飞碟默认字体的一些问题
您可以在这里找到完整的文章
当我使用阿拉伯字体时,我面临类似的对齐问题。阿拉伯语是RTL语言。您需要特定的JAR来生成RTL语言的PDF。当前,当您正在尝试生成PDF时,模式是正常的LTR,因此您正在获得当前输出。
我有一本字典,里面有阿拉伯语单词,比如 输出: 我不想在创建数据时对阿拉伯语文本进行编码。json文件。如果我不使用json。转储,然后它工作正常,但它显示单引号'而不是双qoute“
当我使用ITextRenderer将html转换为PDF时,这是我的代码 阿拉伯语连字怎么做?
我正在尝试使用最新的雅虎天气apihttps://weather-ydn-yql.media.yahoo.com/forecastrss它工作得很好,但当我设置语言(lang=ar AE)时,它返回带问号的json响应,而不是阿拉伯字符。例如“城市”:“城市”对于英语来说,这是可以的。 我没看到留档里有关于utf设置的东西 当我打开雅虎的天气页面https://www.yahoo.com/news
我在Swift中遇到了一个印地语数字集整数值的问题 这是关于我们如何将印地语转换成英语的任意数值。 想知道如何将一种语言的数字转换成另一种语言的数字吗 例如:试图将印地语数字转换为阿拉伯语 这是我在操场上试过的代码: 这是它仅以英文显示的输出 我已经搜索了这个问题,但没有找到这种具体的解决方案,所以发布了一个新的问题。 注意:不寻找任何静态转换扩展或此类函数。 编辑:我不想要这种解决方案 在Swi
问题内容: 我想将 包含英文数字的a转换为阿拉伯数字,所以我将其转换为 输出 还有另一种更有效的方法吗? 问题答案: 这使字符串长度为3036的版本比原来的版本提高5倍。这还会检查以确保您只更改数字。如果不执行if / else检查,则速度大约是6倍。 如果字符不正确/放错了位置,请原谅我。我不得不从另一个来源找到其中一些。
问题内容: 我从HTML页面中将一个字符串输入到Java HTTPServlet中。根据我的要求,我得到了显示汉字的ASCII码: “&#21487;&#20197;&#21578;&#35785;&#25105;” (无空格) 如何将该字符串转换为Unicode? HTML代码: Java代码: 如果我打印问题[0],则会得到以下值:“&#21487;&#20197;&#21578;&#3578