Tiff Developer Guide
The Tiff class in Aspose.Pdf.LowCode provides a streamlined API for converting PDF documents to TIFF images, configured through a TiffOptions object.
Installation and Setup
Install via NuGet:
dotnet add package Aspose.PDFApply metered licensing before use:
using Aspose.Pdf;
Metered metered = new Metered();
metered.SetMeteredKey("publicKey", "privateKey");Features and Functionalities
File Format Support
- Input: a PDF document
- Output: a TIFF image, as either one multi-page file or one file per page, depending on
SaveAsMultiPageTiff
Simple Conversion
Convert a PDF to a single multi-page TIFF:
using System.Linq;
using Aspose.Pdf.LowCode;
var tiff = new Tiff();
var options = new TiffOptions { SaveAsMultiPageTiff = true };
options.AddInput(new FileDataSource("input.pdf"));
// This path is used as an OUTPUT DIRECTORY, not the file's own path.
options.AddOutput(new FileDataSource("tiff-output"));
var result = tiff.Process(options);
tiff.Dispose();
// The real output file path comes from the result, not from the path above.
string outputPath = result.ResultCollection.First().ToFile();Advanced Conversion with Options
For fine-grained control:
using System.Linq;
using Aspose.Pdf.LowCode;
using Aspose.Pdf.Devices;
var tiff = new Tiff();
var options = new TiffOptions
{
SaveAsMultiPageTiff = true,
Compression = CompressionType.CCITT4,
Depth = ColorDepth.Format1bpp,
OutputResolution = 300,
};
options.AddInput(new FileDataSource("input.pdf"));
options.AddOutput(new FileDataSource("tiff-output"));
var result = tiff.Process(options);
tiff.Dispose();
string outputPath = result.ResultCollection.First().ToFile();Stream-Based Processing
For in-memory or web application scenarios:
using System.IO;
using System.Linq;
using Aspose.Pdf.LowCode;
using (var inputStream = File.OpenRead("input.pdf"))
{
var tiff = new Tiff();
var options = new TiffOptions { SaveAsMultiPageTiff = true };
options.AddInput(new StreamDataSource(inputStream));
options.AddOutput(new FileDataSource("tiff-output"));
var result = tiff.Process(options);
tiff.Dispose();
string outputPath = result.ResultCollection.First().ToFile();
}Usage Examples
Basic File Conversion
using System.Linq;
using Aspose.Pdf.LowCode;
var tiff = new Tiff();
var options = new TiffOptions { SaveAsMultiPageTiff = true };
options.AddInput(new FileDataSource("template.pdf"));
options.AddOutput(new FileDataSource("tiff-output"));
var result = tiff.Process(options);
tiff.Dispose();
string outputPath = result.ResultCollection.First().ToFile();Batch Processing
using System.IO;
using System.Linq;
using Aspose.Pdf.LowCode;
string inputDir = "input";
string outputDir = "output";
Directory.CreateDirectory(outputDir);
foreach (var file in Directory.GetFiles(inputDir, "*.pdf"))
{
var tiff = new Tiff();
var options = new TiffOptions { SaveAsMultiPageTiff = true };
options.AddInput(new FileDataSource(file));
options.AddOutput(new FileDataSource(outputDir));
var result = tiff.Process(options);
tiff.Dispose();
}Tips and Best Practices
- Output path is a directory:
AddOutput’sFileDataSourcepath is where the TIFF gets written, not the file’s own path – read the real path back from the ResultContainer’s FileResult, not from the path given to AddOutput. - Compression choice:
None,RLE,LZW,CCITT3, andCCITT4were each individually confirmed;CCITT3/CCITT4are typically paired with Depth set to Format1bpp for fax-style output. - Page range: use
PageList(inherited fromPdfToImageOptions) to convert only a subset of pages. - Resolution:
OutputResolutioncontrols the output DPI.
Common Issues and Resolutions
| Issue | Resolution |
|---|---|
| File not found | Verify path is correct; use absolute paths in production |
| Unsupported format | Check supported formats list; ensure file extension matches content |
| Evaluation watermark | Apply a valid license before processing |
| Memory errors on large files | Switch to stream-based processing |
API Reference
Tiff— Main plugin class; Process() converts a PDF to TIFFTiffOptions— Conversion configuration: compression, color depth, page coordinate type, shape, multi-page flag