6

C# を使用してアニメーション gif 画像のコピーを作成する方法はありますか?

私が望むのは、ユーザーが提供する高さと幅のパラメーターを使用して、特定の gif 画像のコピーを生成することです。これを達成するために数時間試しましたが、結果の画像は元のアニメーションを保持していません.

4

2 に答える 2

5

これを見つけるのにしばらく時間がかかりましたが、最終的に解決策を見つけました:

NuGet 経由でMagick.NETをインストールします。ライセンスはhttps://magick.codeplex.com/licenseで確認できます。

コード例:

var newWidth = 100;
using (var collection = new MagickImageCollection(new FileInfo(@"C:\test.gif")))
{
    collection.Coalesce();
    foreach (var image in collection)
    {
        image.Resize(newWidth, 0);
    }
    collection.Write(@"c:\resized.gif");
}

私のテストでは、これはアルファ チャネルとさまざまなフレーム レートで動作します。完璧なようです!

于 2017-01-03T11:32:23.480 に答える
4

アニメーション GIF のフレームをループして、それぞれのサイズを変更する必要があります。

GifLibも参照してください。

于 2009-02-11T22:19:13.760 に答える