使用PDFsharp导入图形
Use PDFsharp to import graphics
我正在查看 PDFsharp (PDFsharp-wpf.1.50.5147\lib\net30\PdfSharp-wpf.dll),希望它可以用于导入矢量图形(路径、图像、文本)。 PDFsharp 代码示例主要是关于创建 PDF,但库中有一些解析和编辑功能。
PdfSharp.Pdf.PdfDocument pdfdoc =
PdfSharp.Pdf.IO.PdfReader.Open(uri, PdfSharp.Pdf.IO.PdfDocumentOpenMode.Modify);
if (pdfdoc == null)
return;
foreach (PdfSharp.Pdf.PdfPage pdfpage in pdfdoc.Pages)
{
PdfSharp.Drawing.XGraphics graph = PdfSharp.Drawing.XGraphics.FromPdfPage(pdfpage);
// how to get XGraphicsPath, PathGeometry ?
// the XGraphicsPathInternals has PathGeometry as WpfPath property
}
是否可以枚举 XGraphics 的内容,将其转换为 System.Windows.Media.DrawingGroup 或类似内容,这样我就可以访问现有 PDF 页面中的图形基元,而无需解析页面内容流中的标记?
我有现有代码通过转换为中间 DrawingGroup 来处理 SVG 导入,如果有从 PDF 页面到绘图的方法,这些代码可能可重复用于 PDF。
XGraphics
class 允许向 PDF 页面添加内容,但不解析 PDF 页面的现有内容。
PDFsharp 不解析页面内容流并提取绘图指令,因此您必须使用自己的代码来完成。
我正在查看 PDFsharp (PDFsharp-wpf.1.50.5147\lib\net30\PdfSharp-wpf.dll),希望它可以用于导入矢量图形(路径、图像、文本)。 PDFsharp 代码示例主要是关于创建 PDF,但库中有一些解析和编辑功能。
PdfSharp.Pdf.PdfDocument pdfdoc =
PdfSharp.Pdf.IO.PdfReader.Open(uri, PdfSharp.Pdf.IO.PdfDocumentOpenMode.Modify);
if (pdfdoc == null)
return;
foreach (PdfSharp.Pdf.PdfPage pdfpage in pdfdoc.Pages)
{
PdfSharp.Drawing.XGraphics graph = PdfSharp.Drawing.XGraphics.FromPdfPage(pdfpage);
// how to get XGraphicsPath, PathGeometry ?
// the XGraphicsPathInternals has PathGeometry as WpfPath property
}
是否可以枚举 XGraphics 的内容,将其转换为 System.Windows.Media.DrawingGroup 或类似内容,这样我就可以访问现有 PDF 页面中的图形基元,而无需解析页面内容流中的标记?
我有现有代码通过转换为中间 DrawingGroup 来处理 SVG 导入,如果有从 PDF 页面到绘图的方法,这些代码可能可重复用于 PDF。
XGraphics
class 允许向 PDF 页面添加内容,但不解析 PDF 页面的现有内容。
PDFsharp 不解析页面内容流并提取绘图指令,因此您必须使用自己的代码来完成。