PI 3.2 de l'Image Hauteur/Largeur de contrôle
À l'aide de POI version 3.2
Problème: Pas capable de redimensionner une image à son origine, en hauteur et en largeur.
Je suis en mesure d'ajouter une image dans le fichier excel.
Après l'ajout de l'image j'appelle l'image.resize(); la méthode.
Plus tard, j'ai redimensionner les colonnes du fichier excel en appelant
la feuille.setColumnWidth(columnindex, columnwidth)
l'image perd de sa hauteur/largeur d'origine.
S'il vous plaît aider.
OriginalL'auteur | 2009-04-17
Vous devez vous connecter pour publier un commentaire.
J'ai trouvé que vous ne devez PAS appeler
picture.resize()
jusqu'à ce que aprèssheet.autoSizeColumn(i)
même si vous ne faites pas appelautoSizeColumn(i)
sur la colonne à laquelle l'image est ancrée.OriginalL'auteur John kendall
Sur un HSSFWorkbook avec une police personnalisée, je n'ai la suite pour obtenir un logo à afficher dans la droite dimensions:
Où j'ai mis LOGO_HEIGHT... et LOGO_WIDTH.. pour le voulait la taille en pixels de l'image.
L'image qui en résulte n'a pas été à son rapport original et non de la taille de pixel.
J'ai donc utilisé la taille attendue /current ratio de la taille et ajusté LOGO_WIDTH.. et LOGO_HEIGHT.. en conséquence. Pas beau, mais il fonctionne :/
Et ne pas appeler
Picture.resize()
par la suite.Voir Apache POIU Bug 52504 ou ce groupe de discussion sur les pi
Image.resize()
et POI guide rapide pour insérer des images.Mise à jour: code actuel ressemble à ça, l'image originale est 2000x450:
Je ne pouvais pas trouver votre question, mais j'ai ajouté l'actuel code utilisé, il utilise LOGO_MARGIN = 2 et je fais appel pic.redimensionner par la suite 🙂
ouai, disons juste que j'ai été... muet. sry pour le dérangement 🙂 thx.
OriginalL'auteur flob
Ne devriez pas simplement s'en tenir à l'image de l'objet et de l'appel de redimensionnement() tout dernier, après votre setcolumnwidth (le)s sont-ils faits?
OriginalL'auteur jwl
Bonne solution est d'utiliser redimensionner() la fonction à l'échelle de l'argument:
Et ne pas appeler à l'Image.resize() par la suite. Ça veut dire quoi? Est-ce buggy méthode?
OriginalL'auteur Piotr