如果我有一些報告,並希望在用戶通過(Export to pdf file
)下載此報告之前做出特定的操作(如爲此PDF添加水印)。如何在下載之前對特定文件進行一些操作?
如何處理導出按鈕?
注:我想一些通用的方法,因爲我有很多的報道,我不想重複的代碼。我只想在下載文件之前執行pdf
文件的特定行爲。
如果我有一些報告,並希望在用戶通過(Export to pdf file
)下載此報告之前做出特定的操作(如爲此PDF添加水印)。如何在下載之前對特定文件進行一些操作?
如何處理導出按鈕?
注:我想一些通用的方法,因爲我有很多的報道,我不想重複的代碼。我只想在下載文件之前執行pdf
文件的特定行爲。
假設你有原始PDF,而不已經訪問的水印:
實現這樣的事情;
How can I insert an image with iTextSharp in an existing PDF?
重定向或二進制下載水印文件。
完成。
最簡單的方法將是一個靜態類與一個方法,需要PDF文件,也許水印圖像,排序出來,並將其傳回。
如果你想要更通用的東西,例如你想說密碼保護和或水印PDF,或者你有非PDF報告,你想做的事情。
然後接口IPrepareForExport並在各種類型的「報告」上實現它,或者使用裝飾器模式和一些屬性。
現在這不是一個簡單的解決方案來實現。但它是完全通用的。您應該實施Custom Report Renderer。
通過爲Reporting Services創建渲染器,可以將報告渲染爲您選擇的格式。
無論您有報告輸出,它都可以使用。
看看這個博客:PDF watermark/background Rendering Extension for SSRS
他已經做了你想做的事的推廣。
然後您可以通過編輯RSReportServer.Config文件不希望支持的remove the existing rendering option。
您的報告數量無關緊要,因爲這是一處配置更改。