翻譯|行業資訊|編輯:李顯亮|2019-09-18 13:35:49.827|閱讀 410 次
概述:在Aspose.Cells for Java v19.8中有一些新的功能非常有趣和實用,比如從Excel文件中獲取超鏈接列表,當然還有更多要探索的內容,例如提取嵌入式MOL文件,在轉換為PDF / Image之前獲取總頁數,將SVG文件插入工作表以及支持Java 12。下面我們通過簡單的示例來了解一下這些新功能的用法。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
Aspose.Cells for JavaExcel電子表格處理API,允許開發人員在其自己的Java應用程序中嵌入讀取,編寫和操作電子表格的功能,而無需依賴Microsoft Excel。
在Aspose.Cells for Java v19.8中有一些新的功能非常有趣和實用,比如從Excel文件中獲取超鏈接列表,當然還有更多要探索的內容,例如提取嵌入式MOL文件,在轉換為PDF / Image之前獲取總頁數,將SVG文件插入工作表以及支持Java 12。下面我們通過簡單的示例來了解一下這些新功能的用法。
>>Aspose.Cells for Java更新至v19.6,歡迎下載體驗。
在Hyperlink類中引入了一個新屬性LinkType,它使用上面提到的枚舉器返回超鏈接類型。以下是可執行成員:
public static void main(String[] args) throws Exception { //目錄的路徑 String sourceDir = Utils.Get_SourceDirectory(); Workbook workbook = new Workbook(sourceDir + "LinkTypes.xlsx"); //獲取第一個(默認)工作表 Worksheet worksheet = workbook.getWorksheets().get(0); //創建范圍A2:B3 Range range = worksheet.getCells().createRange("A1", "A7"); //獲取范圍內的超鏈接 Hyperlink[] hyperlinks = range.getHyperlinks(); for (Hyperlink link : hyperlinks) { System.out.println(link.getTextToDisplay() + ": " + getLinkTypeName(link.getLinkType())); } System.out.println("DetectLinkTypes executed successfully."); } private static String getLinkTypeName(int linkType){ if(linkType == TargetModeType.EXTERNAL){ return "EXTERNAL"; } else if(linkType == TargetModeType.FILE_PATH){ return "FILE_PATH"; } else if(linkType == TargetModeType.EMAIL){ return "EMAIL"; } else { return "CELL_REFERENCE"; } }
(程序輸出與模板Excel文件)
以MDL Molfile格式創建的分子數據文件是一種化學文件格式,包含純文本信息并存儲有關原子和鍵的信息,通常用作分子信息的標準交換格式。這種類型的文件可以嵌入Excel文件中。在此最新版本中,提供了支持以提取這種不常見類型的對象,即MOL。以下代碼段演示了如何提取嵌入式MOL文件并將其保存到磁盤。
//目錄的路徑. String sourceDir = Utils.Get_SourceDirectory(); String outputDir = Utils.Get_OutputDirectory(); Workbook workbook = new Workbook(sourceDir + "EmbeddedMolSample.xlsx"); int index = 1; for (Object obj : workbook.getWorksheets()) { Worksheet sheet = (Worksheet)obj; OleObjectCollection oles = sheet.getOleObjects(); for (Object obj2 : oles) { OleObject ole = (OleObject)obj2; String fileName = outputDir + "OleObject" + index + ".mol "; FileOutputStream fos = new FileOutputStream(fileName); fos.write(ole.getObjectData()); fos.flush(); fos.close(); index++; } }
當文件頁面太多時,轉換為pdf / image的過程可能會占用太多內存和CPU,并且可能會拋出OOM異常。在轉換之前獲取總頁數可以指示此風險,并執行某些操作(例如,跳過此文件)或打印所選頁面以避免不希望的結果。以下示例顯示了新類SheetPrintingPreview和WorkbookPrintingPreview的用法。這兩個類都包含一個屬性EvaluatedPageCount,它返回打印輸出或PDF文件的頁數。
//目錄的路徑. String sourceDir = Utils.Get_SourceDirectory(); Workbook workbook = new Workbook(sourceDir + "Book1.xlsx"); ImageOrPrintOptions imgOptions = new ImageOrPrintOptions(); WorkbookPrintingPreview preview = new WorkbookPrintingPreview(workbook, imgOptions); System.out.println("Workbook page count: " + preview.getEvaluatedPageCount()); SheetPrintingPreview preview2 = new SheetPrintingPreview(workbook.getWorksheets().get(0), imgOptions ); System.out.println("Worksheet page count: " + preview2.getEvaluatedPageCount());
推薦閱讀:【Excel管理控件Aspose.Cells開發者指南】
*悅滿中秋 · 購享好禮,現在購買Aspose系列產品即可領取精美禮品喲,更多活動詳情可了解哦~
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn