Une suggestion ou un palliatif à essayer

La hauteur de la ligne ne peut-elle pas être récupérée lorsque le type de 
hauteur est forcé à com.sun.star.text.SizeType.FIX ? As-tu essayé de 
seulement modifier le type de hauteur de ligne via l'API sans toucher à la 
valeur de la hauteur.
Vérifie d'abord que cette hauteur n'a pas été miraculeusement mise à jour. Si 
ce n'est pas le cas, instancie un deuxième objet sur la ligne en question, 
(peut-être après avoir enregistré le document). Comme maintenant la ligne est 
de hauteur fixe tu devrais pouvoir y lire la propriété Heigth.

C'est à essayer, je ne l'ai pas fait, mais peut-être cela fonctionne-t-il.
Jean-Marc

Le mercredi 27 Mai 2009 20:50, christophe.devall...@ac-rouen.fr a écrit :
> Le 27 mai 2009 14:42, Bernard Marcelly <marce...@club-internet.fr> a écrit :
> > Je n'ai pas de solution à ta question, mais je pense que le principe est
> > : si on demande une hauteur automatique c'est pour ne pas s'en occuper
> > ;-)
>
> merci pour tes précisions qui confirment ce que j'avais constaté.
> Pour les besoins particuliers de mon extension, j'ai besoin de connaître la
> hauteur d'une ligne d'un tableau (de variations ou de signes pour les
> matheux) car je ne connais pas à l'avance ce que l'utilisateur aura mis
> dans les cellules (des champs équations notamment). C'est donc pratique que
> la hauteur soit variable mais pas pratique de ne pas pouvoir la récupérer
> par l'API car j'en ai besoin pour tracer des barres verticales qui ne
> soient pas des bordures (ce serait trop facile). Leur hauteur dépend donc
> de la taille des cellules.
>
> Je ne sais pas si c'est clair, je te joins un exemple.
>
> En tout cas, j'ai quand même réussi à récupérer la hauteur d'une ligne qui
> n'a pas une hauteur fixe. C'est de la grosse bidouille tellement moche que
> je préfère ne pas afficher le code ici. Mais ça marche.
> En gros voilà ce que je fais pour connaître la hauteur d'une cellule
> contenue dans une ligne :
>
> 1) je fixe la hauteur de la ligne à une faible valeur pour être sûr que le
> contenu sera collé à la bordure haute.
> 2) je crée une forme dans le curseur text de la cellule en tant que
> caractère
> 3) cette forme est collée à la bordure haute
> 4) je passe l'ancrage de cette forme en tant que page, ce qui me permet de
> connaître la position du haut de la zone texte de la cellule.
> 5) j'aligne le contenu de la cellule à BOTTOM
> 6) je fais varier 2 fois la hauteur de la ligne ce qui fait descendre la
> zone texte et la forme avec.
> 7) en notant à chaque fois la nouvelle position de la forme et en repassant
> finalement la ligne en hauteur "optimale"  j'arrive à en déduire la hauteur
> exacte de la cellule.
>
> j'avais prévenu, c'est pas joli, mais ça résout mon problème.
> A+

---------------------------------------------------------------------
To unsubscribe, e-mail: prog-unsubscr...@fr.openoffice.org
For additional commands, e-mail: prog-h...@fr.openoffice.org

Répondre à