2010-12-09 73 views

Répondre

0

Ceci est également publié à Indent Positioning in DOCX (où il a beaucoup mieux mise en forme que ce que je pouvais faire ici).

Tout d'abord, pour obtenir l'état final des biens (y compris tirets), nous devons suivre les règles de la hiérarchie de style §2.7.2 de la spécification

Là-bas, il est dit à juste titre que la mise en forme directe (la pPr sous l'élément p) annule et remplace la version dans la définition de la liste

Depuis taquets de tabulation sont additifs, nous venons de les rassembler tous et nous avons l'ensemble des taquets de tabulation

en cas alors cet onglet est effacé et non seulement ne compte pas comme un onglet, mais efface tous les onglets parents (style, liste) qui sont à la même p osition.

Maintenant, nous affichons la liste comme suit:

Tout d'abord, vérifiez l'élément numFmt §2.9.18 pour voir le format des numéros dans la définition de la liste.

Ensuite, placez le texte dans l'élément lvlText §2.9.12 à l'emplacement du retrait final à gauche.

Si le numFmt n'est pas "bullet", nous devons remplacer la syntaxe% [1-9] de manière appropriée.

Maintenant, regardez l'élément suffixe §2.9.30 pour voir ce qui sépare la puce du texte.

Si c'est de l'espace ou rien, ajoutez un espace ou rien.

Si c'est un onglet, ajoutez un onglet. (Note: ceci est la valeur par défaut si le suffixe n'est pas défini!)

Ensuite, nous avons juste besoin de savoir quel est le prochain arrêt de tabulation.

Pour cela, tout taquet de tabulation après la fin du texte de niveau affiché est valide:

onglets définis avec l'élément onglet

Tout tiret suspendu (tant que l'élément doNotUseIndentAsNumberingTabStop §2.15.3.2 est non défini)

onglet par défaut arrête aux distances fixées par l'élément defaultTabStop §2.15.1.24

Enfin, nous justifions le résultat - du début du texte de niveau à la fin de la ligne. Vous justifiez maintenant de sorte que c'est toujours par rapport aux mêmes tabulations.

une chose - l'utilisation onglet suspendu se produit uniquement dans Word 2007+ (ie 2007, 2010 & plus tard) - et il est la valeur par défaut dans 2007+ ce qui en fait sorte de bizarre:

Pour Word fichier xml, le comportement par défaut de Word 2003 et 2007+ consiste à omettre l'onglet suspension virtuelle (Si Word 2007+, nous avons une option pour activer l'onglet suspension de Word)

Pour les fichiers doc Word 2003 standard ouverts dans Word 2003, le La tabulation virtuelle est toujours omise.Pour les fichiers Word Word 2003 ouverts dans Word 2007+, Word 2007+ définit automatiquement l'option "Ne pas utiliser le retrait en tant qu'interruption de tabulation pour les puces et la numérotation" sélectionnée et omet l'indentation de suspension.

Pour les fichiers Word 2007+ docx ouverts dans Word 2007+, Word 2007+ utilise l'indentation comme onglet supérieur pour les puces et la numérotation par défaut.

Pour les fichiers Word 2007+ docx ouverts dans Word 2003, Word 2003 omet l'onglet virtuel suspendu et, par conséquent, peut désaligner le document. Mais il y a une autre mise en garde sur le retrait virtuel - dans RTF/DOC/WordML (notez que cette règle ne s'applique pas à DOCX) l'arrêt de tabulation de suspension virtuelle est utilisé - si et seulement si - il n'y a pas d'arrêt de tabulation dans la liste, le paragraphe ou les styles (style liste/paragraphe) après la position virtuelle.