国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

解決Avalonia 11.X版本的中文字體問(wèn)題

這篇具有很好參考價(jià)值的文章主要介紹了解決Avalonia 11.X版本的中文字體問(wèn)題。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

網(wǎng)上搜索的方法使用接口“IFontManagerImpl”這個(gè)方法目前只能用于Avalonia 10.X版本,因?yàn)?1版本后官方把這個(gè)接口的成員都設(shè)置成了非plubic,所以之前的版本解決辦法用不上了,經(jīng)過(guò)搜索github的官方那邊的問(wèn)題集錦,要解決解決Avalonia 11.X版本的中文字體問(wèn)題有2個(gè)思路:

1.在程序里面嵌入TTF字體文件 2.把字體文件安裝到linux系統(tǒng),設(shè)置代碼使用

這里我成功了第一種方法,運(yùn)行環(huán)境:銀河麒麟v10+net6.0+Avalonia 11.0.2+微軟雅黑字體

?文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-635827.html

第一步,創(chuàng)建項(xiàng)目:net6.0+Avalonia 11.0.2,項(xiàng)目文件內(nèi)容如下所示:

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>WinExe</OutputType>
    <TargetFramework>net6.0</TargetFramework>
    <Nullable>enable</Nullable>
    <!--Avalonia doesen't support TrimMode=link currently,but we are working on that https://github.com/AvaloniaUI/Avalonia/issues/6892 -->
    <TrimMode>copyused</TrimMode>
    <BuiltInComInteropSupport>true</BuiltInComInteropSupport>
  </PropertyGroup>
  <ItemGroup>
    <None Remove=".gitignore" />
    <None Remove="Assets\Fonts\msyh.ttf" />
  </ItemGroup>
  <ItemGroup>
    <AvaloniaResource Include="Assets\Fonts\msyh.ttf" />
  </ItemGroup>  
  <ItemGroup>
    <PackageReference Include="Avalonia" Version="11.0.2" />
    <PackageReference Include="Avalonia.Desktop" Version="11.0.2" />
      <PackageReference Include="Avalonia.Themes.Fluent" Version="11.0.2" />
      <PackageReference Include="Avalonia.Themes.Simple" Version="11.0.2" />
      <PackageReference Include="Avalonia.Markup.Xaml.Loader" Version="11.0.2" />
      <PackageReference Include="Avalonia.ReactiveUI" Version="11.0.2" />
    <!--Condition below is needed to remove Avalonia.Diagnostics package from build output in Release configuration.-->
    <PackageReference Condition="'$(Configuration)' == 'Debug'" Include="Avalonia.Diagnostics" Version="11.0.2" />
  </ItemGroup>
</Project>

第二步,在網(wǎng)上去搜索下載你所需的中文字體,我這用的微軟雅黑字體,放入項(xiàng)目,然后設(shè)置為AvaloniaResource,可以參加第一步項(xiàng)目文件內(nèi)容。

第三步,在App.axaml文件添加字體資源使用,直接用選擇器選擇窗體,就行了,參考如下代碼:

<Application xmlns="https://github.com/avaloniaui"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             x:Class="Avalonia11Test.App">
    <Application.Styles>
        <!--<FluentTheme />-->
        <SimpleTheme />
        <Style Selector="Window">
            <Setter Property="FontFamily" Value="../Assets/Fonts/msyh.ttf#Microsoft YaHei"/>
        </Style>
    </Application.Styles>
</Application>

第三步,在主窗體隨便整點(diǎn)中文的顯示就行了,我這整點(diǎn)文本顯示,參考如下代碼:

<Window xmlns="https://github.com/avaloniaui"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
        x:Class="Avalonia11Test.MainWindow"
        Title="Avalonia11Test">
    <StackPanel>
        <CheckBox Name="cbtn" Content="Welcome to 阿威羅尼亞!" FontSize="20" />
        <Button  Click="Open" Content="打開(kāi)" Width="100" Height="25"/>
        <StackPanel>
            <TextBlock Text="你好" FontWeight="Regular" FontSize="15"/>
            <TextBlock Text="你好" FontWeight="Bold"  FontSize="25"/>
            <TextBlock Text="你好" FontWeight="UltraBold"  FontSize="35"/>
        </StackPanel>
    </StackPanel>
