Biblioteca C# .NET gratuita para cargar, leer y dibujar fuentes
Biblioteca de Código Abierto C# .NET para cargar, leer y dibujar varios tipos de fuentes como TrueType, CFF, Woff, Woff2 y muchas más.
Cuando se trata de trabajar con fuentes de forma programática, los desarrolladores de software a menudo necesitan herramientas y bibliotecas robustas para manejar diversas operaciones relacionadas con fuentes. Una biblioteca de código abierto tan poderosa que ha ganado popularidad entre los desarrolladores es la biblioteca SixLabors Fonts. Fonts es una biblioteca de código abierto muy útil para C# .NET que proporciona un conjunto completo de funcionalidades para trabajar con varios tipos de fuentes dentro de aplicaciones C#. Desarrollada por el equipo de Six Labors, la biblioteca Fonts tiene como objetivo simplificar las tareas de manejo de fuentes y facilitar a los desarrolladores el trabajo con tipografías de forma programática. Ya sea que los usuarios necesiten cargar, renderizar, medir o manipular fuentes, la biblioteca Fonts ofrece una API limpia e intuitiva para todas estas operaciones.
La biblioteca de fuentes de código abierto ofrece varias funciones para la manipulación y personalización de fuentes, lo que permite a los desarrolladores de software crear elementos de texto únicos y visualmente atractivos dentro de sus aplicaciones. Hay varias características importantes de la biblioteca, como cargar fuentes desde diversas fuentes (rutas, flujos o recursos incrustados), capacidades de renderizado de glifos de alta calidad, realizar una disposición y alineación precisas del texto, manejo de texto Unicode, organizar fuentes en colecciones y mucho más.
La biblioteca Fonts está construida sobre .NET Standard, lo que la hace compatible con múltiples plataformas y frameworks, incluidos .NET Core, .NET Framework, Xamarin y Mono. La biblioteca ofrece una API simple e intuitiva, lo que la hace accesible para desarrolladores de todos los niveles de habilidad. Ya sea que estés construyendo una aplicación de escritorio, un servicio web o una aplicación móvil, la biblioteca Fonts proporciona una base sólida para todas tus necesidades de gestión de fuentes. Así que pruébala y desbloquea el mundo de fuentes creativas en tus aplicaciones con la biblioteca de fuentes de código abierto.
Comenzando con fuentes
La forma recomendada de instalar Fonts es usando NuGet. Por favor, use el siguiente comando para una instalación fluida.
Instalar fuentes mediante NuGet
PM > Install-Package SixLabors.Fonts –PreRelease
También puede instalarlo manualmente; descargue los archivos de la última versión directamente del repositorio GitHub.
Cargar y leer detalles de fuentes dentro de aplicaciones C#
La biblioteca de código abierto Fonts permite a los desarrolladores de software cargar varios tipos de fuentes y mostrar sus detalles completos dentro de aplicaciones C#. La biblioteca admite la carga de fuentes desde diversas fuentes, incluidos rutas de archivo, flujos, recursos incrustados y más. Esta flexibilidad permite a los desarrolladores integrar sin problemas la carga de fuentes en sus aplicaciones. La biblioteca es compatible con fuentes TrueType, fuentes OpenType con contornos CFF1, Woff, Woff2, etc. El siguiente ejemplo muestra cómo leer la descripción de una fuente TTF usando comandos C#.
¿Cómo leer la descripción de una fuente usando la API de C#?
FontDescription description = null;
using(var fs = File.OpenRead("Font.ttf")){
description = FontDescription.Load(fs); // once it has loaded the data the stream is no longer required and can be disposed of
}
string name = description.FontName(CultureInfo.InvariantCulture);
Compatibilidad con colecciones de fuentes mediante C#
La biblioteca de código abierto Fonts permite a los desarrolladores de software organizar fuentes en colecciones, facilitando la gestión y el cambio entre diferentes familias y estilos de fuentes. Con solo un par de líneas de código, los desarrolladores pueden crear colecciones de fuentes personalizadas. La biblioteca también ha proporcionado soporte para funciones avanzadas de OpenType, sustitución de glifos (GSUB) y posicionamiento de glifos (GPOS). El siguiente ejemplo muestra cómo los desarrolladores pueden trabajar con colecciones de fuentes dentro de aplicaciones C#.
¿Cómo trabajar con la colección sFont mediante código C#?
using SixLabors.Fonts;
FontCollection collection = new();
collection.Add("path/to/font.ttf");
collection.Add("path/to/font2.ttf");
collection.Add("path/to/emojiFont.ttf");
collection.AddCollection("path/to/font.ttc");
if(collection.TryFind("Font Name", out FontFamily family))
if(collection.TryFind("Emoji Font Name", out FontFamily emojiFamily))
{
// family will not be null here
Font font = family.CreateFont(12, FontStyle.Italic);
// TextOptions provides comprehensive customization options support
TextOptions options = new(font)
{
// Will be used if a particular code point doesn't exist in the font passed into the constructor. (e.g. emoji)
FallbackFontFamilies = new [] { emojiFamily }
};
FontRectangle rect = TextMeasurer.Measure("Text to measure", options);
}