2017.11.8
2020.1.7

画像の情報(幅と高さ)を取得する方法

ASP.NET coreで画像の情報(幅と高さ)を取得する方法です。

.NET FrameworkであればSystem.Drawingが利用できますが、クロスプラットフォーム向けのCoreでは使えないので別途ライブラリを導入しないといけないようです。

ImageSharp

導入可能なライブラリは複数ありますが(詳しくはこちら)、今回はImageSharpを使います。

インストールはNuGetから。

まだベータ版のようですが、とりあえず画像の幅と高さを取得するだけなら動作しました。

コードは以下の通り。


using SixLabors.ImageSharp;

public class ExampleClass
{
    public static ImageInfo GetImageInfo(string filePath)
    {
        using (var image = Image.Load(filePath))
        {
            return new ImageInfo
            {
                Width = image.Width,
                Height = image.Height
            };
        }
    }
}

public class ImageInfo
{
    public int Width { get; set; }
    public int Height { get; set; }
}

標準で用意してくれると有難いんですけどね。

参考リンク

ASP.NET Core】関連記事