mirror of
https://github.com/space-wizards/RobustToolbox.git
synced 2026-02-15 11:40:52 +01:00
* System font API This is a new API that allows operating system fonts to be loaded by the engine and used by content. Fonts are provided in a flat list exposing all the relevant metadata. They are loaded from disk with a Load call. Initial implementation is only for Windows DirectWrite. * Load system fonts as memory mapped files if possible. This allows sharing the font file memory with other processes which is always good. * Use ArrayPool to reduce char array allocations * Disable verbose logging * Implement system font support on Linux via Fontconfig * Implement macOS support * Add "FREEDESKTOP" define constant This is basically LINUX || FREEBSD. Though FreeBSD currently gets detected as LINUX too. Oh well. * Compile out Fontconfig and CoreText system font backends when not on those platforms * Don't add Fontconfig package dep on Mac/Windows * Allow disabling system font support via CVar Cuz why not.
23 lines
472 B
C#
23 lines
472 B
C#
using System.Collections.Generic;
|
|
|
|
namespace Robust.Client.Graphics.FontManagement;
|
|
|
|
/// <summary>
|
|
/// A fallback implementation of <see cref="ISystemFontManager"/> that just loads no fonts.
|
|
/// </summary>
|
|
internal sealed class SystemFontManagerFallback : ISystemFontManagerInternal
|
|
{
|
|
public void Initialize()
|
|
{
|
|
|
|
}
|
|
|
|
public void Shutdown()
|
|
{
|
|
|
|
}
|
|
|
|
public bool IsSupported => false;
|
|
public IEnumerable<ISystemFontFace> SystemFontFaces => [];
|
|
}
|