• 追加された行はこの色です。
  • 削除された行はこの色です。
---
category: swing
folder: MediaTracker
title: MediaTrackerで画像のサイズを取得
tags: [MediaTracker, Image, JTable, DragAndDrop, DropTargetListener]
author: aterai
pubdate: 2004-12-13T02:15:06+09:00
description: MediaTrackerで画像のサイズを取得します。
description: MediaTrackerを使って画像ファイルからイメージの幅と高さを取得します。
image: https://lh4.googleusercontent.com/_9Z4BYR88imo/TQTPsQMGUsI/AAAAAAAAAeY/B8MAwtKhshY/s800/MediaTracker.png
---
* 概要 [#b0529a70]
`MediaTracker`で画像のサイズを取得します。
* 概要 [#summary]
`MediaTracker`を使って画像ファイルからイメージの幅と高さを取得します。

#download(https://lh4.googleusercontent.com/_9Z4BYR88imo/TQTPsQMGUsI/AAAAAAAAAeY/B8MAwtKhshY/s800/MediaTracker.png)

* サンプルコード [#c1b83e7b]
* サンプルコード [#sourcecode]
#code(link){{
private Dimension getImageDimension(Image img) {
  MediaTracker tracker = new MediaTracker((Container)this);
  tracker.addImage(img, 0);
  try{
    tracker.waitForID(0);
  }catch(InterruptedException e) {}
  return new Dimension(img.getWidth(null), img.getHeight(null));
private Dimension getImageDimension(Image img, int id) {
  MediaTracker tracker = new MediaTracker((Container) this);
  tracker.addImage(img, id);
  try {
    tracker.waitForID(id);
  } catch (InterruptedException e) {
    ex.printStackTrace();
  }
  return new Dimension(img.getWidth(this), img.getHeight(this));
}
}}

* 解説 [#v4cb99f5]
上記のサンプルでは、`MediaTracker`を使って、画像のサイズを取得しています。
* 解説 [#explanation]
- `MediaTracker`を使って画像ファイルをロードし、イメージが描画される領域の幅と高さを取得
- `JTable`にファイルをドロップすると画像の幅や高さなどを一覧表示

----
`JTable`にファイルをドロップすると、画像の幅、高さを一覧表示します。

* 参考リンク [#jc749171]
* 参考リンク [#reference]
- [https://docs.oracle.com/javase/jp/8/docs/api/java/awt/MediaTracker.html MediaTracker (Java Platform SE 8)]
- [[Jpegファイルのコメントを取り出す>Swing/IIOMetadata]]
- [[Fileのドラッグ&ドロップ>Swing/FileListFlavor]]

* コメント [#r91e725f]
* コメント [#comment]
#comment
#comment