我搜索了一种方法,将第3组压缩的TIFF转换为png或使用c#.net转换为pdf的最佳方式。
答案 0 :(得分:1)
TIFF到PNG:
System.Drawing.Image将允许您打开Group3 TIFF并将其保存为PNG,只需将TIFF作为普通图片加载(例如Image.FromFile,Image.FromStream等),然后保存它使用Image.Save方法和ImageFormat.Png参数。由于TIFF变化很大,有时我遇到了一个模糊的TIFF,System.Drawing无法打开,但这是不寻常的。如果发生这种情况,您需要从opensource中寻找第三方库(例如iText有一个复杂的图像库),或者有商业选项,如Lead Tools或Atalasoft。
TIFF到PDF:
iTextSharp是一个很棒的图书馆。我甚至在a google search找到了一些关于这个特定主题的文章。 This one似乎是一个很好的开始,以满足您的需求。
答案 1 :(得分:1)
请尝试使用LibTiff.Net库。
该库附带tiff2pdf utility,可能完全符合您的需要。您甚至可以在应用程序中包含该实用程序的代码。
库和实用程序是免费的开源软件。许可证(新BSD许可证)允许任何修改。您可以在商业应用程序中使用库和实用程序。
免责声明:我是图书馆的维护者之一。
答案 2 :(得分:1)
(免责声明 - 我为Atalasoft工作) 如果你使用dotImage,两次转换都是微不足道的。
for tiff to pdf:
using (outputStream = new FileStream(pathToPdf, FileMode.Create)) {
PdfEncoder encoder = new PdfEncoder();
encoder.Save(outputStream, new FileSystemImageSource(pathToTiff, true), null); // true = do all pages
}
for tiff to png:
FileSystemImageSource source = new FileSystemImageSource(pathToTiff, true);
int page = 0;
while (source.HasMoreImages()) {
AtalaImage image = source[page];
using (FileStream stm = new FileStream("output_page_" + page + ".png", FileMode.Create)) {
PngEncoder encoder = new PngEncoder();
encoder.Save(stm, image, null);
}
source.Release(image);
}
答案 3 :(得分:0)
使用ghostscript,我曾经从PDF中提取图像并创建缩略图,lib也可以从图像转换为PDF,它是开源的。
一个人为ghostscript API创建一个包装器: http://www.mattephraim.com/blog/2009/01/06/a-simple-c-wrapper-for-ghostscript/