從任意位圖中擷取幀
using IronSoftware.Drawing;
using System.Collections.Generic;
using System.Linq;

//Load a GIF or TIFF as AnyBitmap (loads ALL frames)
AnyBitmap gifOrTiff = AnyBitmap.FromFile(@"FILE_PATH");

gifOrTiff.GetAllFrames.First().SaveAs("first.png"); // First frame
gifOrTiff.GetAllFrames.Last().SaveAs("last.png"); // Last frame
gifOrTiff.GetAllFrames.ElementAt(1).SaveAs("second.png"); // n'th frame

// Save every frame of a GIF or TIFF to images on disk
List<AnyBitmap> frames = (List<AnyBitmap>)gifOrTiff.GetAllFrames;
for (int i = 0 ; i < frames.Count ; i++)
{
    frames[i].SaveAs("frame_" + i + ".jpg");
}


Imports IronSoftware.Drawing
Imports System.Collections.Generic
Imports System.Linq

'Load a GIF or TIFF as AnyBitmap (loads ALL frames)
Dim gifOrTiff As AnyBitmap = AnyBitmap.FromFile("FILE_PATH")

gifOrTiff.GetAllFrames.First().SaveAs("first.png") ' First frame
gifOrTiff.GetAllFrames.Last().SaveAs("last.png") ' Last frame
gifOrTiff.GetAllFrames.ElementAt(1).SaveAs("second.png") ' n'th frame

' Save every frame of a GIF or TIFF to images on disk
Dim frames As List(Of AnyBitmap) = CType(gifOrTiff.GetAllFrames, List(Of AnyBitmap))
For i As Integer = 0 To frames.Count - 1
    frames(i).SaveAs("frame_" & i & ".jpg")
Next
NuGet Download
PM > Install-Package IronSoftware.System.Drawing
從任意位圖中擷取幀

從任意位圖中擷取幀

此功能可讓使用者從多頁GIF或TIFF檔案中提取或擷取框架,並將其以任何圖像格式儲存到本地。 儲存的框架可以在IronDrawing或其他Iron Software工具中根據使用者需要進一步操作。

要使用此功能,使用者必須首先通過使用AnyBitmap型別。 如果使用者想要儲存個別框架並知道該框架的索引號,則可以使用.GetAllFrames().ElementAt(n).SaveAs("FRAME_FILE_NAME")方法。 要獲得第一幀和最後一幀,只需分別使用.Last()方法即可。 如果使用者希望根據框架號儲存所有框架,他們可以在儲存在列表中的框架上使用frames[i].SaveAs("frame_" + i + ".jpg")。

在GitHub上查看

準備開始了嗎?

Nuget Downloads 20,274,271版本:2026.11剛剛發布