首页 文章

PDF到bmp图像(12页= 12张图片)

提问于
浏览
4

I have to deconstruct/extract a pdf page by page into bitmap images . 这将通过我一直在寻找的Web服务在服务器上完成 .

我试过了:http://www.pdfsharp.net/wiki/ExportImages-sample.ashx哪个不能正常工作 .

我正在使用C#; PDF不受密码保护;如果这个解决方案可以将Uri作为PDF位置的参数,那将是非常好的!

The solution should not be reliant on Acrobat PDF Reader at all

我一直在努力尝试使用MigraDoc和PDFSharp及其替代方案来解决上述问题 .

任何帮助/建议/代码将不胜感激!!

提前致谢!

1 回答

  • 5

    LibPdf

    此库将PDF文件转换为图像 . 支持的图像格式是PNG和BMP,但您可以轻松添加更多 .

    Usage example:

    using (FileStream file = File.OpenRead(@"..\path\to\pdf\file.pdf")) // in file
    {
        var bytes = new byte[file.Length];
        file.Read(bytes, 0, bytes.Length);
        using (var pdf = new LibPdf(bytes))
        {
            byte[] pngBytes = pdf.GetImage(0,ImageType.BMP); // image type
            using (var outFile = File.Create(@"..\path\to\pdf\file.bmp")) // out file
            {
                outFile.Write(pngBytes, 0, pngBytes.Length);
            }
        }
    }
    

    Bytescout PDF Renderer SDK

    using System;
    
    using Bytescout.PDFRenderer;
    
    
    namespace PDF2BMP
    {
        class Program
        {
            static void Main(string[] args)
            {
                // Create an instance of Bytescout.PDFRenderer.RasterRenderer object and register it.
                RasterRenderer renderer = new RasterRenderer();
                renderer.RegistrationName = "demo";
                renderer.RegistrationKey = "demo";
    
                // Load PDF document.
                renderer.LoadDocumentFromFile("multipage.pdf");
    
                for (int i = 0; i < renderer.GetPageCount(); i++)
                {
                    // Render first page of the document to BMP image file.
                    renderer.RenderPageToFile(i, RasterOutputFormat.BMP, "image" + i + ".bmp");
                }
    
                // Open the first output file in default image viewer.
                System.Diagnostics.Process.Start("image0.bmp");
            }
        }
    }
    

相关问题