How to convert TIFF to PDF using C# and VB.NET?
Syncfusion Essential PDF is a .NET PDF library used to create, read, and edit PDF documents. Using this library, you can convert multipage TIFF to PDF in C# and VB.NET.
Steps to convert multipage TIFF to PDF programmatically:
- Create a new C# console application project.
- Install the Syncfusion.Pdf.WinForms NuGet packages as reference to your .NET Framework application from NuGet.org.
- Include the following namespaces in the Program.cs file.
C#
using Syncfusion.Pdf; using Syncfusion.Pdf.Graphics;
VB.NET
Imports Syncfusion.Pdf Imports Syncfusion.Pdf.Graphics
- Use the following code snippet to create PDF and draw multi-frame TIFF images.
C#
//Create a PDF document PdfDocument doc = new PdfDocument(); //Setting margin size of all the pages to zero doc.PageSettings.Margins.All = 0; //Get the image stream and draw frame by frame using (var tiffImage = new PdfBitmap(DataPathBase+ "image.tiff")) { int frameCount = tiffImage.FrameCount; for (int i = 0; i < frameCount; i++) { //Add pages to the document var page = doc.Pages.Add(); //Getting page size to fit the image within the page SizeF pageSize = page.GetClientSize(); //Selecting frame in TIFF tiffImage.ActiveFrame = i; //Draw TIFF frame page.Graphics.DrawImage(tiffImage, 0, 0, pageSize.Width, pageSize.Height); } } //Saves the document doc.Save("TiffImage.pdf"); //Close the document doc.Close(true); //This will open the PDF file so, the result will be seen in default PDF viewer Process.Start("TiffImage.pdf");
VB.NET
'Create a new PDF document Dim doc As PdfDocument = New PdfDocument 'Setting margin size of all pages to zero doc.PageSettings.Margins.All = 0 'Get the image stream and draw frame by frame Dim tiffImage As PdfBitmap = New PdfBitmap(("image.tiff")) Dim frameCount As Int64 = tiffImage.FrameCount Dim i As Integer = 0 Do While (i < frameCount) 'Add pages to the document Dim page = doc.Pages.Add 'Getting page size to fit the image within the page Dim pageSize As SizeF = page.GetClientSize() Selecting frame in TIFF tiffImage.ActiveFrame = i 'Draw TIFF frame page.Graphics.DrawImage(tiffImage, 0, 0, pageSize.Width, pageSize.Height) i = (i + 1) Loop doc.Save("TiffImage.pdf") 'Close the document doc.Close(True) 'This will open the PDF file so, the result will be seen in default PDF viewer Process.Start("TiffImage.pdf")
A complete working sample can be downloaded from TiffToPDFSample.zip
By executing the program, you will get the PDF document as follows.
Take a moment to peruse the documentation for working with images, where you will find other options like inserting, replacing image in PDF document, and image pagination.
An online sample link demonstrating the use of Inserting images in PDF.
Refer here to explore the rich set of Syncfusion Essential PDF features.
Starting with v16.2.0.x, if you reference Syncfusion assemblies from trial setup or from the NuGet feed, include a license key in your projects. Refer to link to learn about generating and registering Syncfusion license key in your application to use the components without trail message.