未分類

C# 画像イメージファイルのエンコード/デコードに使用できるフォーマットを取得する

準備

(なし)

デザイン

1. フォーム (Form1) にボタン (button1) を配置します。
2. フォーム (Form1) にリストボックス (listBox1) を配置します。

サンプルコード (C#)

// 名前空間の追加
using System.Drawing.Imaging;

// コード
private void button1_Click(object sender, EventArgs e)
{
  ImageCodecInfo[] imgEnc = ImageCodecInfo.GetImageEncoders();
  foreach (ImageCodecInfo item in imgEnc)
  {
    listBox1.Items.Add(item.FormatDescription + " (" + item.FilenameExtension + ")");
  }
  
  listBox1.Items.Add("");
  
  ImageCodecInfo[] imgDec = ImageCodecInfo.GetImageDecoders();
  foreach (ImageCodecInfo item in imgDec)
  {
    listBox1.Items.Add(item.FormatDescription + " (" + item.FilenameExtension + ")");
  }
}

解説

エンコード/デコードに使用できるフォーマットをそれぞれ取得しています。出力結果を見ると、内容に違いがありますので、エンコードできるフォーマットとデコードできるフォーマットが必ずしも一致しているとは限らないようです。

結果

動作確認環境

Visual Studio 2015 Professional (C# 6.0)

-未分類