TIFF

To load a TIFF image from a byte array, use the CreateGdPictureImageFromByteArray method of the GdPictureImaging class.

This method returns a non-zero GdPicture image identifier (imageID) on success. If it fails, it returns 0 — use GetStat() to view the failure reason.

Overloads:

  • CreateGdPictureImageFromByteArray(byte[] Data)
  • CreateGdPictureImageFromByteArray(byte[] Data, DocumentFormat ImageFormat)

For TIFF data, you can explicitly pass DocumentFormat.DocumentFormatTIFF.

If the TIFF contains multiple pages, you can use:

When you no longer need the image resource, release it with the ReleaseGdPictureImage method.

To load a TIFF image from a byte array, use the following code:

using GdPicture14;
using System;
using System.IO;
using GdPictureImaging gdpictureImaging = new GdPictureImaging();
// Create a byte array from a TIFF image file.
byte[] byteArray = File.ReadAllBytes(@"C:\temp\source.tif");
// Create a GdPicture image from the byte array.
int imageID = gdpictureImaging.CreateGdPictureImageFromByteArray(
byteArray,
DocumentFormat.DocumentFormatTIFF);
if (imageID == 0)
{
Console.WriteLine($"CreateGdPictureImageFromByteArray 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);