Ensemble columnwidth d'une table dans XWPFTableCell (docx)

Je suis de la génération d'un fichier docx avec apache poi. Dans le wordfile, j'ai ajouter des tableaux, dont les colonnes ont une largeur je voudrais voir fixes.

Actuellement, j'utilise la technique décrite ici: http://apache-poi.1045710.n5.nabble.com/Is-there-a-way-to-set-the-width-of-a-column-in-XWPFTableCell-td5711491.html

Fondamentalement, ce qui suppose la mise en

cell.getCTTc().addNewTcPr().addNewTcW().setW(BigInteger.valueOf(cols[j])); 

sur chaque cellule de cette colonne.

Le problème est que si le fichier ne s'ouvre parfaitement dans MS Word, open office interprète les valeurs que j'ai mis à la columnwidth différemment. Alors que MS Word apparemment il assume la 20-ème d'un point que les unités, open office semble utiliser les points de la place, et, par conséquent, toutes les colonnes sont 20 fois plus large lorsque j'ouvre le document généré dans OO.

Généralement quand je vois quelque chose de bizarre dans la sortie générée, j'ai décompresser le fichier docx, voir ce que la valeur doit être et modifier mon code. Mais open office ne semble pas être en mesure d'enregistrer sur docx, donc je ne peux pas changer la valeur d'OO l'enregistrer en arrière et de voir si un Mot encore, interprète le document correctement dans le but de trouver un cross-application de la solution.

Aucune idée de comment je régler la largeur de la colonne de la table de sorte que les deux OO et MS Wordt l'interprète de la même manière?

OriginalL'auteur Yves V. | 2013-11-18