問題
最近同事想要將 datatable 轉出 excel, 但又需要不能讓使用者修改,上面還要有浮水印.
本來想要直接 Render 出 Html 的 Table 並加入 page-break-after 去讓 Browser 分頁, 但 CSS 控制上不是很順利.
實作
Aspose.Cells 可以將各種資料源轉成 Excel (可參考cells methods的 Import 相關 Methods).
所以我們想要的做法如下,
DataTable => 換 ColumnName => Excel => Pdf => Pdf+浮水印
所以就可以抽一個共用的 Method 出來如下,
1 | /// <summary> |
所以可以用測試的 DataTable 資料來測試看看,如下,
1 | private DataTable GetDataSource() |
所以產生的結果如下,
註:
- 因為使用 Aspose.Cells 及 Aspose.Pdf ,所以請記得從 Nuget 去下載哦~
- 有時資料欄位太多時,可以設定列印的縮放比例 pageSetup.Zoom 的值,詳細請參考Scaling Factor
Demo 專案:rainmakerho/asposeExcel2PDF