【发布时间】:2011-03-01 01:45:26
【问题描述】:
如何使用 PDFsharp .NET 库将 PDF 页面导出为图像,以进行像素级操作?
例如,System.Drawing.BitMap.GetPixel()
我正在尝试找出 PDF 文档中的空白区域(全白或任何颜色),以编写一些图形/图像。
2010 年 6 月 9 日:
我已经试过了,但它不起作用。
为什么下面的代码没有按预期工作?
Bitmap.GetPixel 总是返回 0。
//
// PdfSharp.Pdf.PdfDocument
// PdfSharp.Pdf.PdfPage
// PdfSharp.Drawing.XGraphics
// System.Drawing.Bitmap
//
string srcPDF = @"C:\hcr\test\tmp\file1.pdf";
PdfDocument pdfd = PdfReader.Open(srcPDF);
XGraphics xgfx = XGraphics.FromPdfPage(pdfd.Pages[0]);
Bitmap b = new Bitmap((int) pdfp.Width.Point, (int) pdfp.Height.Point, xgfx.Graphics);
int rgb = b.GetPixel(0, 0).ToArgb();
【问题讨论】:
-
难道
xgfx.Graphics总是null?new Bitmap(int, int, Graphics)方法的描述:“使用指定的大小和指定的 Graphics 对象的分辨率初始化 Bitmap 类的新实例。”难怪所有像素都返回 0,因为此函数不会(也不能)从 Graphics 对象复制任何像素。
标签: .net image pdf bitmap pdfsharp