如果我有一些报告,我想在用户通过(Export to pdf file
)下载此报告之前做出具体行动(比如在此pdf中添加水印)。
如何处理导出按钮?
注意:我想要一些通用的方式因为我有很多报告,我不想重复这些代码。我想在下载之前执行pdf
文件的特定行为。
答案 0 :(得分:2)
假设您有原始PDF而没有水印已经可访问:
实施类似的东西;
How can I insert an image with iTextSharp in an existing PDF?
重定向或二进制下载水印文件。
完成。
答案 1 :(得分:1)
最简单的方法是使用一个带有pdf文件的方法的静态类,也许还有水印图像,将其排序并传回去。
如果您想要更通用的内容,例如你想说密码保护和/或水印pdf,或者你有非pdf报告你想做什么。
然后接口IPrepareForExport并在各种类型的“报告”上实现它,或者使用装饰模式和一些属性。
答案 2 :(得分:0)
现在这不是一个容易实现的解决方案。但它完全是通用的。
您应该实施Custom Report Renderer。
通过为Reporting Services创建渲染器,您可以将报告呈现为您选择的格式。
只要您有报告导出,它就可用。
看看这个博客:PDF watermark/background Rendering Extension for SSRS
他已经为你想做的事做了一个延伸。
然后,您可以通过编辑RSReportServer.Config文件来支持您不希望支持的内容。
您的报告数量无关紧要,因为这是一个地方的配置更改。