を持っていて、String
それを画像にペイントしたいと思います。ポイントをペイントして線を描くことはできますが、2Dグラフィックスチュートリアルのテキスト部分を読んだ後でも、どうすればString
それを描画にペイントできるかわかりません。
間違ったチュートリアルを見ている場合を除いて(ただし、Javaについて何かを検索し、Graphics
またはを使用して文字列をペイントするたびに取得するチュートリアルGraphics2D
です)、私はまだ困惑しています。
を持っていて、String
それを画像にペイントしたいと思います。ポイントをペイントして線を描くことはできますが、2Dグラフィックスチュートリアルのテキスト部分を読んだ後でも、どうすればString
それを描画にペイントできるかわかりません。
間違ったチュートリアルを見ている場合を除いて(ただし、Javaについて何かを検索し、Graphics
またはを使用して文字列をペイントするたびに取得するチュートリアルGraphics2D
です)、私はまだ困惑しています。
次の方法を確認してください。
g.drawString();
このdrawString()
メソッドは、必要なことを実行します。
使用例:
protected void paintComponent(Graphics g){
g.setColor(Color.BLACK);
g.drawString(5, 40, "Hello World!");
}
String
座標は、描画している左下に関するものであることを忘れないでください。
文字列の形を試してみたい場合(例:塗りつぶし:赤とストローク:青):
Graphics2D yourGraphicsContext=(...);
Font f= new Font("Dialog",Font.PLAIN,14);
FontRenderContext frc = yourGraphicsContext.getFontRenderContext();
TextLayout tl = new TextLayout(e.getTextContent(), f, frc);
Shape shape= tl.getOutline(null);
//here, you can move your shape with AffineTransform (...)
yourGraphicsContext.setColor(Color.RED);
yourGraphicsContext.fill(shape);
yourGraphicsContext.setColor(Color.BLUE);
yourGraphicsContext.draw(shape);