Carga de fuentes Type-1 (PostScript) | .NET
Contents
[
Hide
Show
]Carga de fuentes Type‑1 con Aspose.Font para .NET
¿Por qué fuentes Type‑1?
- Fuentes Type‑1 (PostScript) – .pfb (binario) y .pfa (ASCII) – siguen utilizándose en muchos flujos de trabajo legados de publicación y CAD.
- Aspose.Font puede leer, analizar, renderizar y convertir estas fuentes sin dependencias externas, lo que lo hace ideal para el procesamiento del lado del servidor y la generación de documentos.
Qué necesitas
| Ítem | Versión mínima |
|---|---|
| .NET Framework | 4.6 (o .NET Core 2.x / .NET 5+) |
| Aspose.Font para .NET | 23.12 o posterior |
| Licencia | Un archivo .lic válido (opcional para la versión de prueba – de lo contrario, funciona una evaluación de 30 días). |
Añade el paquete NuGet a tu proyecto:
1dotnet add package Aspose.FontConceptos clave de la API
| Clase / Enum | Propósito |
|---|---|
FontDefinition | Describe qué tipo de fuente deseas abrir (FontType.Type1). |
FontFileDefinition | Describe dónde se encuentra la fuente – sistema de archivos (FileSystemStreamSource), memoria (ByteContentStreamSource) o cualquier fuente de flujo personalizada. |
FontType | Enum que indica a Aspose qué formato esperar (CFF, TTF, Type1, …). |
Aspose.Font.Font.Open(fd) | Método estático que lee la definición y devuelve una implementación de IFont (Type1Font). |
Type1Font | Clase concreta que expone glifos, métricas, codificación y capacidades de renderizado para fuentes Type‑1. |
Cargar una fuente Type‑1 desde disco
1using System;
2using System.IO;
3using Aspose.Font;
4using Aspose.Font.Sources;
5
6// Ruta al archivo .pfb o .pfa
7string fileName = @"C:\Fonts\courier.pfb"; // cambia a tu archivo
8
9// Asegúrate de que el archivo exista
10if (!File.Exists(fileName))
11 throw new FileNotFoundException($"Font file not found: {fileName}");
12
13// Construye un FontDefinition que indica a Aspose que estamos trabajando con una fuente Type‑1.
14FontDefinition fd = new FontDefinition(
15 FontType.Type1, // pista de formato
16 new FontFileDefinition(
17 "pfb", // pista de extensión (pfb o pfa)
18 new FileSystemStreamSource(fileName))); // lee directamente del sistema de archivos
19
20// Cárgala
21Type1Font font = Aspose.Font.Font.Open(fd) as Type1Font;
22
23// Verifica que la fuente se haya cargado realmente
24if (font == null)
25 throw new InvalidOperationException("Unable to load the Type‑1 font.");Cargar Type‑1 desde memoria
1byte[] fontBytes = File.ReadAllBytes(fileName);
2FontDefinition fd = new FontDefinition(
3 FontType.Type1,
4 new FontFileDefinition("pfb", new ByteContentStreamSource(fontBytes)));
5Type1Font font = Aspose.Font.Font.Open(fd) as Type1Font;Consejo: La cadena
"pfb"es solo una pista. Usa"pfa"para archivos Type‑1 codificados en ASCII.
Conclusión
- Aspose.Font facilita la carga y el trabajo con fuentes legadas Type‑1: define la fuente (
FileSystemStreamSource,ByteContentStreamSource, …), ábrela medianteAspose.Font.Font.Openy obtendrás instantáneamente acceso a métricas, tablas de codificación y potentes API de renderizado. - El mismo patrón se aplica a fuentes CFF y TrueType/OpenType—simplemente cambia
FontType.Type1al valor de enumeración correspondiente.