1

次のコードを使用して画像のサイズを変更しますが、問題は元の縦横比を維持しないことです。縦横比を損なうことなく画像のサイズを変更する方法はありますか?

BufferedImage img1 = new BufferedImage(800, 600,
                    BufferedImage.TYPE_INT_RGB);
            img1.createGraphics()
                    .drawImage(
                            ImageIO.read(
                                    new File("/home/rvkydmpo/webapps/ROOT/images/profilePicture/"
                                            + fileName)).getScaledInstance(800,
                                    600, Image.SCALE_SMOOTH), 0, 0, null);
            ImageIO.write(img1, "jpg", new File("/home/rvkydmpo/webapps/ROOT/images/profilePicture/" +fileName));
4

2 に答える 2

0

コードを実行しているサーバーはわかりませんが、Linux ベースのシステムで実行している場合は、imagemagick convertコマンドを使用できます。

JMagickと呼ばれるimagemaickを呼び出すために利用できるJavaライブラリもあります

于 2013-05-14T15:09:56.543 に答える