私はバッファリングされたイメージを描画しようとしています。私はフレーム上の画像を取得することができますが、それは画像上に描画するdoesntのようです。私はバッファリングされたイメージに描画する
BufferedImage bufferedImage = new BufferedImage(1280, 800,BufferedImage.TYPE_INT_RGB);
を使用する場合、文字列を描画するようだが、私はプロジェクトのために、画像上のいくつかの座標をプロットする必要があるように私は、理想的には、画像上に描画したいと思います。どんな指導も高く評価されます。悪いあなたがのBufferedImageオブジェクトを作成している
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.Toolkit;
import java.awt.image.BufferedImage;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class drawTest extends JPanel {
public void paint(Graphics g) {
Image img = createImageWithText();
g.drawImage(img, 20,20,this);
}
private Image createImageWithText(){
BufferedImage bufferedImage = new BufferedImage(1280, 800,BufferedImage.TYPE_INT_RGB);
// BufferedImage bufferedImage = new BufferedImage()
Graphics g = bufferedImage.getGraphics();
try {
bufferedImage = ImageIO.read(getClass().getResource("Unknown.jpg"));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
g.drawString("Point is here", 20,20);
return bufferedImage;
}
public static void main(String[] args) {
JFrame frame = new JFrame();
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
double width = screenSize.getWidth();
double height = screenSize.getHeight();
frame.getContentPane().add(new drawTest());
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// frame.setSize(200, 200);
frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
System.out.println(height + " " + width);
frame.setVisible(true);
}
}
はい、私は悪いコードatmを知っています。これは単なるテストファイルです。私はそれのまわりで頭を上げようとする前に、バッファリングされたイメージを使用していなかった。しかし、それでもありがとう、ありがとう。もし画像をピクセル化せずに画像のサイズを変更する方法を私に導くことができたなら、それは素晴らしいでしょう – bawa