C# PDF到bmp图像(12页=12幅图像)

C# PDF到bmp图像(12页=12幅图像),c#,asp.net,pdf,bitmap,converter,C#,Asp.net,Pdf,Bitmap,Converter,我必须将pdf逐页解构/提取为位图图像。这将通过我设置的web服务在服务器上完成。我怎样才能做到这一点?它必须是一页一页(每幅图像1页)。 我真的被卡住了,我知道你们当中的一个天才有我一直在寻找的答案 我已经试过了,但没有成功 我用的是C#; PDF没有密码保护; 如果这个解决方案可以将Uri作为PDF位置的参数,那就太好了 解决方案根本不应依赖Acrobat PDF阅读器 很长一段时间以来,我一直在努力使用MigraDoc和PDFSharp以及它们的替代方案来实现上述问题 任何帮助/建议/代码

我必须将pdf逐页解构/提取为位图图像。这将通过我设置的web服务在服务器上完成。我怎样才能做到这一点?它必须是一页一页(每幅图像1页)。 我真的被卡住了,我知道你们当中的一个天才有我一直在寻找的答案

我已经试过了,但没有成功

我用的是C#; PDF没有密码保护; 如果这个解决方案可以将Uri作为PDF位置的参数,那就太好了

解决方案根本不应依赖Acrobat PDF阅读器

很长一段时间以来,我一直在努力使用MigraDoc和PDFSharp以及它们的替代方案来实现上述问题

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

提前谢谢

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

用法示例:

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.PDFRenderer;
名称空间PDF2BMP
{
班级计划
{
静态void Main(字符串[]参数)
{
//创建Bytescout.PDFRenderer.RasterRenderer对象的实例并注册它。
RasterRenderer渲染器=新RasterRenderer();
renderer.RegistrationName=“demo”;
renderer.RegistrationKey=“演示”;
//加载PDF文档。
renderer.LoadDocumentFromFile(“multipage.pdf”);
对于(int i=0;i
我只是在快速尝试,我会发回邮件,并将您的解决方案标记为答案。非常感谢您的快速回复!
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");
        }
    }
}