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ífico (como regular, negrita, cursiva, etc.) del 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 la biblioteca IronPDF C#
- Utilice el método
Add
para agregar una fuente a la colección de fuentes - Utilice el método
Embed
para incrustar una fuente y asegurar visuales persistentes - Desincrustar fuentes para reducir el tamaño utilizando el método
Unembed
- Reemplaza fácilmente las fuentes con el método
Replace
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. La propiedad Fonts se puede acceder directamente 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 agregar tanto la fuente estándar como el archivo de fuente como datos en bytes. El método Add
que acepta solo el nombre de la fuente solo acepta una de las 14 fuentes estándar. Si se añade una fuente estándar, no se incrustará, porque ya se garantiza que la fuente estándar está 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 System.Linq;
// Import PDF
PdfDocument pdf = PdfDocument.FromFile("sample.pdf");
// 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 System.Linq
' Import PDF
Private pdf As PdfDocument = PdfDocument.FromFile("sample.pdf")
' 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 archivo del documento PDF. Utilice el método Unembed
para lograr esto.
: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.
[{w:(En algunos casos raros, el resultado visual puede no ser una implementación perfecta. Esta es una limitación actual del método de reemplazo de fuente.
: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 que están garantizadas (según el estándar del documento PDF) para estar disponibles al trabajar con un documento PDF.
- Correo
- Courier-Bold
- Courier-Oblique
- 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 a Courier
-
StandardFont.Courier
-
Correo
-
CorreoNuevo
-
CorreoNuevoPSMT
- CourierStd
Mapa a Courier-Bold
-
-
StandardFont.CourierBold
-
Courier,Negrita
-
Courier-Bold
-
CourierBold
-
CourierNew,Negrita
-
CourierNew-Bold
-
CourierNewBold
-
CourierNewPS-BoldMT
- CourierStd-Bold
Mapear a Courier-Oblique
-
-
StandardFont.CourierOblique
-
Courier, cursiva
-
Courier-Oblique
-
CourierItalic
-
CourierNew,Italic
-
CourierNew-Italic
-
CourierNewItalic
-
CourierNewPS-ItalicMT
- CourierStd-Oblique
Mapa a Courier-BoldOblique
-
-
StandardFont.CourierBoldOblique
-
Courier,NegritaItalica
-
Courier-BoldOblique
-
CourierBoldItalic
-
CourierNew,BoldItalic
-
CourierNew-BoldItalic
-
CourierNewBoldItalic
-
CourierNewPS-BoldItalicMT
- CourierStd-BoldOblique
Mapear a Helvetica
-
-
StandardFont.Helvetica
-
Arial
-
ArialMT
- Helvética
Mapa a Helvetica-Bold
-
-
StandardFont.HelveticaBold
-
Arial,Negrita
-
Arial-Bold
-
Arial-BoldMT
-
ArialBold
-
ArialMT,Negrita
-
ArialRoundedMTBold
-
Helvetica,Negrita
-
Helvetica-Bold
- HelveticaBold
Mapear a Helvetica-Oblique
-
-
StandardFont.HelveticaOblique
-
Arial, cursiva
-
Arial-Italic
-
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
Mapear 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
Mapear a Times-Italic
-
-
StandardFont.TimesOblique
-
Times-Italic
-
TimesItalic
-
TimesNewRoman,Cursiva
-
TimesNewRoman-Italic
-
TimesNewRomanItalic
-
TimesNewRomanPS-Italic
-
TimesNewRomanPS-ItalicMT
- TimesNewRomanPSMT,Cursiva
Mapear a Times-BoldItalic
-
-
StandardFont.TimesBoldOblique
-
Times-BoldItalic
-
TimesBoldItalic
-
TimesNewRoman,NegritaItalica
-
TimesNewRoman-BoldItalic
-
TimesNewRomanBoldItalic
-
TimesNewRomanPS-BoldItalic
-
TimesNewRomanPS-BoldItalicMT
- TimesNewRomanPSMT,BoldItalic
Mapa a Símbolo
-
-
StandardFont.Symbol
-
Símbolo
- SímboloMT
Mapear a ZapfDingbats
-
-
StandardFont.Dingbats
- ZapfDingbats