TiffImage Class
The tiff image.
Inheritance Hierarchy

Namespace: Aspose.Imaging.FileFormats.Tiff
Assembly: Aspose.Imaging (in Aspose.Imaging.dll) Version: 21.05
Syntax
public sealed class TiffImage : RasterCachedMultipageImage, 
	IMultipageImage, IMultipageImageExt

The TiffImage type exposes the following members.

Constructors
  NameDescription
Public methodCode exampleTiffImage(TiffFrame)
Initializes a new instance of the TiffImage class.
Public methodCode exampleTiffImage(TiffFrame)
Initializes a new instance of the TiffImage class.
Properties
  NameDescription
Public propertyCode exampleActiveFrame
Gets or sets the active frame.
Public propertyAutoAdjustPalette
Gets or sets a value indicating whether automatic adjust palette.
(Inherited from Image.)
Public propertyBackgroundColor
Gets or sets a value for the background color.
(Inherited from RasterCachedMultipageImage.)
Public propertyBitsPerPixel
Gets the image bits per pixel count.
(Inherited from RasterCachedMultipageImage.)
Public propertyBounds
Gets the image bounds.
(Inherited from Image.)
Public propertyBufferSizeHint
Gets or sets the buffer size hint which is defined max allowed size for all internal buffers.
(Inherited from Image.)
Public propertyByteOrder
Gets or sets a value indicating the tiff byte order.
Public propertyContainer
Gets the Image container.
(Inherited from Image.)
Public propertyDataStreamContainer
Gets the object's data stream.
(Inherited from DataStreamSupporter.)
Public propertyDefaultPage Obsolete.
Gets the default page.
(Overrides RasterCachedMultipageImageDefaultPage.)
Public propertyDisposed
Gets a value indicating whether this instance is disposed.
(Inherited from DisposableObject.)
Public propertyExifData
Gets or sets EXIF data for the active frame.
Public propertyFileFormat
Gets a value of file format
(Overrides ImageFileFormat.)
Public propertyCode exampleFrames
Gets Frames array of the image.
Public propertyCode exampleHasAlpha
Gets the Has alpha channel.
(Overrides RasterCachedMultipageImageHasAlpha.)
Public propertyHasBackgroundColor
Gets or sets a value indicating whether image has background color.
(Inherited from Image.)
Public propertyHasTransparentColor
Gets a value indicating whether image has transparent color.
(Inherited from RasterCachedMultipageImage.)
Public propertyHeight
Gets the image height.
(Inherited from RasterCachedMultipageImage.)
Public propertyCode exampleHorizontalResolution
Gets the horizontal resolution, in pixels per inch, of this Image.
(Overrides RasterImageHorizontalResolution.)
Public propertyImageOpacity
Gets opacity of this image.
(Inherited from RasterCachedMultipageImage.)
Public propertyInterruptMonitor
Gets or sets the interrupt monitor.
(Inherited from Image.)
Public propertyIsCached
Gets a value indicating whether image data is cached currently.
(Inherited from RasterCachedMultipageImage.)
Public propertyIsRawDataAvailable
Gets a value indicating whether raw data loading is available.
(Inherited from RasterImage.)
Public propertyPageCount
Gets the page count.
(Overrides RasterCachedMultipageImagePageCount.)
Public propertyCode examplePageExportingAction
Gets or sets the page exporting action. Please note that setting this method will automatically release page resources after it is executed. It will be executed just before each page is saved.
(Inherited from RasterCachedMultipageImage.)
Public propertyPages
Gets the pages.
(Overrides RasterCachedMultipageImagePages.)
Public propertyPalette
Gets or sets the color palette. The color palette is not used when pixels are represented directly.
(Inherited from Image.)
Public propertyCode examplePremultiplyComponents
Gets or sets a value indicating whether components must be premultiplied.
(Overrides RasterImagePremultiplyComponents.)
Public propertyRawCustomColorConverter
Gets or sets the custom color converter
(Inherited from RasterImage.)
Public propertyCode exampleRawDataFormat
Gets the raw data format.
(Inherited from RasterImage.)
Public propertyRawDataSettings
Gets the current raw data settings. Note when using these settings the data loads without conversion.
(Inherited from RasterImage.)
Public propertyRawFallbackIndex
Gets or sets the fallback index to use when palette index is out of bounds
(Inherited from RasterImage.)
Public propertyRawIndexedColorConverter
Gets or sets the indexed color converter
(Inherited from RasterImage.)
Public propertyRawLineSize
Gets the raw line size in bytes.
(Inherited from RasterImage.)
Public propertyCode exampleSize
Gets the image size.
(Inherited from Image.)
Public propertyTransparentColor
Gets the image transparent color.
(Inherited from RasterImage.)
Public propertyUpdateXmpData
Gets or sets a value indicating whether to update the XMP metadata.
(Inherited from RasterImage.)
Public propertyUsePalette
Gets a value indicating whether the image palette is used.
(Inherited from RasterImage.)
Public propertyUseRawData
Gets or sets a value indicating whether to use raw data loading when the raw data loading is available.
(Inherited from RasterImage.)
Public propertyCode exampleVerticalResolution
Gets the vertical resolution, in pixels per inch, of this Image.
(Overrides RasterImageVerticalResolution.)
Public propertyWidth
Gets the image width.
(Inherited from RasterCachedMultipageImage.)
Public propertyXmpData
Gets or sets XMP data from frame.
(Inherited from RasterCachedMultipageImage.)
Methods
  NameDescription