</Window>

?

第四步,發(fā)布!我懶,我沒(méi)在linux安裝net sdk,所以我在這直接就選擇文件夾發(fā)布,參數(shù)設(shè)置為獨(dú)立框架+獨(dú)立文件。

第五步,把文件復(fù)制到linux系統(tǒng),根據(jù)官方的說(shuō)法中文字體是來(lái)源于skia底層,所以u(píng)no也會(huì)出現(xiàn),需要設(shè)置一下系統(tǒng)LC_CTYPE的變量,所以安裝官方的指示,創(chuàng)建一個(gè)sh腳本,內(nèi)容參考如下:

#!
export LC_CTYPE=en_US.UTF-8 && ./Avalonia11Test

最后,就把sh腳本使用sudo chmod提升一下權(quán)限,執(zhí)行./你的sh 大功告成!

這是沒(méi)有使用該方法直接執(zhí)行的效果圖:

解決Avalonia 11.X版本的中文字體問(wèn)題

?

這是使用了該方法的運(yùn)行圖:

解決Avalonia 11.X版本的中文字體問(wèn)題

解決Avalonia 11.X版本的中文字體問(wèn)題

?

在國(guó)產(chǎn)系統(tǒng)上做開(kāi)發(fā),在當(dāng)前QT大行其道的情況下,一個(gè)來(lái)自搞了很多年NET程序員的倔強(qiáng),特別是JG行業(yè)

?

