翻譯|產(chǎn)品更新|編輯:龔雪|2025-04-07 11:33:18.500|閱讀 129 次
概述:DevExpress Office File API控件日前正式發(fā)布了v24.2,新版本正式官宣不再支持非Windows系統(tǒng)等,歡迎下載最新版組件體驗(yàn)!
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
DevExpress Office File API是一個(gè)專為C#, VB.NET 和 ASP.NET等開發(fā)人員提供的非可視化.NET庫。有了這個(gè)庫,不用安裝Microsoft Office,就可以完全自動(dòng)處理Excel、Word等文檔。開發(fā)人員使用一個(gè)非常易于操作的API就可以生成XLS, XLSx, DOC, DOCx, RTF, CSV 和 Snap Report等企業(yè)級(jí)文件。
DevExpress Office File API控件日前正式發(fā)布了v24.2,新版本正式官宣不再支持非Windows系統(tǒng)等,歡迎下載最新版組件體驗(yàn)!
DevExpress技術(shù)交流群11:749942875 歡迎一起進(jìn)群討論
由于官方對(duì).NET 8的承諾,以及再去年發(fā)布跨平臺(tái)的基于SkiaSharp的引擎之后,重構(gòu)了源代碼并在非Windows環(huán)境(libgdiplus)中刪除了所有與GDI+相關(guān)的方法調(diào)用。
C#
using System.IO; using DevExpress.XtraRichEdit; // ... RichEditDocumentServer wordProcessor = new RichEditDocumentServer(); //... using(FileStream stream = new FileStream(resultFilePath, FileMode.Create, FileAccess.Write, FileShare.Read)) { PdfExportOptions exportOptions = new PdfExportOptions(); exportOptions.PdfUACompatibility = PdfUACompatibility.PdfUA1; wordProcessor.ExportToPdf(stream, exportOptions); }
多種DevExpress產(chǎn)品(Reporting、BI Dashboard和Office File API)都帶有打印和數(shù)據(jù)導(dǎo)出功能,適用于受限制的環(huán)境,如Microsoft Azure(其中與元文件和字體對(duì)象相關(guān)的某些GDI/GDI+調(diào)用不可用),AzureCompatibility.Enabled屬性管理此功能。
在v23.2版本周期中,官方停止了對(duì)非Windows環(huán)境中此屬性切換所提供的功能支持。在v24.2中,官方也在基于Windows的環(huán)境中逐步取消了Office File API庫中的AzureCompatibility.Enabled切換,建議在針對(duì)云/受限環(huán)境時(shí)使用基于Skia的跨平臺(tái)圖形引擎。
DevExpress Office File API庫自動(dòng)確定所使用的適用繪圖引擎,您可以通過使用靜態(tài)的選項(xiàng)手動(dòng)切換到不同的繪圖引擎。
C#
DevExpress.Drawing.Settings.DrawingEngine = DevExpress.Drawing.DrawingEngine.Skia;
v24.2擴(kuò)展了公式計(jì)算引擎,并將動(dòng)態(tài)數(shù)組集成到Spreadsheet Document API庫中。與標(biāo)準(zhǔn)數(shù)組公式不同,標(biāo)準(zhǔn)數(shù)組公式為每個(gè)單元格返回一個(gè)值,而動(dòng)態(tài)數(shù)組函數(shù)返回一個(gè)動(dòng)態(tài)的值數(shù)組(這個(gè)值數(shù)組會(huì)自動(dòng)溢出到相鄰的單元格中)。
新的函數(shù)包括:
現(xiàn)在您可以在Spreadsheet Document API庫中導(dǎo)入包含動(dòng)態(tài)數(shù)組公式的Excel文檔,調(diào)用方法重新計(jì)算這些公式,并將計(jì)算后的文檔保存為Excel格式,打印和導(dǎo)出為PDF也可用。
此外您可以在代碼中管理動(dòng)態(tài)數(shù)組公式,v24.2發(fā)布了以下新API:
如果您想使用新的API獲取、插入或清除動(dòng)態(tài)數(shù)組公式,請(qǐng)參閱以下代碼片段:
C#
Worksheet worksheet = workbook.Worksheets.ActiveWorksheet; // Insert dynamic array formulas worksheet["A1"].DynamicArrayFormulaInvariant = "={\"Red\",\"Green\",\"Orange\",\"Blue\"}"; worksheet.DynamicArrayFormulas.Add(worksheet["A2"], "=LEN(A1:D1)"); // Clear dynamic array formulas Cell cell = worksheet.Cells["B2"]; if (cell.HasDynamicArrayFormula) { CellRange dynamicArrayRange = cell.GetDynamicArrayFormulaRange(); dynamicArrayRange.Clear(); } worksheet.DynamicArrayFormulas.Remove(worksheet.Cells["A1"].GetDynamicArrayFormulaRange());
要抑制動(dòng)態(tài)數(shù)組公式計(jì)算并恢復(fù)到以前的操作,請(qǐng)將WorkbookCapabilitiesOptions.DynamicArrayFormulas屬性設(shè)置為DocumentCapability.Disabled。在本例中,動(dòng)態(tài)數(shù)組公式將作為標(biāo)準(zhǔn)數(shù)組公式計(jì)算。
DevExpress Spreadsheet Document API庫(v24.2)允許您將圖像直接嵌入到工作表單元格中(使用Microsoft Excel的“Place in Cell”選項(xiàng)),還可以導(dǎo)入在工作表單元格中嵌入圖像的文檔,打印這些文檔,將其導(dǎo)出為PDF并將其保存到支持的Excel文件中(不會(huì)丟失內(nèi)容)。
v24.2包含了用于在代碼中管理單元嵌入圖像的新API,嵌入的圖像存儲(chǔ)為單元格值。若要確定單元格是否有嵌入圖像,請(qǐng)使用CellValueIsCellImage屬性。使用CellValueImageValue屬性獲取單元格圖像值作為OfficeImage對(duì)象(允許您檢查圖像格式或獲取圖像字節(jié))。若要在單元格中插入圖像,請(qǐng)將其分配給CellRangeValue屬性。Spreadsheet Document API庫支持以下對(duì)象類型作為圖像源:
此外,v24.2實(shí)現(xiàn)了指定圖像Alt Text(有意義的描述)值和將單元格圖像標(biāo)記為裝飾性的選項(xiàng),這些設(shè)置可以通過屬性獲得。
下面的代碼片段演示了這個(gè)新的API:
C#
byte[] imageBytes = File.ReadAllBytes("image.png"); MemoryStream imageStream = new MemoryStream(imageBytes); DXImage dximage = DXImage.FromStream(imageStream); // Insert cell images from a byte array, stream and DXImage object worksheet.Cells["A1"].Value = imageBytes; worksheet.Cells["A2"].Value = imageStream; worksheet.Cells["A3"].Value = dximage; // Set image Alt Text values worksheet.Cells["A1"].ImageInfo.AlternativeText = "Image AltText"; // Mark the cell image as decorative if (worksheet.Cells["A2"].Value.IsCellImage) worksheet.Cells["A2"].ImageInfo.Decorative = true; // Save the cell image to a new file OfficeImage cellImage = worksheet.Cells["A1"].Value.ImageValue; if (cellImage.RawFormat == OfficeImageFormat.Png) { byte[] cellImageBytes = cellImage.GetImageBytes(cellImage.RawFormat); File.WriteAllBytes("saved_image.png", cellImageBytes); } // Remove cell image worksheet.Cells["A3"].ClearContents();
v24.2增加了對(duì)Spreadsheet單元格內(nèi)的對(duì)齊和分布式垂直對(duì)齊類型的支持,具有這些對(duì)齊選項(xiàng)的Excel文件可以打印并導(dǎo)出為PDF。
您可以使用Cell.Alignment.Vertical屬性在代碼中指定垂直對(duì)齊方式,下面的代碼片段指定了代碼中的對(duì)齊方式:
C#
var workbook = new Workbook(); var worksheet = workbook.Worksheets[0]; Cell cellA1 = worksheet.Cells["A1"]; cellA1.Value = "Centered and Justified"; cellA1.Alignment.Horizontal = SpreadsheetHorizontalAlignment.Center; cellA1.Alignment.Vertical = SpreadsheetVerticalAlignment.Justify; workbook.ExportToPdf("Result.pdf");
更多產(chǎn)品資訊及授權(quán),歡迎來電咨詢:023-68661681
慧都科技是專注軟件工程、智能制造、石油工程三大行業(yè)的數(shù)字化解決方案服務(wù)商。在軟件工程領(lǐng)域,我們提供開發(fā)控件、研發(fā)管理、代碼開發(fā)、部署運(yùn)維等軟件開發(fā)全鏈路所需的產(chǎn)品,提供正版授權(quán)采購、技術(shù)選型、個(gè)性化維保等服務(wù),幫助客戶實(shí)現(xiàn)技術(shù)合規(guī)、降本增效與風(fēng)險(xiǎn)可控。
慧都科技是DevExpress的中國區(qū)的合作伙伴,DevExpress作為用戶界面領(lǐng)域的優(yōu)秀產(chǎn)品,幫助企業(yè)高效構(gòu)建權(quán)限管理、數(shù)據(jù)可視化(如網(wǎng)格/圖表/儀表盤)、跨平臺(tái)系統(tǒng)(WinForms/ASP.NET/.NET MAUI)及行業(yè)定制解決方案,加速開發(fā)并強(qiáng)化交互體驗(yàn)。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:慧都網(wǎng)