翻譯|行業(yè)資訊|編輯:龔雪|2022-04-29 14:33:02.160|閱讀 268 次
概述:本文主要介紹DevExpress跨平臺(tái)產(chǎn)品中的一些重大變化及解決方案,新鮮資訊搶先看哦!
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
本文詳細(xì)介紹DevExpress跨平臺(tái)產(chǎn)品中與System.Drawing.Common 相關(guān)的重大變化的解決方案,由于部署在非 Windows 機(jī)器上的應(yīng)用程序數(shù)量不斷增加,因此這項(xiàng)任務(wù)是 DevExpress 多個(gè)開發(fā)團(tuán)隊(duì)的高度優(yōu)先事項(xiàng)。
Microsoft將歸結(jié)為.NET 6及更高版本中的Windows特定庫,請(qǐng)?jiān)L問以下頁面并查看更改原因部分以獲取更多信息:
在 .NET 6 中,在非 Windows 操作系統(tǒng)上使用 System.Drawing.Common 庫會(huì)產(chǎn)生編譯時(shí)警告并引發(fā)和 異常。 為了讓軟件開發(fā)人員有時(shí)間遷移到更現(xiàn)代的圖形庫,Microsoft 引入了運(yùn)行時(shí)配置開關(guān)。 您可以在 runtimeconfig.json 文件中將 System.Drawing.EnableUnixSupport 選項(xiàng)設(shè)置為 true 以啟用對(duì)非 Windows 平臺(tái)的支持并避免運(yùn)行時(shí)異常:
{
"configProperties": {
"System.Drawing.EnableUnixSupport": true
}
}
但是,.NET 7 及更高版本將不支持此運(yùn)行時(shí)配置開關(guān),并且所有在非 Windows 平臺(tái)上使用 Sytem.Drawing.Common API 的應(yīng)用程序都會(huì)拋出 PlatformNotSupportedException。
此重大更改影響以下 DevExpress 跨平臺(tái)產(chǎn)品 - 使用 System.Drawing.Common 作為渲染/文本測(cè)量引擎的組件:
由于在所有受支持的非 Windows 環(huán)境(Linux 和 macOS、Azure 應(yīng)用服務(wù)和 Docker 容器)中維護(hù)組件功能十分重要,技術(shù)團(tuán)隊(duì)計(jì)劃在 2022 年更新產(chǎn)品來消除對(duì) System.Drawing.Common 的依賴并實(shí)現(xiàn) 一個(gè)自定義的跨平臺(tái)渲染引擎。
在即將發(fā)布的 v22.1 周期中引入新的 DevExpress.Drawing 程序集,此程序集將包含非 Windows 系統(tǒng)(圖像、字體、筆、畫筆等)不支持的所有 System.Drawing 類的自定義實(shí)現(xiàn)。在 v22.2 中,官方技術(shù)團(tuán)隊(duì)計(jì)劃使用基于 SkiaSharp 的跨平臺(tái)渲染引擎發(fā)布另一個(gè)程序集它是一個(gè)穩(wěn)定、功能齊全的開源庫,完全符合要求。一旦有新的程序集可用,您需要將它們合并到您的項(xiàng)目中。(如果您開發(fā)特定于 Windows 的應(yīng)用程序,將能夠使用項(xiàng)目轉(zhuǎn)換器工具將項(xiàng)目升級(jí)到較新的版本并添加必要的程序集引用/更新 NuGet 包)。
在 2022 年下半年,官方技術(shù)團(tuán)隊(duì)還計(jì)劃修改公共API,用自定義的 DevExpress.Drawing 對(duì)應(yīng)物替換 System.Drawing 對(duì)象,您將需要更新代碼來使用這些新的 API。
DevExpress Universal Subscription擁有.NET開發(fā)需要的所有平臺(tái)控件,包含600多個(gè)UI控件、報(bào)表平臺(tái)、DevExpress Dashboard eXpressApp 框架、適用于 Visual Studio的CodeRush等一系列輔助工具。
更多產(chǎn)品正版授權(quán)詳情及優(yōu)惠,歡迎咨詢
DevExpress技術(shù)交流群6:600715373 歡迎一起進(jìn)群討論
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:慧都網(wǎng)