到了這里,關(guān)于解決Avalonia 11.X版本的中文字體問(wèn)題的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Mac系統(tǒng)下matplotlib中SimHei中文字體缺失報(bào)錯(cuò)的解決辦法

    Mac系統(tǒng)下matplotlib中SimHei中文字體缺失報(bào)錯(cuò)的解決辦法

    使用matplotlib畫(huà)圖時(shí),因?yàn)槿鄙僮煮w,、圖像上label上的中文顯示時(shí)空白小方塊。因?yàn)閙atplotlib默認(rèn)沒(méi)有中文。 Step 1. 在終端進(jìn)入python3環(huán)境,查看matplotlib字體路徑: 找到自己的matplotlib字體文件路徑: /Users/zhangzhang/miniforge3/envs/py38_pytorch/lib/python3.8/site-packages/matplotlib/mpl-data/ fon

    2023年04月13日
    瀏覽(100)
  • Qt5項(xiàng)目拆解第一集解決:中文亂碼| 全局字體|注冊(cè)表|QSS/CSS

    Qt5項(xiàng)目拆解第一集解決:中文亂碼| 全局字體|注冊(cè)表|QSS/CSS

    # 一、亂碼解決代碼片段 QTextCodec是Qt中用于處理文本編碼和字符集轉(zhuǎn)換的類(lèi)。它提供了一系列靜態(tài)函數(shù)來(lái)實(shí)現(xiàn)不同編碼的文本轉(zhuǎn)換,包括編碼轉(zhuǎn)換、字符集檢測(cè)和轉(zhuǎn)換、以及數(shù)據(jù)流中的文本編碼處理。QTextCodec類(lèi)使得Qt可以在不同的編碼和字符集之間進(jìn)行無(wú)縫轉(zhuǎn)換,從而方便地

    2024年01月21日
    瀏覽(28)
  • Rocky(Centos)安裝中文字體(防止中文亂碼)

    Rocky(Centos)安裝中文字體(防止中文亂碼)

    運(yùn)行下列命令 若出現(xiàn),下面截圖,則需要安裝字體管理軟件? 安裝字體庫(kù),運(yùn)行: 當(dāng)看到下圖的提示信息時(shí)說(shuō)明已安裝成功: 1)windows系統(tǒng)中就可以找到,打開(kāi)c盤(pán)下的Windows/Fonts目錄: 如上圖,我們只需要將我們需要的字體拷貝出來(lái)并上傳至linux服務(wù)器即可(例如:宋體和黑

    2024年02月09日
    瀏覽(91)
  • unity添加中文字體

    unity添加中文字體

    1.隨便打開(kāi)一個(gè)unity工程 2.將字體文件拖至project目錄下 3.點(diǎn)擊Window-TextMeshPro-Font Asset Creator 4.將中文文件(*.txt)拖至Project路徑下 5.修改設(shè)置如下 6.點(diǎn)擊Generate Font Atlas開(kāi)始生成

    2024年03月22日
    瀏覽(100)
  • CentOS中安裝中文字體

    在CentOS上安裝宋體字體的過(guò)程可能因?yàn)椴煌姹径兴町?。以下是一種常見(jiàn)的安裝宋體字體的方法: 1.下載SimSun.ttf 宋體字體文件并把對(duì)應(yīng)字體的的ttf文件拷到/usr/share/fonts/的目錄下如: ????/usr/share/fonts/chinese/SimSun.ttf 2.安裝宋體字體: cd /usr/share/fonts/chinese/? ? ?//進(jìn)入字

    2024年02月07日
    瀏覽(95)
  • Unity TextMeshPro使用中文字體

    Unity TextMeshPro使用中文字體

    ??TextMeshPro是Unity新一代字體,是 Unity 的最終文本解決方案。它是 Unity UI Text 和舊版 Text Mesh 的完美替代方案。功能強(qiáng)大、易于使用、性能高效。目前TextMeshPro對(duì)中文的支持也還可以,不過(guò)默認(rèn)不能用,需要自己成生成。 ?? 本文就介紹TextMeshPro中文字體文件的生成方法,并

    2024年02月08日
    瀏覽(96)
  • Ubuntu下讓matplotlib顯示中文字體

    Ubuntu下讓matplotlib顯示中文字體

    參考文章: https://zodiac911.github.io/blog/matplotlib-chinese.html Ubuntu下python的matplotlib庫(kù)顯示中文字體很不方便,本文快速解決這個(gè)問(wèn)題。 Ubuntu的字體目錄在 /usr/share/fonts 下,自帶的中文字體很爛,先安裝一下中文字體庫(kù)。 終端輸入: 你會(huì)發(fā)現(xiàn)在 /usr/share/fonts/MyFonts 下添加了很多新字

    2024年02月07日
    瀏覽(101)
  • docker Dockerfile增加中文字體支持

    很多時(shí)候在部署應(yīng)用時(shí)候,因docker沒(méi)有中文字體支持,導(dǎo)致中文亂碼問(wèn)題,需要在構(gòu)建Docker鏡像時(shí)候增加中文字體支持 1、下載中文字體ttl文件點(diǎn)擊下載 2、將中文字體文件上傳到同需要構(gòu)建的文件放在同一目錄 3、編寫(xiě)Dockerfie配置安裝中文字體

    2024年02月04日
    瀏覽(97)
  • 樹(shù)莓派系統(tǒng)漢化教程(漢語(yǔ)+中文字體庫(kù)+中文輸入法pinyin(拼音))

    樹(shù)莓派系統(tǒng)漢化教程(漢語(yǔ)+中文字體庫(kù)+中文輸入法pinyin(拼音))

    1.在putty登錄樹(shù)莓派,在命令行輸入sudo nano raspi-config,然后回車(chē)如下圖: 2.選擇 5 Localisation Options Configure language and regional settings,并回車(chē) 結(jié)果如下圖: 因?yàn)門(mén)imezone(時(shí)區(qū))/keyboard(鍵盤(pán))/WLAN country (wifi國(guó)家),用官方的燒錄器燒錄時(shí)已經(jīng)設(shè)置好了,不會(huì)設(shè)置的可以參考上一

    2024年02月07日
    瀏覽(131)
  • Python的Matplotlib 設(shè)置中文字體,字號(hào)

    ? 生成需要繪圖的數(shù)據(jù): ?設(shè)定曲線的標(biāo)簽、橫縱坐標(biāo)、橫縱軸名稱、圖例。 其中的“size = 12”、“fontsize=12”是指12像素,在mpl中,默認(rèn)單位是像素,而word中的字號(hào)單位是磅。1磅=4/3像素,所以size=12對(duì)應(yīng)的是小五號(hào)字(9磅)。 ? ?

    2024年02月02日
    瀏覽(158)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包