Home › Forums › DITA and XMetaL Discussion › Table column widths rendering as NaN% › Reply To: Table column widths rendering as NaN%
Reply to: Table column widths rendering as NaN%
May 23, 2012 at 10:36 pmSome quick tests here show that this is a general issue for all outputs that use the DITA OT's “XHTML” transtype for the main portion of their content (CHM, Java Help, Eclipse, WebHelp, etc).
From what I can tell the DITA OT ends up inserting the value “NaN” (ie: “Not a Number”) because it is dividing by 0 (division by zero is not allowed of course). It does this as it tries to create a percentage value for the
I suspect the latter is more likely because the DITA OT gives similar results when units for CALS table column widths are specified (eg: “25.4mm”, “2.54cm”, “1in”, “72pt” and “6pi” are all valid CALS colwidth values containing units). Using units results in “NaN%” in the HTML output as well. So you should avoid using those until the DITA OT supports them.
The quick fix would be to set all colwidth values to “1*” if you want all columns to be the same size (I assume that's the case as you have not already changed them). You can do that in the Table Properties dialog in XMetaL Author Enterprise, or if you don't care if they are precise you can drag column boundaries.
You may wish to log a defect with the DITA Open Toolkit project here: https://github.com/dita-ot/dita-ot/issues
It doesn't look like this is a known issue (my search was for “NaN” and variations).
The CALS table editing capabilities are a general part of the authoring tool that is designed to follow the CALS specification, so it is designed to work the same way for all DTDs that use CALS (DITA, DocBook, etc). I can ask our developers to look into what might be done to help with this problem, but in general we don't like to dumb down our editor in order to help with limitations in other software. I think the ideal fix is to alter the DITA OT to properly support the CALS spec and perform appropriate transformation. A quick fix might be to change the files using script upon saving, replacing any occurrences of “*” in colwidth with “1*”. I'm not sure how much work that would be, but I might have a look if I have time.