Comment redimensionner l'image d'origine en une taille d'image commune en Java?
En Java, comment redimensionner une image dans une taille par défaut pour n'importe quel type ou taille de l'image?
source d'informationauteur Venkat
Vous devez vous connecter pour publier un commentaire.
Il y a plein d'articles sur la façon de le faire sur le net, quelque chose comme ces devrait vous aller à:
Vous ne pouvez pas redimensionner une image à partir d'une taille de fichier à l'autre, MAIS, la plupart des JPG/PNG/GIF/etc. ont sensiblement les mêmes tailles de fichiers basé sur leurs résolutions. Par exemple, un 200ko compressé JPG peut généralement être dire 1280x960 dans la taille. Si c'est le cas, vous ne cible de toutes vos opérations de redimensionnement de la taille de la cible des images de cette taille et de l'obtenir à peu près la contrainte de taille que vous voulez.
Vraiment un moyen facile de faire cela est d'un usage très simple java le redimensionnement d'image de la bibliothèque (licence Apache 2) cela ne vient tout droit pour vous. Exemple de code pour redimensionner devrait ressembler à ceci:
Votre proportions de l'image sont à l'honneur, la bibliothèque fait un meilleur jugement sur la méthode, il doit utiliser en fonction de la quantité de changement dans l'image dû à la mise à l'échelle (le plus RAPIDE, à l'ÉQUILIBRE ou de la QUALITÉ) et le mieux soutenu Java2D types d'images sont toujours utilisées pour faire la mise à l'échelle pour éviter le problème du "noir" résultats ou vraiment terrible de la recherche de la sortie (par exemple, trop flou des images en format GIF).
Aussi, si vous voulez forcer la sortie le meilleur résultat possible en Java, l'appel d'API devrait ressembler à ceci:
L'utilisation de la bibliothèque de la Java2D recommandé différentiels de mise à l'échelle pour vous pour vous donner le meilleur résultat.
Vous pouvez lire tous les commentaires dans la bibliothèque (le code lui-même est doc ed lourdement) pour voir tous les différents JDK bugs qui sont travaillé autour de ou les optimisations qui sont faites pour améliorer les performances ou l'utilisation de la mémoire. J'ai passé BEAUCOUP de temps à affiner cette mise en œuvre et ont eu beaucoup de bons commentaires de gens de le déployer dans les applications web et d'autres projets Java.