3

重複の可能性:
Graphics2D を使用してテキストを BufferedImage にオーバーレイし、BufferedImage を返す

私の質問は、文字列を画像に永続的に描画する方法です。

文字列を描画してから画像を更新すると、文字列がディスプレイに表示されなくなります。

4

2 に答える 2

5

..文字列を画像に永続的に描画する方法。

あなたが意味するならBufferedImage、それは簡単です。

  1. GraphicsイメージからまたはGraphics2Dインスタンスを取得します。
  2. それに文字列を描画します。
  3. グラフィックス オブジェクトを破棄します。

仕事は終わった。画像を表示するには、画像をラベルに追加します。

Imageインスタンスではなくインスタンスがある場合はBufferedImage、元の画像と同じ大きさのバッファリングされた画像を作成し、上記の手順 2. (文字列を描画) の前にグラフィックス インスタンスにペイントします。

于 2012-07-14T13:51:39.787 に答える
2

テキストが常に画像の上に表示されるようにするには、drawString呼び出しを内側に配置しますpaint(Graphics g)

コードの一部を投稿していただけると助かりますが、おそらく間違った場所から drawString を呼び出していると思います。テキストを上にして画像を保存したい場合は、別の問題です。私はおそらくそれに使うでしょうjavax.imageio.ImageIO.write

于 2012-07-14T13:28:12.077 に答える