Swing/AnimatedGif のバックアップの現在との差分(No.8)
- category: swing folder: AnimatedGif title: Animated GIFでのコマ描画時処理 tags: [JLabel, Animation] tags: [JLabel, Animation, AnimatedGif] author: aterai pubdate: 2007-05-14T19:32:29+09:00 description: JLabelなどで使用できるAnimated GIFファイルをテストします。 image:
概要
概要
JLabel
などで使用できるAnimated GIF
ファイルをテストします。
Screenshot
Advertisement
サンプルコード
サンプルコード
#spandel
JLabel label1 = new JLabel("何もしない",
#spanend
new ImageIcon(getClass().getResource("no_disposal_specified.gif")),
JLabel.LEFT);
#spandel
JLabel label2 = new JLabel("そのまま残す",
#spanend
new ImageIcon(getClass().getResource("do_not_dispose.gif")),
JLabel.LEFT);
#spandel
JLabel label3 = new JLabel("背景色でつぶす",
#spanend
new ImageIcon(getClass().getResource("restore_to_background_color.gif")),
JLabel.LEFT);
#spandel
JLabel label4 = new JLabel("直前の画像に戻す",
#spanend
new ImageIcon(getClass().getResource("restore_to_previous.gif")),
JLabel.LEFT);
#spanadd
JLabel label1 = new JLabel(
#spanend
"何もしない",
new ImageIcon(getClass().getResource("no_disposal_specified.gif")),
SwingConstants.LEFT);
#spanadd
#spanend
#spanadd
JLabel label2 = new JLabel(
#spanend
"そのまま残す",
new ImageIcon(getClass().getResource("do_not_dispose.gif")),
SwingConstants.LEFT);
#spanadd
#spanend
#spanadd
JLabel label3 = new JLabel(
#spanend
"背景色で塗りつぶす",
new ImageIcon(getClass().getResource("restore_to_background_color.gif")),
SwingConstants.LEFT);
#spanadd
#spanend
#spanadd
JLabel label4 = new JLabel(
#spanend
"直前の画像に戻す",
new ImageIcon(getClass().getResource("restore_to_previous.gif")),
SwingConstants.LEFT);
View in GitHub: Java, Kotlin解説
Animated GIF
で、次のコマを描画する時、直前の画像を異なる方法で消去するAnimated GIF
ファイルを作成し、これらをJLabel
に貼り付けてアニメーションをテストしています。上記のように透過色を使用する場合、Swing
では、3
番目の「背景色でつぶす」にしておかないと残像が出てしまうようです。
解説
Animated GIF
で、次のコマを描画する時、直前の画像を異なる方法で消去するAnimated GIF
ファイルを作成し、これらをJLabel
に貼り付けてアニメーションをテストしています。上記のように透過色を使用する場合、Swing
では3
番目の「背景色で塗りつぶす」にしておかないと残像が出てしまうようです。
- 何もしない
- No disposal specified. The decoder is not required to take any action.
No disposal specified. The decoder is not required to take any action.
- No disposal specified. The decoder is not required to take any action.
- そのまま残す
- Do not dispose. The graphic is to be left in place.
- 背景色でつぶす
- Restore to background color. The area used by the graphic must be restored to the background color.
Do not dispose. The graphic is to be left in place.
- Restore to background color. The area used by the graphic must be restored to the background color.
- 背景色で塗りつぶす
Restore to background color. The area used by the graphic must be restored to the background color.
- 直前の画像に戻す
- Restore to previous. The decoder is required to restore the area overwritten by the graphic with what was there prior to rendering the graphic.
Restore to previous. The decoder is required to restore the area overwritten by the graphic with what was there prior to rendering the graphic.
- Restore to previous. The decoder is required to restore the area overwritten by the graphic with what was there prior to rendering the graphic.
参考リンク
- Cover Sheet for the GIF89a Specification
- 23. Graphic Control Extension. の、iv) Disposal Method から説明を引用しています。
- Giam ダウンロードのページ
-
Giam
を使って、各Animated GIF
を生成しています。
-
参考リンク
- Cover Sheet for the GIF89a Specification
-
23. Graphic Control Extension.
のiv) Disposal Method
から説明を引用
-