我想使用FlyingSaucer將包含阿拉伯字符的HTML頁面轉換爲PDF文件,但生成的PDF不包含組合字符並向後打印輸出。使用FlyingSaucer將包含阿拉伯字符的HTML頁面轉換爲PDF
HTML:
<?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>
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();
實際PDF結果:
預期PDF結果:
我能做些什麼,以獲得正確的結果?
其實你正試圖畫布圖像轉換爲PDF格式??? – CoderNeji 2015-07-07 06:53:48
這看起來像一個飛碟錯誤給我。阿拉伯語unicode字符處於明確定義的範圍內,顯然已知它們是RTL(從右到左)。顯然瀏覽器正在渲染RTL,但飛碟不是。將錯誤報告給Google。 – 2015-07-13 23:47:18
你有阿拉伯語格式的解決方案嗎? – Hana90 2017-02-06 10:03:31