我正在寻找一个简单的免费组件,我可以在其中生成给定的pdf文件缩略图。
我调查了PDFBox
,GhostScript
和Abobe Interop
。 GhostScript
太重,无法部署(文件太多),Abobe Interop
需要安装Acrobat Pro 7或更高版本,否则COM异常和PDFBox渲染功能仍未实现。 Win-forms是否有免费的简单组件?
我还查看了http://tallcomponents.net/ PDF缩略图组件,显然它只适用于Web
提前致谢。
答案 0 :(得分:4)
看看PDFLibNet。它是一个可用于查看PDF的DLL。您可以使用它为每个页面生成预览图像,如下所示:
Image RenderPage(PDFLibNet.PDFWrapper doc, int page)
{
doc.CurrentPage = page + 1;
doc.CurrentX = 0;
doc.CurrentY = 0;
using (var box = new PictureBox())
{
// have to give the document a handle to render into
doc.RenderPage(box.Handle);
// create an image to draw the page into
var buffer = new Bitmap(doc.PageWidth, doc.PageHeight);
doc.ClientBounds = new Rectangle(0, 0, doc.PageWidth, doc.PageHeight);
using (var g = Graphics.FromImage(buffer))
{
var hdc = g.GetHdc();
try
{
doc.DrawPageHDC(hdc);
}
finally
{
g.ReleaseHdc();
}
}
return buffer;
}
}
答案 1 :(得分:3)
我们正在寻找类似的解决方案 - 创建一个图像"缩略图"来自pdf。在我们的搜索中,我们查看了上面的所有内容,但它们都有自己的问题和复杂性。
我们偶然发现了abcPDF(http://www.websupergoo.com/)。该产品具有一切,简单易用。以下是有关从PDF创建PNG的文档的深层链接。 http://www.websupergoo.com/helppdf8net/source/4-examples/19-rendering.htm
答案 2 :(得分:1)
我在SourceForge.net上创建了项目。我使用过Windows API,因此您不需要任何Adobe Pro: