DANDY:fo:attribut de largeur de bloc ignoré ?
-
23-08-2019 - |
Question
J'arrive à générer un PDF avec un graphique linéaire à partir de Google Chart, mais la qualité des titres des colonnes générées ne correspond pas à nos besoins, je souhaite donc générer moi-même.
Cette tâche doit être effectuée en utilisant [fo:table]
mais je n'arrive pas à positionner avec succès les titres (largeurs et marges/paddings).
En résumé, je veux mettre les titres en utilisant [fo:block]
définir l'attribut width plus une marge négative (c'est-à-dire width="1.5cm" margin-top="-2em"
), mais la largeur ne prend pas effet.
Savez-vous comment faire ?
Merci.
La solution 2
Enfin, je ne l'ai pas été en mesure de le faire, parce que [fo: inline]. Tente de rassembler tout l'espace disponible
Une astuce est de mettre les marges (gauche ou droite) à 90% ou plus à remplir cet écart, mais je n'ai alors aucune idée de la précédente [fo: inline] texte a été rendu dans un , deux ou plusieurs lignes.
La seule manière que je trouvais pour générer les titres de la colonne est en utilisant [fo: table]. En plus d'ajouter des marges (gauche et droite) pour chaque cellule
PS: J'utilise FOP-0,95
Autres conseils
La propriété "width" ne s'applique pas à fo:block (voir http://www.w3.org/TR/xsl11/#fo_block).Si vous souhaitez redéfinir la largeur, vous devez utiliser un fo:block-container (http://www.w3.org/TR/xsl11/#fo_block-container) ou un autre élément qui génère une zone dite de référence.Il est un peu difficile de comprendre quelle est exactement la mise en page attendue.Vous pouvez peut-être également expérimenter l'utilisation des propriétés "start-indent" et "end-indent" pour influencer indirectement la largeur réelle d'un fo:block.HTH
Pour FOP vous pouvez utiliser des tables pour définir la largeur au lieu de l'appliquer directement sur le bloc.