To show the bug:
1. Create a Wiki page contains non-latin(Chinese, in my case) content. You can just copy some Chinese characters from zh.wikipedia.org
2. Enter "info" page of the Wiki page. In "Views and Feeds", click "PDF". The exported PDF file render Chinese characters incorrectly.
Screen shots can be found in attachment.
In folder rwiki/rwiki-impl/impl
1. Modify sakai.properties
Add an entry: fop.pdf.default.font=AR PL UMing CN
"AR PL UMing CN" is a Chinese font. In Linux, it can be installed via "ttf-arphic-uming'
Admin can set this to any font he/she like, only if the font is installed in the OS.
2. Modify pom.xml
Update Apache FOP version from 0.9.3 to 1.0
3. Modify src/java/uk/ac/cam/caret/sakai/rwiki/component/service/impl/fop.cfg.xml
Add some code to let FOP auto detect System fonts.
4. Modify src/java/uk/ac/cam/caret/sakai/rwiki/component/service/impl/xhtml2fo.xslt
Set fo:root font to DEFAULT_FONT
5. Modify src/java/uk/ac/cam/caret/sakai/rwiki/component/service/impl/BaseFOPSerializer.java
Update the FOP related code to couple with FOP 1.0.
6. Modify src/test/uk/ac/cam/caret/sakai/rwiki/component/service/impl/test/XSLTEntityHandlerTest.java
Remove a test case which would not pass compile check due to changes of FOP API
I modify the code based on Sakai 2.8.1. The source and "diff" are in the attachment(without sakai.properties).
Also, you can see the effect after fix the bug as attachment