Public methodAdd
Adds the specified image's frames to current frame.
Public methodCode exampleAddFrame
Adds the frame to image
Public methodAddFrames
Adds the frames array to image
Public methodAddPage
Adds page to the image.
Public methodCode exampleAdjustBrightness
Adjust of a brightness for image.
(Overrides RasterCachedMultipageImageAdjustBrightness(Int32).)
Public methodCode exampleAdjustContrast
Image contrasting
(Overrides RasterCachedMultipageImageAdjustContrast(Single).)
Public methodCode exampleAdjustGamma(Single)
Gamma-correction of an image.
(Overrides RasterCachedMultipageImageAdjustGamma(Single).)
Public methodCode exampleAdjustGamma(Single, Single, Single)
Gamma-correction of an image.
(Overrides RasterCachedMultipageImageAdjustGamma(Single, Single, Single).)
Public methodAlignResolutions
Helper method to make horizontal and vertical resolutions equal.
Public methodBinarizeBradley(Double)
Binarization of an image using Bradley's adaptive thresholding algorithm using the integral image thresholding
(Inherited from RasterCachedMultipageImage.)
Public methodCode exampleBinarizeBradley(Double, Int32)
Binarization of an image using Bradley's adaptive thresholding algorithm using the integral image thresholding
(Overrides RasterCachedMultipageImageBinarizeBradley(Double, Int32).)
Public methodCode exampleBinarizeFixed
Binarization of an image with predefined threshold
(Overrides RasterCachedMultipageImageBinarizeFixed(Byte).)
Public methodCode exampleBinarizeOtsu
Binarization of an image with Otsu thresholding
(Overrides RasterCachedMultipageImageBinarizeOtsu.)
Public methodCacheData
Caches the data private.
(Inherited from RasterCachedMultipageImage.)
Public methodCode exampleCanSave
Determines whether image can be saved to the specified file format represented by the passed save options.
(Inherited from Image.)
Public methodCode exampleCrop(Rectangle)
Cropping the image.
(Overrides RasterCachedMultipageImageCrop(Rectangle).)
Public methodCode exampleCrop(Int32, Int32, Int32, Int32)
Crop image with shifts.
(Overrides RasterCachedMultipageImageCrop(Int32, Int32, Int32, Int32).)
Public methodCode exampleDispose
Disposes the current instance.
(Inherited from DisposableObject.)
Public methodCode exampleDither(DitheringMethod, Int32)
Performs dithering on the current image.
(Inherited from RasterImage.)
Public methodCode exampleDither(DitheringMethod, Int32, IColorPalette)
Performs dithering on the current image.
(Overrides RasterCachedMultipageImageDither(DitheringMethod, Int32, IColorPalette).)
Public methodEquals
Determines whether the specified Object is equal to the current Object.
(Inherited from Object.)
Public methodCode exampleFilter
Filters the specified rectangle.
(Overrides RasterCachedMultipageImageFilter(Rectangle, FilterOptionsBase).)
Public methodCode exampleGetArgb32Pixel
Gets an image 32-bit ARGB pixel.
(Inherited from RasterImage.)
Public methodGetDefaultArgb32Pixels
Gets the default 32-bit ARGB pixels array.
(Inherited from RasterImage.)
Public methodGetDefaultOptions
Gets the default options.
(Inherited from Image.)
Public methodGetDefaultPixels
Gets the default pixels array using partial pixel loader.
(Inherited from RasterImage.)
Public methodGetDefaultRawData(Rectangle, RawDataSettings)
Gets the default raw data array.
(Inherited from RasterImage.)
Public methodGetDefaultRawData(Rectangle, IPartialRawDataLoader, RawDataSettings)
Gets the default raw data array using partial pixel loader.
(Inherited from RasterImage.)
Public methodGetHashCode
Serves as a hash function for a particular type.
(Inherited from Object.)
Public methodGetModifyDate
Gets the date and time the resource image was last modified.
(Inherited from RasterImage.)
Public methodGetOriginalOptions
Gets the options based on the original file settings. This can be helpful to keep bit-depth and other parameters of the original image unchanged. For example, if we load a black-white PNG image with 1 bit per pixel and then save it using the Save(String) method, the output PNG image with 8-bit per pixel will be produced. To avoid it and save PNG image with 1-bit per pixel, use this method to get corresponding saving options and pass them to the Save(String, ImageOptionsBase) method as the second parameter.
(Inherited from Image.)
Public methodCode exampleGetPixel
Gets an image pixel.
(Inherited from RasterImage.)
Public methodGetSkewAngle
Gets the skew angle. This method is applicable to scanned text documents, to determine the skew angle when scanning.
(Inherited from RasterImage.)
Public methodGetType
Gets the type of the current instance.
(Inherited from Object.)
Public methodCode exampleGrayscale
Transformation of an image to its grayscale representation
(Overrides RasterCachedMultipageImageGrayscale.)
Public methodInsertFrame
The insert frame.
Public methodCode exampleLoadArgb32Pixels
Loads 32-bit ARGB pixels.
(Inherited from RasterImage.)
Public methodCode exampleLoadArgb64Pixels
Loads 64-bit ARGB pixels.
(Inherited from RasterImage.)
Public methodLoadCmyk32Pixels
Loads pixels in CMYK format.
(Inherited from RasterImage.)
Public methodLoadCmykPixels Obsolete.
Loads pixels in CMYK format. This method is deprecated. Please use more effective the LoadCmyk32Pixels(Rectangle) method.
(Inherited from RasterImage.)
Public methodCode exampleLoadPartialArgb32Pixels
Loads 32-bit ARGB pixels partially by packs.
(Inherited from RasterImage.)
Public methodCode exampleLoadPartialPixels
Loads pixels partially by packs.
(Inherited from RasterImage.)
Public methodCode exampleLoadPixels
Loads pixels.
(Inherited from RasterImage.)
Public methodCode exampleLoadRawData(Rectangle, RawDataSettings, IPartialRawDataLoader)
Loads raw data.
(Inherited from RasterImage.)
Public methodLoadRawData(Rectangle, Rectangle, RawDataSettings, IPartialRawDataLoader)
Loads raw data.
(Inherited from RasterImage.)
Public methodNormalizeAngle
Normalizes the angle. This method is applicable to scanned text documents to get rid of the skewed scan. This method uses GetSkewAngle and Rotate(Single) methods.
(Inherited from RasterImage.)
Public methodNormalizeAngle(Boolean, Color)
Normalizes the angle. This method is applicable to scanned text documents to get rid of the skewed scan. This method uses GetSkewAngle and Rotate(Single, Boolean, Color) methods.
(Overrides RasterCachedMultipageImageNormalizeAngle(Boolean, Color).)
Public methodReadArgb32ScanLine
Reads the whole scan line by the specified scan line index.
(Inherited from RasterImage.)
Public methodReadScanLine
Reads the whole scan line by the specified scan line index.
(Inherited from RasterImage.)
Public methodCode exampleRemoveFrame(Int32)
Removes the frame by its index.
Public methodRemoveFrame(TiffFrame)
Removes the specified frame.
Public methodReplaceColor(Int32, Byte, Int32)
Replaces one color to another with allowed difference and preserves original alpha value to save smooth edges.
(Inherited from RasterCachedMultipageImage.)
Public methodReplaceColor(Color, Byte, Color)
Replaces one color to another with allowed difference and preserves original alpha value to save smooth edges.
(Inherited from RasterImage.)
Public methodReplaceFrame
Replaces the frame at the specified position.
Public methodReplaceNonTransparentColors(Int32)
Replaces all non-transparent colors with new color and preserves original alpha value to save smooth edges. Note: if you use it on images without transparency, all colors will be replaced with a single one.
(Inherited from RasterCachedMultipageImage.)
Public methodReplaceNonTransparentColors(Color)
Replaces all non-transparent colors with new color and preserves original alpha value to save smooth edges. Note: if you use it on images without transparency, all colors will be replaced with a single one.
(Inherited from RasterImage.)
Public methodCode exampleResize(Int32, Int32)
Resizes the image. The default LeftTopToLeftTop is used.
(Inherited from Image.)
Public methodCode exampleResize(Int32, Int32, ImageResizeSettings)
Resizes the image.
(Overrides RasterCachedMultipageImageResize(Int32, Int32, ImageResizeSettings).)
Public methodCode exampleResize(Int32, Int32, ResizeType)
Resizes the image.
(Overrides RasterCachedMultipageImageResize(Int32, Int32, ResizeType).)
Public methodResizeHeightProportionally(Int32)
Resizes the height proportionally.
(Inherited from Image.)
Public methodResizeHeightProportionally(Int32, ImageResizeSettings)
Resizes the height proportionally.
(Inherited from Image.)
Public methodCode exampleResizeHeightProportionally(Int32, ResizeType)
Resizes the width proportionally.
(Overrides RasterCachedMultipageImageResizeHeightProportionally(Int32, ResizeType).)
Public methodResizeProportional
Performs proportional resize on the image. The proportional resize will resize each frame according to the ratio of newWidth/width and newHeight/height.
Public methodResizeWidthProportionally(Int32)
Resizes the width proportionally.
(Inherited from Image.)
Public methodResizeWidthProportionally(Int32, ImageResizeSettings)
Resizes the width proportionally.
(Inherited from Image.)
Public methodCode exampleResizeWidthProportionally(Int32, ResizeType)
Resizes the width proportionally.
(Overrides RasterCachedMultipageImageResizeWidthProportionally(Int32, ResizeType).)
Public methodRotate(Single)
Rotate image around the center.
(Inherited from RasterImage.)
Public methodCode exampleRotate(Single, Boolean, Color)
[!:RasterCahcedMultipageImage.Rotate] image around the center.
(Overrides RasterCachedMultipageImageRotate(Single, Boolean, Color).)
Public methodCode exampleRotateFlip
Rotates, flips, or rotates and flips the Active frame only.
(Overrides RasterCachedMultipageImageRotateFlip(RotateFlipType).)
Public methodRotateFlipAll Obsolete.
Rotates the flip all.
(Inherited from RasterCachedMultipageImage.)
Public methodCode exampleSave
Saves the image data to the underlying stream.
(Inherited from Image.)
Public methodSave(Stream)
Saves the object's data to the specified stream.
(Inherited from DataStreamSupporter.)
Public methodSave(String)
Saves the object's data to the specified file location.
(Inherited from DataStreamSupporter.)
Public methodSave(String, Boolean)
Saves the object's data to the specified file location.
(Inherited from DataStreamSupporter.)
Public methodCode exampleSave(Stream, ImageOptionsBase)
Saves the image's data to the specified stream in the specified file format according to save options.
(Inherited from Image.)
Public methodCode exampleSave(String, ImageOptionsBase)
Saves the object's data to the specified file location in the specified file format according to save options.
(Inherited from Image.)
Public methodCode exampleSave(String, ImageOptionsBase, Rectangle)
Saves the object's data to the specified file location in the specified file format according to save options.
(Inherited from Image.)
Public methodSave(Stream, ImageOptionsBase, Rectangle)
Saves the image's data to the specified stream in the specified file format according to save options.
(Inherited from RasterImage.)
Public methodCode exampleSaveArgb32Pixels
Saves the 32-bit ARGB pixels.
(Inherited from RasterImage.)
Public methodCode exampleSaveCmyk32Pixels
Saves the pixels.
(Inherited from RasterImage.)
Public methodSaveCmykPixels Obsolete. (Inherited from RasterImage.)
Public methodCode exampleSavePixels
Saves the pixels.
(Inherited from RasterImage.)
Public methodSaveRawData
Saves the raw data.
(Inherited from RasterImage.)
Public methodCode exampleSetArgb32Pixel
Sets an image 32-bit ARGB pixel for the specified position.
(Inherited from RasterImage.)
Public methodSetPalette
Sets the image palette.
(Inherited from RasterImage.)
Public methodCode exampleSetPixel
Sets an image pixel for the specified position.
(Inherited from RasterImage.)
Public methodCode exampleSetResolution
Sets the resolution for this RasterImage.
(Overrides RasterImageSetResolution(Double, Double).)
Public methodToBitmap
Converts raster image to the bitmap.
(Inherited from RasterImage.)
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Public methodWriteArgb32ScanLine
Writes the whole scan line to the specified scan line index.
(Inherited from RasterImage.)
Public methodWriteScanLine
Writes the whole scan line to the specified scan line index.
(Inherited from RasterImage.)
Examples
Create Graphics Path from Path Resources in TIFF image.
[C#]

using (var image = (TiffImage)Image.Load("Bottle.tif"))
{
    // Create the GraphicsPath using PathResources from TIFF image
    var graphicsPath = PathResourceConverter.ToGraphicsPath(image.ActiveFrame.PathResources.ToArray(), image.ActiveFrame.Size);
    var graphics = new Graphics(image);

    // Draw red line and save the image
    graphics.DrawPath(new Pen(Color.Red, 10), graphicsPath);
    image.Save("BottleWithRedBorder.tif");
}
Examples
Create Path Resources using Graphics Path.
[C#]

static void Main(string[] args)
{
    using (var image = (TiffImage)Image.Load("Bottle.tif"))
    {
        // Create rectangular Figure for GraphicsPath
        var figure = new Figure();
        figure.AddShape(CreateBezierShape(100f, 100f, 500f, 100f, 500f, 1000f, 100f, 1000f));

        // Create GraphicsPath using our Figure
        var graphicsPath = new GraphicsPath();
        graphicsPath.AddFigure(figure);

        // Set PathResources using GraphicsPath
        var pathResouze = PathResourceConverter.FromGraphicsPath(graphicsPath, image.Size);
        image.ActiveFrame.PathResources = new List<PathResource>(pathResouze);

        // Save the image
        image.Save("BottleWithRectanglePath.tif");
    }
}

private static BezierShape CreateBezierShape(params float[] coordinates)
{
    var bezierPoints = CoordinatesToBezierPoints(coordinates).ToArray();
    return new BezierShape(bezierPoints, true);
}

private static IEnumerable<PointF> CoordinatesToBezierPoints(float[] coordinates)
{
    for (var coordinateIndex = 0; coordinateIndex < coordinates.Length; coordinateIndex += 2)
        for (var index = 0; index < 3; index++)
            yield return new PointF(coordinates[coordinateIndex], coordinates[coordinateIndex + 1]);
}
See Also