Cómo gestionar las fuentes en PDF
Una fuente es un conjunto de caracteres, símbolos y glifos con un estilo y diseño coherentes. Representa un tipo de letra, tamaño, peso y estilo específicos. (como normal, negrita, cursiva, etc.) de texto. Las fuentes se utilizan en tipografía para mostrar el texto de forma visualmente atractiva y coherente.
IronPDF proporciona una forma cómoda de gestionar las fuentes, ofreciendo funcionalidades como encontrar fuentes, obtener fuentes, incrustar fuentes, desincrustar fuentes y sustituir fuentes.
Cómo gestionar las fuentes en PDF
- Descargar una biblioteca C# para gestionar fuentes
- Utilice el
Añadir
para añadir una fuente a la colección de fuentes - Utilice el
Insertar
para incrustar una fuente que garantice la persistencia de los elementos visuales - Desincrustar fuentes para reducir el tamaño mediante la función
Desincrustar
método - Sustituya fácilmente los tipos de letra con
Sustituir
método
Instalar con NuGet
Install-Package IronPdf
Buscar y recuperar fuentes
Recuperar fuente
Al acceder a la propiedad Fonts se devolverá el objeto PdfFontCollection, que contiene la lista de todas las fuentes del documento. Se puede acceder directamente a la propiedad Fonts iterando sobre el objeto PdfFontCollection.
:path=/static-assets/pdf/content-code-examples/how-to/manage-font-retrieve-font.cs
using IronPdf;
using IronPdf.Fonts;
using System.Collections.Generic;
// Import PDF
PdfDocument pdf = PdfDocument.FromFile("sample.pdf");
// Retreive font
PdfFontCollection fonts = pdf.Fonts;
Imports IronPdf
Imports IronPdf.Fonts
Imports System.Collections.Generic
' Import PDF
Private pdf As PdfDocument = PdfDocument.FromFile("sample.pdf")
' Retreive font
Private fonts As PdfFontCollection = pdf.Fonts
Buscar fuente
Encontrar una fuente específica es sencillo con IronPdf. Utilizando el objeto PdfFontCollection, podemos especificar el nombre de la fuente como una cadena encerrada entre corchetes. Por ejemplo Fuentes ["SpecialFontName"]. Esto devolverá un objeto PdfFont que podemos utilizar para inspeccionar propiedades y realizar métodos adicionales.
:path=/static-assets/pdf/content-code-examples/how-to/manage-font-find-font.cs
using IronPdf;
using IronPdf.Fonts;
using System.Collections.Generic;
using System.Linq;
// Import PDF
PdfDocument pdf = PdfDocument.FromFile("sample.pdf");
// Find font
PdfFont font = pdf.Fonts["SpecialFontName"];
Imports IronPdf
Imports IronPdf.Fonts
Imports System.Collections.Generic
Imports System.Linq
' Import PDF
Private pdf As PdfDocument = PdfDocument.FromFile("sample.pdf")
' Find font
Private font As PdfFont = pdf.Fonts("SpecialFontName")
Añadir fuente
Utilice el método Add
para añadir tanto la fuente stardand como el archivo de fuentes como datos de bytes. El método Add
que acepta el nombre de la fuente sólo acepta uno de los métodos 14 fuentes estándar. Añadir una fuente estándar no la incrustará, porque la fuente estándar ya garantiza estar disponible en el sistema operativo.
:path=/static-assets/pdf/content-code-examples/how-to/manage-font-add-font.cs
using IronPdf;
using IronPdf.Fonts;
// Import PDF
PdfDocument pdf = PdfDocument.FromFile("sample.pdf");
// Add font
pdf.Fonts.Add("Helvetica");
Imports IronPdf
Imports IronPdf.Fonts
' Import PDF
Private pdf As PdfDocument = PdfDocument.FromFile("sample.pdf")
' Add font
pdf.Fonts.Add("Helvetica")
Incrustar fuente
Incrustar una fuente significa incluir los datos del flujo de bytes de una fuente en el propio documento PDF. De este modo, no es necesario que la fuente esté instalada en el sistema para ver correctamente el documento PDF. Aunque esto suele aumentar el tamaño del archivo del documento PDF, es beneficioso para la coherencia visual sin el requisito adicional de instalar la fuente.
:path=/static-assets/pdf/content-code-examples/how-to/manage-font-embed-font.cs
using IronPdf;
using IronPdf.Fonts;
using System.Linq;
// Import PDF
PdfDocument pdf = PdfDocument.FromFile("sample.pdf");
// Select which font to embed
PdfFont targetFont = pdf.Fonts["MyCustomFont"];
// Add the font
byte[] fontData = System.IO.File.ReadAllBytes("dir/to/font.ttf");
pdf.Fonts.Add(fontData);
// Embed the font
pdf.Fonts.Last().Embed(fontData);
Imports IronPdf
Imports IronPdf.Fonts
Imports System.Linq
' Import PDF
Private pdf As PdfDocument = PdfDocument.FromFile("sample.pdf")
' Select which font to embed
Private targetFont As PdfFont = pdf.Fonts("MyCustomFont")
' Add the font
Private fontData() As Byte = System.IO.File.ReadAllBytes("dir/to/font.ttf")
pdf.Fonts.Add(fontData)
' Embed the font
pdf.Fonts.Last().Embed(fontData)
Fuente Unembed
Desincrustar una fuente significa eliminar los datos de flujo de bytes incrustados de la fuente incluida en un documento PDF. El objetivo es reducir el tamaño del documento PDF. Utilice el método Unembed
para conseguirlo.
:path=/static-assets/pdf/content-code-examples/how-to/manage-font-unembed-font.cs
using IronPdf;
using IronPdf.Fonts;
// Import PDF
PdfDocument pdf = PdfDocument.FromFile("sample.pdf");
// Get fonts
PdfFontCollection fonts = pdf.Fonts;
// Unembed a font
pdf.Fonts[0].Unembed();
Imports IronPdf
Imports IronPdf.Fonts
' Import PDF
Private pdf As PdfDocument = PdfDocument.FromFile("sample.pdf")
' Get fonts
Private fonts As PdfFontCollection = pdf.Fonts
' Unembed a font
pdf.Fonts(0).Unembed()
Sustituir fuente
La operación de sustitución de fuentes conservará la estructura de datos de la fuente original, como el estilo y la codificación de caracteres, dentro de un documento PDF, pero la sustituirá por una nueva fuente especificada. Los usuarios tienen que asegurarse de que la nueva fuente se alinea bien con la fuente original.
Antes de proceder
:path=/static-assets/pdf/content-code-examples/how-to/manage-font-replace-font.cs
using IronPdf;
using IronPdf.Fonts;
using System.Linq;
// Import PDF
PdfDocument pdf = PdfDocument.FromFile("sample.pdf");
byte[] fontData = System.IO.File.ReadAllBytes("dir/to/font.ttf");
// Get and replace Font
pdf.Fonts["Courier"].ReplaceWith(fontData);
Imports IronPdf
Imports IronPdf.Fonts
Imports System.Linq
' Import PDF
Private pdf As PdfDocument = PdfDocument.FromFile("sample.pdf")
Private fontData() As Byte = System.IO.File.ReadAllBytes("dir/to/font.ttf")
' Get and replace Font
pdf.Fonts("Courier").ReplaceWith(fontData)
Fuentes estándar
Las 14 fuentes estándar de PDF, también conocidas como "fuentes base 14" o "fuentes estándar de tipo 1", forman un conjunto de fuentes que son ampliamente compatibles con los visores de PDF y no necesitan estar incrustadas en el documento. Las fuentes estándar definen 14 fuentes garantizadas (según el estándar de documentos PDF) al trabajar con un documento PDF.
- Correo
- Courier-Negrita
- Correo oblicuo
- Courier-BoldOblique
- Helvética
- Helvetica-Bold
- Helvética-Oblique
- Helvetica-BoldOblique
- Times-Roman
- Times-Bold
- Times-Italic
- Times-BoldItalic
- Símbolo
- ZapfDingbats
Asignación de fuentes estándar
Para mayor comodidad a la hora de referirse a las fuentes estándar, varios nombres de cadena apuntan a la misma fuente.
Mapa al Correo
StandardFont.Courier
- Correo
- CorreoNuevo
- CorreoNuevoPSMT
- CourierStd
Mapa a Courier-Bold
StandardFont.CourierBold
- Courier,Negrita
- Courier-Negrita
- CourierBold
- CourierNew,Negrita
- CourierNuevo-Negrita
- CourierNuevaNegrita
- CourierNewPS-BoldMT
- CourierNegrita
Mapa a Courier-Oblique
StandardFont.CourierOblique
- Courier, cursiva
- Correo oblicuo
- CourierItalic
- CourierNew,Italic
- CourierNuevo-Itálico
- CourierNuevoItalico
- CourierNewPS-ItalicMT
- CourierStd-Oblique
Mapa a Courier-BoldOblique
StandardFont.CourierBoldOblique
- Courier,NegritaItalica
- Courier-BoldOblique
- CourierBoldItalic
- CourierNew,BoldItalic
- CourierNew-BoldItalic
- CourierNewBoldItalic
- CourierNewPS-BoldItalicMT
- CourierStd-BoldOblique
Mapa a Helvetica
StandardFont.Helvetica
- Arial
- ArialMT
- Helvética
Mapa a Helvetica-Bold
StandardFont.HelveticaBold
- Arial,Negrita
- Arial-Negrita
- Arial-BoldMT
- ArialNegrita
- ArialMT,Negrita
- ArialRoundedMTBold
- Helvetica,Negrita
- Helvetica-Bold
- HelveticaBold
Mapa a Helvetica-Oblique
StandardFont.HelveticaOblique
- Arial, cursiva
- Arial-Itálico
- Arial-ItalicMT
- ArialItalic
- ArialMT,Cursiva
- Helvetica,Italic
- Helvética-Itálica
- Helvética-Oblique
- HelveticaItalic
Mapa a Helvetica-BoldOblique
StandardFont.HelveticaBoldOblique
- Arial,BoldItalic
- Arial-BoldItalic
- Arial-BoldItalicMT
- ArialBoldItalic
- ArialMT,BoldItalic
- Helvetica,BoldItalic
- Helvetica-BoldItalic
- Helvetica-BoldOblique
- HelveticaBoldItalic
Mapa a Times-Roman
StandardFont.Times
- Times-Roman
- TimesNewRoman
- TimesNewRomanPS
- TimesNewRomanPSMT
Mapa a Times-Bold
StandardFont.TimesBold
- Times-Bold
- TimesBold
- TimesNewRoman,Negrita
- TimesNewRoman-Bold
- TimesNewRomanBold
- TimesNewRomanPS-Bold
- TimesNewRomanPS-BoldMT
- TimesNewRomanPSMT,Negrita
Mapa de Times-Italic
StandardFont.TimesOblique
- Times-Italic
- TimesItalic
- TimesNewRoman,Cursiva
- TimesNewRoman-Italic
- TimesNewRomanItalic
- TimesNewRomanPS-Italic
- TimesNewRomanPS-ItalicMT
- TimesNewRomanPSMT,Cursiva
Mapa a Times-BoldItalic
StandardFont.TimesBoldOblique
- Times-BoldItalic
- TimesBoldItalic
- TimesNewRoman,NegritaItalica
- TimesNewRoman-BoldItalic
- TimesNewRomanBoldItalic
- TimesNewRomanPS-BoldItalic
- TimesNewRomanPS-BoldItalicMT
- TimesNewRomanPSMT,BoldItalic
**Mapa del símbolo
StandardFont.Symbol
- Símbolo
- SímboloMT
Mapa a ZapfDingbats
- StandardFont.Dingbats
- ZapfDingbats