使用 C# 轉換動畫 GIF

動畫 GIF(圖形交換格式)在單個文件中包含許多按特定順序排列的圖像幀。這些幀按順序顯示以創建動畫。當您需要將動畫 GIF 轉換為其他多頁或光柵圖像格式時,可能會有各種用例。多頁格式包括 TIFF 和 PDF,而光柵圖像可以是 PNG、JPG、BMP 等。在本文中,我將向您展示如何將動畫 GIF 圖像轉換為 TIFF、PDF、PNG。 JPG 和 BMP 圖像以編程方式使用 C#。本文中提供的代碼示例也可以輕鬆移植到 VB.NET。

C# GIF 轉換器 API

Aspose.Imaging for .NET 是一個功能豐富的 API,支持處理範圍廣泛的矢量或光柵圖像格式,包括動畫 GIF。它允許將動畫 GIF 轉換為其他多頁格式以及 .NET 應用程序中的光柵圖像。您可以使用 NuGet Package Manager 安裝 API 或手動下載並引用其 DLL 文件。

使用 C# 將動畫 GIF 轉換為 TIFF

TIFF 是一種多頁圖像格式,可將多個圖像保存在一個文件中。由於動畫 GIF 還包含一系列幀,因此您可以將所有幀或選定幀導出為 TIFF 格式。在此轉換中,GIF 中的每一幀都將轉換為 TIFF 圖像中的一頁。以下是使用 Aspose.Imaging for .NET 將動畫 GIF 轉換為 TIFF 格式的步驟。

以下代碼示例顯示瞭如何使用 C# 將 GIF 轉換為 TIFF。

// 加載 GIF 文件
using (var image = Image.Load(@"sample_2.gif"))
{      
	// 僅轉換選定的幀
	image.Save("Selected-Frames.tiff", new TiffOptions(TiffExpectedFormat.TiffDeflateRgb) { MultiPageOptions = new MultiPageOptions(new IntRange(1, 3)), FullFrame = true });
	// 轉換所有幀
	image.Save("GIF-to-TIFF.tiff", new TiffOptions(TiffExpectedFormat.TiffDeflateRgb) { FullFrame = true });
}

使用 C# 將動畫 GIF 轉換為 PDF

在動畫 GIF 到 PDF 的轉換中,GIF 的每一幀都被轉換為 PDF 中的單獨頁面。就像 GIF 到 TIFF 一樣,您可以指定要在轉換後的 PDF 文件中獲取的幀範圍。以下是將動畫 GIF 轉換為 PDF 的步驟。

以下代碼示例顯示瞭如何使用 C# 將動畫 GIF 轉換為 PDF。

// 加載 GIF 文件
using (Image image = Image.Load(@"sample_2.gif"))
{
	// 轉換所有幀
	image.Save("GIF-to-PDF.pdf", new PdfOptions() { FullFrame = true });
  // 轉換選定的幀
	image.Save("Selected-Frames-to-PDF.pdf", new PdfOptions() { MultiPageOptions = new MultiPageOptions(new IntRange(2, 5)), FullFrame = true });
}

使用 C# 將 GIF 幀轉換為 PNG、JPG 或 BMP

由於動畫 GIF 包含一系列幀,您可以提取所需的幀並將其轉換為光柵圖像,如 PNG、JPG、BMP 等。

使用 C# 將 GIF 幀轉換為 PNG

以下是將 GIF 幀轉換為 PNG 圖像的步驟。

以下代碼示例展示瞭如何使用 C# 將動畫 GIF 的幀轉換為 PNG。

// 加載 GIF 圖片
using (var image = Image.Load(@"Sample_2.gif"))
{ 
  // 將 GIF 的第 1 幀轉換為 PNG
	image.Save("converted-to-png.png", new PngOptions() { MultiPageOptions = new MultiPageOptions(1), FullFrame = true });
}

使用 C# 將 GIF 幀轉換為 JPG

Aspose.Imaging 公開了 JpegOptions 類來設置選項,同時將 GIF 幀轉換為 JPG 圖像。以下代碼示例顯示瞭如何使用 C# 將 GIF 中的幀轉換為 JPG。

// 加載 GIF 圖片
using (var image = Image.Load(@"Sample_2.gif"))
{ 
  // 將 GIF 的第 1 幀轉換為 JPG
	image.Save("converted-to-jpg.jpg", new JpegOptions() { MultiPageOptions = new MultiPageOptions(6), FullFrame = true });
}

使用 C# 將 GIF 幀轉換為 BMP

對於 GIF 到 BMP 的轉換,API 提供了 BmpOptions 類。以下代碼示例顯示瞭如何使用 C# 將 GIF 幀轉換為 BMP。

// 加載 GIF 圖片
using (var image = Image.Load(@"Sample_2.gif"))
{
  // 將 GIF 的第 1 幀轉換為 BMP
	image.Save("converted-to-bmp.bmp", new BmpOptions() { MultiPageOptions = new MultiPageOptions(6), FullFrame = true });
}

結論

在本文中,您了解瞭如何使用 C# 將動畫 GIF 轉換為多頁格式,例如 TIFF 和 PDF。此外,我們還了解瞭如何從動畫 GIF 中提取特定幀並將其轉換為 PNG、JPG 或 BMP 圖像。您可以使用 文檔 探索更多關於 Aspose.Imaging for .NET 的信息。

也可以看看

信息:您可能想查看最近開發的免費 Text to GIF Converter Aspose。