GrapeCity Documents for Excel 文檔API組件 V2.2 正式發佈,本次新版本包含諸多重量級產品功能,如:將帶有形狀的電子表格導出爲 PDF、控制分頁和電子表格內容、將Excel電子表格的特定頁面打印爲PDF、在工做簿之間剪切和複製工做表等。html
做爲一款適用於 .NET 和 Java 6.0+ 標準的文檔API組件,GrapeCity Documents for Excel 經過編碼的方式,無需依賴 Microsoft Excel ,便可超快批量操做 Excel 文件,與純前端表格控件 SpreadJS 結合使用,可同時在 Web 端實現 Excel 類數據展現、Excel 功能和佈局樣式,以及後端 Excel 導入導出等業務場景,使您開發的應用程序具有快速建立、加載、編輯、導入/導出大型 Excel 文檔的功能模塊。前端
點擊此處,下載最新版 GrapeCity Documents for Excel (Java)java
點擊此處,下載最新版 GrapeCity Documents for Excel (.NET)web
使用 GrapeCity Documents for Excel,您能夠將帶有形狀的電子表格導出爲 PDF,這些形狀包括箭頭、線條、圖片和通常默認形狀(包括 MS Excel 的內置形狀)。利用這一特性,開發人員能夠建立更爲有趣且豐富的 Excel 工做表。編程
導出的 PDF 中支持的形狀屬性包括:後端
.NET 平臺幫助文檔 | .NET 平臺示例 | Java 平臺幫助文檔 | Java 平臺示例安全
GrapeCity Documents for Excel 經過引入一個名爲 PrintManager 的類來控制分頁、導出 PDF 和控制電子表格輸出的內容,該功能經過在 PageInfo 對象中提供用於分頁結果的用戶信息,以及經過 PrintManager.Paginate 方法從 Excel 文件生成的頁面列表中,實現將 Excel 的特定部分導出到 PDF 文檔中。該功能可執行如下操做:ruby
該功能的實現步驟包括:
app
經過 GrapeCity Documents for Excel 提供的這項功能,可有效解決將 Excel 文件轉換爲 PDF 時的分頁、頁面佈局、頁面設置等問題。ide
.NET 平臺幫助文檔 | .NET 平臺示例 | Java 平臺幫助文檔 | Java 平臺示例
一份完整的報表一般是由文本描述、數字和圖表組合而成。以財務報表舉例,完整的財務報表可視爲公司業務活動和財務業績的混合體,爲保證其數據的準確性、不可編輯性與安全性,一般會以 PDF 文檔的格式分發給客戶,儘量地保留原始文檔的質量和數據。
此報表用 Excel 的方式展現了公司現金流、淨收入等數據。Excel 方式的最大特色就是以表格的形式顯示數據,爲了進行二次分發並保證此報表數據的真實性,可經過 GrapeCity Documents for Excel 文檔API 來將 Excel 數據轉換成 PDF,也可提取 Excel 表中某一工做簿的位置在 PDF 文件中進行渲染。
經過使用 GrapeCity Documents for Excel 的 PrintManager 類從 Excel 中提取數據,並經過 GrapeCity Documents for PDF 的 API 導出到 PDF 中。
注意:要使用此功能,您須要同時得到 GrapeCity Documents for PDF 和 GrapeCity Documents for Excel (.NET版本)的許可受權。
.NET 平臺幫助文檔 | .NET 平臺示例 | Java 平臺幫助文檔
有時,咱們不須要打印全部頁面,只須要從 Excel 文件中打印指定的頁面信息。例如如下場景,貴公司有一份年度產品和銷售清單,並經過數據透視表進行分析。您能夠根據須要查看特定客戶的銷售額和產品總銷售額,但只需將數據透視表的數據分析結果打印爲 PDF,以便分發給利益相關者。這時,就會用到將 Excel 電子表格的指定頁面內容打印爲 PDF 功能。
在下面的文件中,公司但願打印 Page 五、Page 6 和 Page 7 部分,而且在打印結果中,以連續頁碼 一、二、3 呈現。
您能夠從 PageInfo 對象中選擇特定的頁面內容,而後使用 PrintManager.UpdatePageNumberAndPageSettings(..)方法設置連續頁碼。
.NET 平臺幫助文檔 | .NET 平臺示例 | Java 平臺幫助文檔 | Java 平臺示例
有時,表數據須要在同一張紙上打印,而不是單獨打印在一個新的頁面上。特別是,當合並單元格時,用戶不但願合併的行數據在打印時被分割在不一樣的頁面上。使用 KeepTogetherRanges 類能夠幫助您設置,打印時將同一張表的數據保持在一張紙上。
.NET 平臺幫助文檔 | .NET 平臺示例 | Java 平臺幫助文檔 | Java 平臺示例
Excel 工做簿中可能同時包含多個工做表的數據。例如,在公司的每個月預算的詳細信息中,每個月摘要位於第一個工做表上,而每個月預算詳細信息則位於單獨的工做表中。在這種狀況下,可以將單頁數據分發給公司股東是最佳狀況。
所以,將多個工做表內容打印到 PDF 中的單個頁面將很是有用,經過 GrapeCity Documents for Excel 的 PrintManager 類與 GrapeCity Documents for PDF 的 API 相結合能夠順利完成該任務。PageInfo PrintManager 的對象可以獲取 Excel 文檔的全部頁面,經過 PrintManager.Draw(..)能夠查看頁面在 GrapeCity Documents for PDF 中的呈現方式,如 n 行 n 列的佈局。
.NET 平臺幫助文檔 | .NET 平臺示例 | Java 平臺幫助文檔 | Java 平臺示例
打印 PDF 時,若是工做表中有多個表,則可能須要在全部頁面上重複表標題。用戶能夠指定當各個表溢出到其餘頁面時重複當前表的標題。
使用 RepeatSettings 類,能夠訪問特定表的標題、尾部行、列、表頭和結尾。您還能夠在 PrintManager.Paginate(..)方法中發送 RepeatSettings 等。
.NET 平臺幫助文檔 | .NET 平臺示例 | Java 平臺幫助文檔 | Java 平臺示例
在任何行業中,都不免生成數百個 Excel 報告來分析數據。爲了分發這些數據給客戶,公司更喜歡 PDF 格式,由於它沒法編輯,能夠保留原始文檔的質量和格式。
若是多個報告屬於單個項目,您必定不但願向客戶提供多個 PDF 文件。GrapeCity Documents for Excel 爲您提供了將不一樣的 Excel 工做簿導出爲一個 PDF 的功能,僅需簡單的代碼便可實現。調用 PrintManager 類能夠在不一樣的工做簿中直接保存爲一個 PDF 文件。
.NET 平臺幫助文檔 | .NET 平臺示例 | Java 平臺幫助文檔 | Java 平臺示例
在許多狀況下,在 PDF 的底部或右側重複行、列是有幫助的。例如,貴公司可能須要在每一個打印頁面的底部重複免責聲明或註釋:
咱們以世界衛生組織的報告爲例。它收集區域衛生技術信息,做爲國家衛生計劃的一部分,或僅有一個不屬於國家衛生計劃的衛生技術中心的地區。咱們使用 Yes1 和 Yes2 的值做爲圖例,在每頁的底部重複。
您可能須要對數據透視表的不一樣區域進行不一樣的格式化,以強調哪些數據屬於哪裏,好比:組織的月度預算報告。該報告將以 3 頁打印,每頁都會在最後重複該消息。
Microsoft Excel 沒有直接在底部或右側重複行或列的方法,它只能選擇在頂部或左側重複行或列。要在 Microsoft Excel 的底部重複行,通常只能使用「頁腳」,但它對於大型文本的做用是有限的。
經過 GrapeCity Documents for Excel 的 PageSetup API ,能夠在導出到 PDF 時在右側重複行或列。經過 IPageSetup.PrintTailRows / PrintTailColumns 可在 PDF 導出期間重複行或列。
.NET 平臺幫助文檔 (在底部重複行)
.NET 平臺幫助文檔 (右側重複列)
.NET 平臺示例(在底部重複行)
.NET 平臺示例(右側重複列)
Java 平臺幫助文檔 (在底部重複行 )
Java 平臺幫助文檔 (右側重複列)
Java 平臺示例(在底部重複行 )
Java 平臺示例(右側重複列)
數據透視表是一種數據分析摘要工具,其中複雜的數據被分組並按行和列進行排序。您可能須要在數據透視表的不一樣區域以不一樣的格式強調數據歸屬,特別是如下區域中:
例如,在下面的銷售報告中,使用了數據透視表對產品 ID 進行分組,從而顯示每季度的銷售數據。此表使用了不一樣的背景色突出顯示每一個行標題和子行標題內容。
GrapeCity Documents for Excel 提供的數據透視表功能支持條件格式化。經過設置,數據透視表的標題、小計和總計中重複的行/列將具備相同的樣式(如 API 中所定義的那樣),您不須要單獨設置每一行/列的樣式,而且在格式化數據透視表時,能夠將具備樣式和數字格式的數據透視表導出爲 PDF,而不會丟失任何樣式。
.NET 平臺幫助文檔 | .NET 平臺示例 | Java 平臺幫助文檔 | Java 平臺示例
表格數據的逗號分隔值文件(.csv)一般用於管理 Excel 文件中的信息,例如,產品、庫存、客戶信息和其餘數據,用戶能夠輕鬆地向 .CSV 文件錄入信息,如直接錄入或經過第三方導入。
在經過第三方導入時,沒必要僅使用逗號進行分隔數據,任何字符串或字符均可用於分隔 Excel 文件的行、列或單元格。
GrapeCity Documents for Excel 不只支持列分隔符、自定義分隔符,還支持使用任何行、單元格、列分隔符導入和導出 .csv 文件。
var openOption = new CsvOpenOptions(); openOption.ColumnSeparator = ","; openOption.RowSeparator = "\r\n"; openOption.CellSeparator = '"'; workbook.Open(@"D:\test.csv", openOption); var saveOption = new CsvSaveOptions(); saveOption.ColumnSeparator = "-"; saveOption.RowSeparator = "\n"; saveOption.CellSeparator = '\''; workbook.Save(@"D:\test_out.csv", saveOption);
.NET 平臺幫助文檔 | .NET 平臺示例 | Java 平臺幫助文檔 | Java 平臺示例
Excel 文件以格式化數據和公式而聞名。用戶在建立複雜的工做表後,每每須要在其餘工做表上覆制內容。根據不一樣的須要,複製的內容也有所不一樣。您可能只想複製文本內容、目標主題、公式,或僅複製格式。例如,在每個月預算報告中,計算公式都保持不變;可是,格式可能會被修改。
下圖便可反映出如何經過 GrapeCity Documents for Excel 僅複製公式的操做。
GrapeCity Documents for Excel 除了提供可複製範圍內的全部數據(不包括列寬/行高之外的設置),還包含各類 PasteType 選項,經過這些選項,用戶能夠經過 Excel 文件覆蓋複製、粘貼內容中涉及的多個方案,例如:
舉例,使用如下代碼僅複製公式:
var workbook = new Workbook(); var worksheet = workbook.ActiveSheet; worksheet.Range["A1"].Value = "2019/3/08"; worksheet.Range["A1"].Font.Size = 20; worksheet.Range["A1"].Copy(worksheet.Range["D1"], PasteType.Formulas);
.NET 平臺幫助文檔 | .NET 平臺示例 | Java 平臺幫助文檔 | Java 平臺示例
GrapeCity Documents for Excel 在 Excel 工做表中插入行/列時,分頁符能夠經過添加數據來調整。例如,公司將其銷售記錄從 Excel 導出到 PDF 時,爲保證每一個區域均可以單獨顯示在一個新的頁面上,GrapeCity Documents for Excel 會自動執行插入分頁符操做。
使用 GrapeCity Documents for Excel 的 FixedPageBreaks 屬性來控制分頁符的調整方式(在對行/列執行插入、刪除操做時),這樣作的目的,是爲了保證每一個區域都會單獨佔據一張新頁面。
注意:要在行/列插入、刪除時自動調整分頁符,請將 FixedPageBreaks 設置爲 false。若是您不但願自動調整分頁符,請將 FixedPageBreak 設置爲 true。
.NET 平臺幫助文檔 | .NET 平臺示例 | Java 平臺幫助文檔 | Java 平臺示例
在處理大量的 Excel 工做表和模板時,咱們常常會使用複製和移動工做表的功能。例如,公司的預算工做表包含複雜的數據和須要按季度填寫的公式,這些公式基本每一年都會重複,每一個部門在建立新的預算工做表時僅需複製主模板的內容和結構便可快速生成,而在 GrapeCity Documents for Excel 中這項工做將變得更爲簡單。
GrapeCity Documents for Excel 經過編程的方式複製和移動工做表,worksheet.Copy 方法用以在不一樣的位置複製和移動工做表。
Workbook workbook = new Workbook(); var worksheet = workbook.ActiveSheet; var worksheet_copy_sameWorkbook = worksheet.Copy(); var newWorkbook = new Workbook(); var worksheet_copy_otherWorkbook = worksheet.Copy(newWorkbook);
.NET 平臺幫助文檔 | .NET 平臺示例(複製工做表) | .NET 平臺示例(移動工做表)
Java 平臺幫助文檔 | Java 平臺示例(複製工做表) | Java 平臺示例(移動工做表)
GrapeCity Documents for Excel 支持跨工做簿剪切和複製數據,這項功能使得在任何範圍內剪切、複製數據都將變得更加容易,尤爲是須要在數百個工做簿中使用相同數據的時候。
跨工做簿剪切和複製數據的示例代碼:
Workbook workbook = new Workbook(); var worksheet = workbook.ActiveSheet; var newWorkbook = new Workbook(); //Copy range to another workbook worksheet.Range["B2:F21"].Copy(newWorkbook.ActiveSheet.Range["D5"]);
.NET 平臺幫助文檔 | .NET 平臺示例 | Java 平臺幫助文檔 | Java 平臺示例
當須要把 Excel 數據更新到多個電子表格時,可以快速找到所需信息相當重要。在常規手段下,掃描數百個行和列很是耗時,但您可使用 GrapeCity Documents for Excel 在幾秒鐘內完成此項任務。
例如,公司但願更新年度預算報表,該報表是按照月度預算進行分類的,如今須要在每個月費用中新增一行數據,該數據具有特定的計算公式。此時,就須要在每一個工做表中找到這個特定的公式,並執行公式運算結果。使用 Excel 完成這項工做將是很是耗時的,但經過 GrapeCity Documents for Excel 提供的查找和替換 API 便可快速完成。
如下代碼顯示瞭如何在工做表中查找和替換公式:
FindOptions fd = new FindOptions(); fd.LookIn = FindLookIn.OnlyFormulas; foreach (var worksheet in workbook.Worksheets) { IRange range = null; do { range = worksheet.UsedRange.Find("X", range, fd); if (range != null) { range.Formula = range.Formula.Replace("X", "Y"); } } while (range != null); }
.NET 平臺幫助文檔 | .NET 平臺示例 | Java 平臺幫助文檔 | Java 平臺示例
GrapeCity Documents for Excel 如今支持 IRange.FormulaArrayR1C1(),該函數能夠爲任何單元格範圍引用 R1C1 樣式公式。
例:
worksheet.Cells["A11"].R1C1Formula = "=SUM(R[-10]C[0]:R[-7]C[0])";
GrapeCity Documents for Excel 容許導出爲 PDF 時縮小文本內容以適應邊框大小。
在 Microsoft Excel 中,單元格內的文本內容默認禁用「縮小到適合」的設置。所以,將此文檔導出爲 PDF 時,該單元格的文本內容可能會因爲字號過大而顯示不完整。
GrapeCity Documents for Excel 經過引入一個新的 API
.NET 平臺幫助文檔 | .NET 平臺示例 | Java 平臺幫助文檔 | Java 平臺示例
GrapeCity Documents for Excel 在導入 Excel 電子表格時支持 NoFlag、Data、Formulas Import 和更多類型的標誌,如:
GrapeCity Documents for Excel 引入了自動調整工做簿任何範圍內行高和列寬的選項,並可根據數據進行調整,該 API 很是易於使用,只需在工做簿範圍內,執行「AutoFit()」方法便可。
對於數據太長而沒法放入 Excel 單元格內的,經過使用 GrapeCity Documents for Excel ,便可自動調整行高、列寬,以實現跨越單元格的樣式。想象一下,當你有成千上萬行不一樣長度的文字,必須掃描整個工做簿以檢查行高和列寬,纔可確保數據徹底可見,但經過 GrapeCity Documents for Excel ,僅用少許的代碼便可快速完成這一步操做。
.NET 平臺幫助文檔 | .NET 平臺示例 | Java 平臺幫助文檔 | Java 平臺示例
您如今能夠經過 GrapeCity Documents for Excel 使用 OLEObjects 方式加載、修改和保存 Excel 電子表格。與此同時,在 Excel I / O 操做期間將保留這些對象。
.NET 平臺幫助文檔 | .NET 平臺示例 | Java 平臺幫助文檔 | Java 平臺示例
使用 GrapeCity Documents for Excel 在 Excel I / O 中保留日語 ruby 字符。即便在某些 API 操做以後,日語 Ruby 字符也會被保留,例如:插入、刪除、複製、剪切、合併、清除、排序等。
以上就是GrapeCity Documents for Excel 文檔API組件 V2.2 的新特性介紹,更多內容歡迎前往產品官網瞭解。
點擊此處,下載最新版 GrapeCity Documents for Excel (Java)
點擊此處,下載最新版 GrapeCity Documents for Excel (.NET)