【发布时间】:2015-10-22 09:42:42
【问题描述】:
我有一个由 PDFsharp 生成并在 WCF 客户端中正确显示的 PDF 文档。该文档由一个页面组成,该页面又包含一个图像。代码如下:
PdfDocument d = new PdfDocument();
d.Info.Title = "Temporary Passport Document";
d.Info.Title = applicant.ApplID + " " + initials + " - Passport";
PdfPage p = new PdfPage();
d.AddPage(p);
XGraphics gfx = XGraphics.FromPdfPage(p);
XImage img = XImage.FromFile(passport.AttachmentPath);
p.Width = img.Size.Width + 40;
p.Height = img.Size.Height + 40;
gfx.DrawImage(img, 20, 20);
使用以下代码将 PDF 文档保存到 byte[] 中(d 是 PDFSharp 文档,passport.PassportScan 是 byte[]):
MemoryStream ms = new MemoryStream();
d.Save(ms, false);
passport.PassportScan = ms.ToArray();
byte[] 被发送到 WCF 服务以保存它。因此,我将 byte[] 转换回 PDFsharp 文档并尝试使用以下代码保存它:
PdfDocument d = new PdfDocument(new MemoryStream(pPassport.PassportScan));
d.Save(RecruitAidPathRoot + "100104 - JPD - John Paul Doe\\" + "JPD - file.pdf");
执行最后一行时出现错误“无法保存没有页面的 PDF 文档”
客户端中的文档包含一页,所以服务中的文档也应该包含一页对吗?
提前致谢。
【问题讨论】: