Load a TIFF from local storage in C#
TIFF
To load a TIFF image from local storage, use the TiffCreateMultiPageFromFile method of the GdPictureImaging class.
This method creates a GdPicture image and returns a unique image identifier (imageID). If it fails, it returns 0 — use GetStat() to identify the error. When working with TIFFs, the loaded GdPicture image could have multiple pages.
TiffCreateMultiPageFromFile accepts the following parameters:
FilePath— Path to the TIFF file.LoadInMemory(optional, defaultfalse) — Loads content into memory for better manipulation performance.
For multipage TIFFs, you can use:
- The
TiffGetPageCountmethod to get page count. - The
TiffSelectPagemethod to select which page to process.
When you no longer need the image resource, release it with ReleaseGdPictureImage method.
To load a TIFF image from local storage, use the following code:
using GdPicture14;using System;
using GdPictureImaging gdpictureImaging = new GdPictureImaging();
int imageID = gdpictureImaging.TiffCreateMultiPageFromFile(@"C:\temp\source.tif", false);if (imageID == 0){ Console.WriteLine($"TIFF load failed: {gdpictureImaging.GetStat()}"); return;}
int pageCount = gdpictureImaging.TiffGetPageCount(imageID);if (pageCount > 1){ GdPictureStatus selectStatus = gdpictureImaging.TiffSelectPage(imageID, 1); if (selectStatus != GdPictureStatus.OK) { Console.WriteLine($"TiffSelectPage failed: {selectStatus}"); gdpictureImaging.ReleaseGdPictureImage(imageID); return; }}
GdPictureStatus saveStatus = gdpictureImaging.SaveAsPNG(imageID, @"C:\temp\output.png");if (saveStatus != GdPictureStatus.OK){ Console.WriteLine($"SaveAsPNG failed: {saveStatus}");}
gdpictureImaging.ReleaseGdPictureImage(imageID);Imports GdPicture14
Using gdpictureImaging As New GdPictureImaging() Dim imageID As Integer = gdpictureImaging.TiffCreateMultiPageFromFile("C:\temp\source.tif", False) If imageID = 0 Then Console.WriteLine($"TIFF load failed: {gdpictureImaging.GetStat()}") Return End If
Dim pageCount As Integer = gdpictureImaging.TiffGetPageCount(imageID) If pageCount > 1 Then Dim selectStatus As GdPictureStatus = gdpictureImaging.TiffSelectPage(imageID, 1) If selectStatus <> GdPictureStatus.OK Then Console.WriteLine($"TiffSelectPage failed: {selectStatus}") gdpictureImaging.ReleaseGdPictureImage(imageID) Return End If End If
Dim saveStatus As GdPictureStatus = gdpictureImaging.SaveAsPNG(imageID, "C:\temp\output.png") If saveStatus <> GdPictureStatus.OK Then Console.WriteLine($"SaveAsPNG failed: {saveStatus}") End If
gdpictureImaging.ReleaseGdPictureImage(imageID)End Using