Japanese characters do not display in body of PDF (DITA)

Having trouble installing Oxygen? Got a bug to report? Post it all here.
jspychka
Posts: 30
Joined: Fri Dec 10, 2010 9:43 pm

Japanese characters do not display in body of PDF (DITA)

Post by jspychka »

Hello,

When I generate a PDF with Japanese topics (xml:lang="ja_JP"), the headings of sections all appear in Japanese as do the bookmarks on the left, but the actual body text does not. The text appears as number signs (###).

I have the Arial Unicode MS Regular and Kozuka Mincho Pr6N R and Kozuka Mincho Gothic Pr6N M fonts installed in Windows/Fonts.

I am running Oxygen 12.1 with a custom app. However, I ran the Japanese ditamap with the standard Idiom FO processor and got pretty much the same problem only worse: the body text and the headings appeared as number signs. The bookmarks used the correct Japanese characters.

Any ideas on how to fix?

Thanks,

John
sorin_ristache
Posts: 4141
Joined: Fri Mar 28, 2003 2:12 pm

Re: Japanese characters do not display in body of PDF (DITA)

Post by sorin_ristache »

Hello,

Did you set a font for PDF output generated with the Idiom FO processor that covers the Japanese characters (follow the DITA part of the procedure)? The default fonts loaded by the FO processor probably will not cover them (it depends on the specific JVM font mapping from your computer). You can try also the simplified version of the font setup procedure.


Regards,
Sorin
jspychka
Posts: 30
Joined: Fri Dec 10, 2010 9:43 pm

Re: Japanese characters do not display in body of PDF (DITA)

Post by jspychka »

Thanks Sorin.

Tried the simplified version. Didn't work :( Now trying the complex version.

BTW: I forgot to mention that the Japanese characters in the body do render nicely in oXygen, Author/Text view.

Thx,

John
jspychka
Posts: 30
Joined: Fri Dec 10, 2010 9:43 pm

Re: Japanese characters do not display in body of PDF (DITA)

Post by jspychka »

Unfortunately, no luck with the complex version. It seems odd that the chapter and section heads, which are simple topic files with just a title, appear correctly in Japanese, but the body text does not. I suppose that tells me that the Japanese font is installed correctly.

Any ideas?

John
sorin_ristache
Posts: 4141
Joined: Fri Mar 28, 2003 2:12 pm

Re: Japanese characters do not display in body of PDF (DITA)

Post by sorin_ristache »

Hello,

You mentioned three PDF transformations but it is not clear exactly how they are different. You said previously:
jspychka wrote:When I generate a PDF with Japanese topics (xml:lang="ja_JP"), the headings of sections all appear in Japanese as do the bookmarks on the left, but the actual body text does not. The text appears as number signs (###).
and:
jspychka wrote:I am running Oxygen 12.1 with a custom app. However, I ran the Japanese ditamap with the standard Idiom FO processor and got pretty much the same problem only worse: the body text and the headings appeared as number signs. The bookmarks used the correct Japanese characters.
Now you are saying:
jspychka wrote:Unfortunately, no luck with the complex version. It seems odd that the chapter and section heads, which are simple topic files with just a title, appear correctly in Japanese, but the body text does not.
What were the differences between these transformations? What transformation did you run in the first case when the chapter and section headings appeared correctly in Japanese in the PDF output? Was it not Oxygen 12.1 or was it not the IDIOM FO processor? What is the custom application? I understand that the second transformation (the one that resulted in a PDF with both the body text and the headings displayed with number signs instead of Japanese characters) was performed in Oxygen 12.1 with the IDIOM FO processor (I assume it was the predefined DITA PDF scenario of Oxygen or a customization of this scenario, is that correct?).

Also I understand that the third transformation was the same as the second one except a Japanese font was configured for IDIOM FO as specified in the procedure in the User Manual. What are the fonts used in the PDF output that resulted from this third transformation? You can see them in Acrobat Reader by going to menu File -> Properties, the Fonts tab. Did the DITA PDF transformation report errors when creating the PDF result? Can you send us a text file with the content of the Oxygen output view where the DITA PDF transformation issued the console-style output messages?

If there were no errors in the Oxygen output view please send us a zip archive with the following content to try to debug the problem:
  • all the DITA files that go in the transformation (the DITA map + topic files),
  • the .ttf file(s) with the TrueType font(s) that you set in the configuration files from subfolders of the ${frameworks}/dita/DITA-OT/demo/fo folder,
  • the configuration files that you modified in the ${frameworks}/dita/DITA-OT/demo/fo folder (that is the font-mappings.xml and fop.xconf files) in the form that they were used in the third transformation,
  • the font metrics files that you specified inside ${frameworks}/dita/DITA-OT/demo/fo/fop/conf/fop.xconf

Regards,
Sorin
jspychka
Posts: 30
Joined: Fri Dec 10, 2010 9:43 pm

Re: Japanese characters do not display in body of PDF (DITA)

Post by jspychka »

Hi Sorin,

I managed to get it working. Basically, the problem was telling the right files to use the Arial Unicode MS font.

1. Add Arial Unicode MS font to C:\Windows\Fonts.
2. Add following code to \\demo\fo\fop\conf\fop.xconf:
a. <!-- Arial Unicode MS Regular -->
<font kerning="yes" embed-url="file:///c:/Windows/Fonts/ARIALUNI.ttf">
<font-triplet name="Arial Unicode MS" style="normal" weight="500"/>
</font>
3. In \\demo\fo\cfg\fo\font-mappings.xml, replace the value in the <physical-font char-set=”Japanese”> tag as follows:
a. <physical-font char-set="Japanese">
<font-face>Arial Unicode MS</font-face>
</physical-font>
b. There are three places in this file to make this change.
4. Replace “Helvetica” with “Arial Unicode MS” in \\demo\fo\xsl\fo\i18n-postprocess.xml as follows:
a. <xsl:otherwise>Arial Unicode MS</xsl:otherwise>
b. There are two places in this file to make this change.

That is what I did and it worked (somehow)!

John
Post Reply