Pages: 1
Print
Author Topic: Issue when trying to create Chinese output  (Read 687 times)
Fa
Member

Posts: 22


« on: April 04, 2017, 06:55:00 AM »

Hi!

Using XMetaL 11 (and I get the same result with v.12), I am able to produce pdf output of my manuals for various languages (including Russian, as far as I can tell), but I am unable to produce the Chinese output.

I can open every single file in XMetaL without getting an error, but I just get the "deliverable could not be created..." message.

At first I thought it was because of changes I have made to files in the DITA_OT and Renderx folders, but I have tried it on my colleague's machine, that has a clean install, and I get the same result.

I have also tried to produce older documents for which I could successfully generate pdfs with XMetaL 6 in all languages, and same result: Chinese won't work.

So to be clear, I choose the "XMetaL enhanced pdf via RenderX XEP" option.

Just out of curiosity, I tried the "Book via RenderX" option, and I get an output, but without Chinese characters (i.e. all the Chinese characters are replaced with a white space. So I only get the few latin characters that are left in the Chinese text and the pictures. That's it. That could be a font option, since I don't know where the font (and other settings) for the book output are stored. But I haven't investigated further since this isn't what I need.

Has anyone ran into this issue or found an easy solution to the problem?

I attach a copy of the log, in case there is something there that can help.

Any hint will be very appreciated!

Best regards,
Fa


* DITA_OT_log.zip (9.77 KB - downloaded 40 times.)
Logged
Derek Read
Program Manager (XMetaL)
Administrator
Member

Posts: 2502



WWW
« Reply #1 on: April 04, 2017, 01:13:21 PM »

Your issue with missing glyphs (Chinese appearing as white space in the PDF when viewed, or possibly question marks) when using the Book via RenderX deliverable would be a font embedding issue. You must have made changes to the DITA OT to get any PDF output to embed the correct fonts into the PDF file so that Unicode characters above code point 255 have the proper glyphs embedded into the PDF (including Chinese and Russian). That is a requirement of the PDF format (as outlined by Adobe) and a limitation of how the DITA OT and RenderX are configured. Out of the box they are not configured to embed any fonts (that is discussed in various other threads on this forum that talk about getting to embed fonts into the PDF for various languages including Russian, Chinese and Greek -- bring up your forum profile and click on "Show Posts").

As to your main issue with "XMetaL Enhanced PDF via RenderX XEP" failing, until this is looked into in depth by someone to see if this is a failure with that deliverable, or due to changes in newer versions of the DITA Open Toolkit, I would suggest trying an older version of the DITA OT. XMetaL Author Enterprise 12 includes three versions of the DITA OT (2.4, 2.2 and 2.0). To switch to an older version:

1. Launch XMetaL Author Enterprise 12.
2. From the Tools menu select Configure Output.
3. On the Advanced tab locate the following and add an underscore to the front to disable it:

DITA_OT_DIR  =  %XMETAL_SHARED_ALL%\DITA_OT2.4
_DITA_OT_DIR  =  %XMETAL_SHARED_ALL%\DITA_OT2.4


4. On the Advanced tab locate the following and remove the underscores to enable it:

__DITA_OT_DIR  =  %XMETAL_SHARED_ALL%\DITA_OT2.2
DITA_OT_DIR  =  %XMETAL_SHARED_ALL%\DITA_OT2.2


5. If 2.2 doesn't work then you can enable 2.0. On the Advanced tab locate both of the following and add underscores to disable them:


DITA_OT_DIR  =  %XMETAL_SHARED_ALL%\DITA_OT2.4
_DITA_OT_DIR  =  %XMETAL_SHARED_ALL%\DITA_OT2.4

DITA_OT_DIR  =  %XMETAL_SHARED_ALL%\DITA_OT2.2
_DITA_OT_DIR  =  %XMETAL_SHARED_ALL%\DITA_OT2.2


With version 12, when neither version 2.4 or 2.2 of the DITA OT is enabled (using those overrides) then DITA OT version 2.0 is run. On most systems all three DITA OT versions will be located here:
C:\ProgramData\SoftQuad\XMetaL\Shared



Before trying XMetaL Author Enterprise 11 which version of the software were you using to successfully produce PDF output?

If it was quite old I suspect some changes you made to the DITA OT are no longer compatible with newer versions of the DITA OT. You may need to adjust both the files being altered and the changes. Significant architectural changes were made to the DITA OT around versions 1.5 / 1.6 / 1.7 as well as many feature additions and bug fixes since then. If you are just dropping files you previously modified onto a newer copy of the DITA OT without testing and debugging those changes they might be ignored (at best) or they might break (worst case) the DITA OT.

If you suspect that is the case and you do not have a systematic record of what was altered (which files were altered and why) you would have to do a diff comparison between your altered files and the equivalent new files in the current version of the DITA OT and try to figure out if each change is needed, whether the altered file still exists, or has been subsequently modified to add a new feature or fix some bug (perhaps a bug you fixed in a different way), or other things.
« Last Edit: April 04, 2017, 01:15:08 PM by Derek Read » Logged
Fa
Member

Posts: 22


« Reply #2 on: April 06, 2017, 06:36:54 AM »

Hello Derek,

Thank you for your answer. As I said in my original post I tried "Book via RenderX" out of curiosity, but again out of curiosity, I tested editing the pdf2 font mapping to correspond to what I have in the xep.xml file, and I got a much better result: I got most of the Chinese text, except for a few glyphs that did not display (I get the "missing character" symbol aka square), which I could then fix by extending the character range in i18N for zh_CN.

Regarding the "XMetaL enhanced pdf via RenderX XEP", my previous version of XMetaL was 6.0. I don't know what version of DITA_OT it used, but yes, there have been a lot of changes at least in how the folders and files are structured. What I did to get my customizations back was to use a diff tool to see everything I had done to the DITA_OT provided with XMetaL 6.0 by comparing the original DITA_OT folder with the one I had customized (and also the xep.xml file). I thought I had successfully transferred all my modifications to the DITA_OT2.2\plugins\com.xmetal.xmfo folder, where I believe the changes for pdf via renderX should be made.

Most of the changes have been successfully implemented (page size, fonts used, etc.), even Russian works: I get the output with no error. I have not yet tried producing other Asian languages I work with, but that's my next step (Japanese, Thai, Vietnamese). I'll see if these work or if I get the same issue as with Chinese. 

For most of the files, I have edited them to reflect the changes I had made for XMetaL 6.0, but I might indeed have, for one or two files, just copy/pasted (overwritten?) them instead of editing their equivalent in DITA_OT2.2. I will check, but I don't remember overwriting many files.

Thanks!

Fa
Logged
Pages: 1
Print
Jump to:  

email us