Sign In| Join
Get Help:Ask a Question in our Forums|Report a Bug|More Help Resources
Member
3 Points
5 Posts
Feb 23, 2009 06:52 PM|LINK
Thanks to Srikanth Kasturi. PDFSharp code worked fine for me. Here is the code.
using PdfSharp.Pdf; using PdfSharp.Drawing;
TiffImageSplitter tiff = new TiffImageSplitter();
public void tiff2PDF(string fileName) { PdfDocument doc = new PdfDocument(); int pageCount = tiff.getPageCount(fileName); for (int i = 0; i < pageCount; i++) { PdfPage page = new PdfPage(); Image tiffImg = tiff.getTiffImage(fileName, i); XImage img = XImage.FromGdiPlusImage(tiffImg); page.Width = img.PointWidth; page.Height = img.PointHeight; doc.Pages.Add(page); XGraphics xgr = XGraphics.FromPdfPage(doc.Pages[i]); xgr.DrawImage(img, 0, 0); } doc.Save("C:/CJT/PDF/34326.pdf"); doc.Close(); }
To make this work you need Tiff related code also. Here is the Tiff Image Splitter code.
class TiffImageSplitter { // Retrive PageCount of a multi-page tiff image public int getPageCount(String fileName) { int pageCount = -1; try { Image img = Bitmap.FromFile(fileName); pageCount = img.GetFrameCount(FrameDimension.Page); img.Dispose(); } catch (Exception ex) { pageCount = 0; } return pageCount; } public int getPageCount(Image img) { int pageCount = -1; try { pageCount = img.GetFrameCount(FrameDimension.Page); } catch (Exception ex) { pageCount = 0; } return pageCount; } // Retrive a specific Page from a multi-page tiff image public Image getTiffImage(String sourceFile, int pageNumber) { Image returnImage = null; try { Image sourceIamge = Bitmap.FromFile(sourceFile); returnImage = getTiffImage(sourceIamge, pageNumber); sourceIamge.Dispose(); } catch (Exception ex) { returnImage = null; } // String splittedImageSavePath = "X:\\CJT\\CJT-Docs\\CJT-Images\\result001.tif"; // returnImage.Save(splittedImageSavePath); return returnImage; } public Image getTiffImage(Image sourceImage, int pageNumber) { MemoryStream ms = null; Image returnImage = null; try { ms = new MemoryStream(); Guid objGuid = sourceImage.FrameDimensionsList[0]; FrameDimension objDimension = new FrameDimension(objGuid); sourceImage.SelectActiveFrame(objDimension, pageNumber); sourceImage.Save(ms, ImageFormat.Tiff); returnImage = Image.FromStream(ms); } catch (Exception ex) { returnImage = null; } return returnImage; }
}
Hope this helps.
get pages in Tiff image Convert Tiff to PDF
sowji250
Member
3 Points
5 Posts
Re: How to convert .tiff image file to .pdf file without using any 3rd party tool using C#.net
Feb 23, 2009 06:52 PM|LINK
Thanks to Srikanth Kasturi. PDFSharp code worked fine for me. Here is the code.
To make this work you need Tiff related code also. Here is the Tiff Image Splitter code.
Hope this helps.
get pages in Tiff image Convert Tiff to PDF