MigraDoc使用PDFsharp和XGraphics对象创建PDF页面。
有几种方法可以向MigraDoc创建的页面添加内容。
http://pdfsharp.net/wiki/MixMigraDocAndPdfSharp-sample.ashx
您甚至可以调用MigraDoc来使用“您的”XGraphics对象进行绘图:
pdfRenderer.DocumentRenderer.PrepareDocumentProgress += PrepareDocumentProgress;
pdfRenderer.PrepareRenderPages();
Console.WriteLine("\r\nRendering document ...");
int pages = pdfRenderer.DocumentRenderer.FormattedDocument.PageCount;
for (int i = 1; i <= pages; ++i)
{
var page = pdfRenderer.PdfDocument.AddPage();
Console.Write("\rRendering page " + i + "/" + pages);
PageInfo pageInfo = pdfRenderer.DocumentRenderer.FormattedDocument.GetPageInfo(i);
page.Width = pageInfo.Width;
page.Height = pageInfo.Height;
page.Orientation = pageInfo.Orientation;
using (XGraphics gfx = XGraphics.FromPdfPage(page))
{
gfx.MUH = pdfRenderer.Unicode ? PdfFontEncoding.Unicode : PdfFontEncoding.WinAnsi;
gfx.MFEH = pdfRenderer.FontEmbedding;
pdfRenderer.DocumentRenderer.RenderPage(gfx, i);
}
}
Console.WriteLine("\r\nSaving document ...");
此帖子中的示例代码:
http://forum.pdfsharp.net/viewtopic.php?p=9293#p9293