我使用PdfSharp创建PdfDocument对象:
private readonly PdfDocument _pdf = new PdfDocument();
除了实际添加文本,设置字体样式等的其他方法之外,我将pdf文件写入磁盘上的临时位置:
var tempPdf = string.Concat(Path.GetTempPath(), Guid.NewGuid().ToString(), ".pdf");
_pdf.Save(tempPdf);
然后我在System.Windows.Clipboard类中使用它将内容复制到剪贴板:
Clipboard.SetFileDropList(new StringCollection {tempPdf});
例如,当用户将剪贴板内容粘贴到Word文档中时,pdf内容会根据需要显示在文档中。
我遇到的问题是,当用户双击嵌入的PDF时,它会在Adobe Reader等查看器中启动PDF,这也是预期的。我遇到的(意料之外的)问题是,我需要阻止此弹出窗口的发生,因为这些内容将被插入到法律文件中。
是否可以建议任何方法或策略来帮助我实现这样的目标?总结一下 - 允许他们将存储在剪贴板中的[pdf]内容粘贴到Word文档中,但双击时不会打开。
答案 0 :(得分:0)
答案在我的问题中;)
感谢Nyerguds帮助我摆脱茧 - 我注意使用PDF文件复制到剪贴板。
解决方案是用System.Drawing.Graphics / System.Drawing.Bitmap替换PdfSharp用于pdf生成的用法,以创建我们想要复制的jpg图像。
一旦将剪贴板内容粘贴到Word文档中,我们就不再有双击图像可打开的问题了。