C# 使用 iTextSharp 将 PDF 文件转换为图片
要将上传的 PDF 文件转换为图像,您需要使用第三方库,例如 iTextSharp 或 Ghostscript.NET。以下是使用 iTextSharp 将 PDF 文件转换为图像的示例代码:
using iTextSharp.text.pdf;
using iTextSharp.text;
using System.Drawing.Imaging;
public void ConvertPdfToImage(string pdfFilePath, string outputImagePath)
{
using (var reader = new PdfReader(pdfFilePath))
{
var numberOfPages = reader.NumberOfPages;
var document = new Document();
var pdfParser = new PdfReaderContentParser(reader);
for (var pageNumber = 1; pageNumber <= numberOfPages; pageNumber++)
{
var renderListener = new ImageRenderListener(outputImagePath.Replace(".jpg", pageNumber + ".jpg"));
pdfParser.ProcessContent(pageNumber, renderListener);
}
}
}
public class ImageRenderListener : IRenderListener
{
private string _outputImagePath;
public ImageRenderListener(string outputImagePath)
{
_outputImagePath = outputImagePath;
}
public void BeginTextBlock() { }
public void EndTextBlock() { }
public void RenderImage(ImageRenderInfo renderInfo)
{
var image = renderInfo.GetImage();
if (image == null) return;
var systemDrawingImage = image.GetDrawingImage();
systemDrawingImage.Save(_outputImagePath, ImageFormat.Jpeg);
}
public void RenderText(TextRenderInfo renderInfo) { }
}
使用上述代码,您可以将 PDF 文件转换为指定的输出图像路径。请注意,此代码仅转换 PDF 文件中的图像,而不转换文本或其他元素。
原文地址: https://www.cveoy.top/t/topic/okD4 著作权归作者所有。请勿转载和采集!