12

オンライン画像編集ツールの作成に取り組んでいます。右側に空白のある画像を追加する方法を参考にしています。たとえば、この画像を参照してくださいここに画像の説明を入力

4

3 に答える 3

15

おそらく、既存の画像から新しい画像を作成したいのですが、新しい画像の左右に空白がありますか?

パディングされていない画像が BufferedImage であり、「画像」と呼ばれているとします。各辺に必要な空白の量が「w」であるとします。あなたがしたいのは、オリジナルよりも幅の広い新しい BufferedImage を作成し、全体を白くペイントし、最後にその上に小さいイメージを描画することです:

BufferedImage newImage = new BufferedImage(image.getWidth() + 2 * w, image.getHeight(), image.getType());

Graphics g = newImage.getGraphics();

g.setColor(Color.white);
g.fillRect(0, 0, image.getWidth() + 2 * w, image.getHeight());
g.drawImage(image, w, 0, null);
g.dispose();
于 2011-04-29T20:05:15.277 に答える
3

誰かが同様の問題に遭遇した場合、私は間違いなく imgScalrをお勧めします。文字通り 1 行でパディングを追加できますimageSource= Scalr.pad(imageSource,pad,Color.White);

于 2014-09-30T11:07:26.857 に答える
2

適切なサイズの新しいBufferedImageオブジェクトを作成します。Graphics.fillRect()それを白く塗るために使用します。で画像を左上隅に描画しdrawImage()ます。次に、新しい画像を保存します。

于 2011-04-29T19:01:26.237 に答える