Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ubuntuでの実行時にフォント関連の例外が発生する #20

Open
rioil opened this issue Mar 29, 2023 · 1 comment
Open

Ubuntuでの実行時にフォント関連の例外が発生する #20

rioil opened this issue Mar 29, 2023 · 1 comment
Labels
bug Something isn't working has workaround A fix is ​​required as it is addressed by a workaround pending

Comments

@rioil
Copy link
Collaborator

rioil commented Mar 29, 2023

Ubuntuでの実行時にフォント関連の例外が発生して,起動に失敗します.

環境

  • Ubuntu 22.04

実行時のログ

Unhandled exception. System.InvalidOperationException: Default font family name can't be null or empty.
   at Avalonia.Media.FontManager..ctor(IFontManagerImpl platformImpl) in /_/src/Avalonia.Base/Media/FontManager.cs:line 33
   at Avalonia.Media.FontManager.get_Current() in /_/src/Avalonia.Base/Media/FontManager.cs:line 50
   at Avalonia.Rendering.Composition.Compositor.get_DiagnosticTextRenderer() in /_/src/Avalonia.Base/Rendering/Composition/Compositor.cs:line 43
   at Avalonia.Rendering.Composition.Compositor.CreateCompositionTarget(Func`1 surfaces) in /_/src/Avalonia.Base/Rendering/Composition/Compositor.Factories.cs:line 17
   at Avalonia.Rendering.Composition.CompositingRenderer..ctor(IRenderRoot root, Compositor compositor, Func`1 surfaces) in /_/src/Avalonia.Base/Rendering/Composition/CompositingRenderer.cs:line 45
   at Avalonia.X11.X11Window.CreateRenderer(IRenderRoot root) in /_/src/Avalonia.X11/X11Window.cs:line 387
   at Avalonia.Controls.TopLevel..ctor(ITopLevelImpl impl, IAvaloniaDependencyResolver dependencyResolver) in /_/src/Avalonia.Controls/TopLevel.cs:line 158
   at Avalonia.Controls.WindowBase..ctor(IWindowBaseImpl impl, IAvaloniaDependencyResolver dependencyResolver) in /_/src/Avalonia.Controls/WindowBase.cs:line 58
   at Avalonia.Controls.Window..ctor(IWindowImpl impl) in /_/src/Avalonia.Controls/Window.cs:line 228
   at Avalonia.Controls.Window..ctor() in /_/src/Avalonia.Controls/Window.cs:line 219
   at Osmy.Gui.App.OnFrameworkInitializationCompleted() in /mnt/d/rio/dev/CSharp/Osmy/Osmy.Gui/App.axaml.cs:line 23
   at Avalonia.AppBuilder.Setup() in /_/src/Avalonia.Controls/AppBuilder.cs:line 246
   at Avalonia.ClassicDesktopStyleApplicationLifetimeExtensions.StartWithClassicDesktopLifetime(AppBuilder builder, String[] args, ShutdownMode shutdownMode) in /_/src/Avalonia.Controls/ApplicationLifetimes/ClassicDesktopStyleApplicationLifetime.cs:line 211
   at Osmy.Gui.Program.Main(String[] args) in /mnt/d/rio/dev/CSharp/Osmy/Osmy.Gui/Program.cs:line 14

解決方法

AvaloniaUI/Avalonia#4427
mono/SkiaSharp#1181

  • ラテン文字ロケールで起動する LC_ALL=C ./Osmy.Gui
  • リソースとして埋め込んだフォントを使用する
    // Prpgram.csのAppBuilder作成処理
    .With(new FontManagerOptions
    {
        DefaultFamilyName = "avares://MyAssembly/MyAssets#MyCustomFont"
    }
@rioil rioil added the bug Something isn't working label Mar 29, 2023
@rioil rioil added the has workaround A fix is ​​required as it is addressed by a workaround label May 11, 2023
@rioil
Copy link
Collaborator Author

rioil commented May 11, 2023

ラテン文字ロケールで起動することを暫定の回避策とします.

@rioil rioil added the pending label Feb 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working has workaround A fix is ​​required as it is addressed by a workaround pending
Projects
None yet
Development

No branches or pull requests

1 participant