Comment gérer les polices de caractères dans les PDF
Une police de caractères est un ensemble de caractères, de symboles et de glyphes dont le style et la conception sont cohérents. Il représente un type de police, une taille, un poids et un style spécifiques (comme régulier, gras, italique, etc.) de texte. Les polices de caractères sont utilisées en typographie pour présenter le texte d'une manière visuellement attrayante et cohérente.
IronPDF offre un moyen pratique de gérer les polices, en proposant des fonctionnalités telles que la recherche de polices, l'obtention de polices, l'intégration de polices, la désintégration de polices et le remplacement de polices.
Comment gérer les polices de caractères dans les PDF
- Télécharger la bibliothèque IronPDF C#
- Utilisez la méthode
Add
pour ajouter une police à la collection de polices - Utilisez la méthode
Embed
pour intégrer une police et garantir des visuels persistants - Désintégrer les polices pour réduire la taille en utilisant la méthode
Unembed
- Remplacez facilement les polices avec la méthode
Replace
Recherche et récupération de polices
Récupérer une police
L'accès à la propriété Fonts renvoie l'objet PdfFontCollection, qui contient la liste de toutes les polices du document. La propriété Fonts peut être accédée directement en itérant sur l'objet 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
Trouver une police
Avec IronPDF, il est facile de trouver une police de caractères spécifique. En utilisant l'objet PdfFontCollection, nous pouvons spécifier le nom de la police sous la forme d'une chaîne de caractères entre crochets. Par exemple : Polices ["SpecialFontName"]. Cela renvoie un objet PdfFont que nous pouvons utiliser pour inspecter les propriétés et exécuter des méthodes supplémentaires.
: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")
Ajouter une police
Utilisez la méthode Add
pour ajouter à la fois une police standard et un fichier de police sous forme de données octet. La méthode Add
qui accepte uniquement le nom de la police n'accepte que l'une des 14 polices standard. L'ajout d'une police standard ne l'intégrera pas, car la police standard est déjà garantie comme étant disponible sur le système d'exploitation.
: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")
Intégrer une police
Intégrer une police signifie inclure les données du flux d'octets de la police dans le document PDF lui-même. Ainsi, il n'est pas nécessaire d'installer la police sur le système pour visualiser correctement le document PDF. Bien que cela augmente généralement la taille du fichier du document PDF, cela permet d'obtenir une cohérence visuelle sans avoir à installer la police.
: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)
Police Unembed
Désimbriquer une police signifie supprimer les données de flux d'octets intégrées de la police incluse dans un document PDF. L'objectif est de réduire la taille du fichier du document PDF. Utilisez la méthode Unembed
pour y parvenir.
: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()
Remplacer la police
L'opération de remplacement des polices préserve la structure des données de la police d'origine, comme le style et le codage des caractères, à l'intérieur d'un document PDF, mais la remplace par une nouvelle police spécifiée. Les utilisateurs doivent s'assurer que la nouvelle police s'aligne bien sur la police d'origine.
[{w:(Dans certains cas rares, le visuel résultant peut ne pas être parfaitement adapté. C'est une limitation actuelle de la méthode de remplacement de la police.
: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)
Polices standard
Les 14 polices standard du PDF, également appelées "polices de base 14" ou "polices standard de type 1", constituent un ensemble de polices largement prises en charge par les visionneuses PDF et ne doivent pas être incorporées dans le document. Les polices standard définissent 14 polices qui sont garanties (selon la norme des documents PDF) d'être disponibles lors de la manipulation d'un document PDF.
- Courrier
- Courier-Bold
- Courier-Oblique
- Courier-BoldOblique
- Helvetica
- Helvetica-Bold
- Helvetica-Oblique
- Helvetica-BoldOblique
- Times-Roman
- Times-Bold
- Times-Italic
- Times-BoldItalic
- Symbole
- ZapfDingbats
Cartographie des polices standard
Pour des raisons de commodité, lorsque l'on se réfère aux polices standard, plusieurs noms de chaînes renvoient à la même police.
Carte pour Courier
-
StandardFont.Courier
-
Courrier
-
CourierNew
-
CourierNewPSMT
- CourierStd
Carte vers Courier-Bold
-
-
StandardFont.CourierBold
-
Courier, gras
-
Courier-Bold
-
CourierBold
-
CourierNew,Bold
-
CourierNew-Bold
-
CourierNewBold
-
CourierNewPS-BoldMT
- CourierStd-Bold
Map à Courier-Oblique
-
-
StandardFont.CourierOblique
-
Courier,Italique
-
Courier-Oblique
-
CourierItalique
-
CourierNew,Italic
-
CourierNew-Italic
-
CourierNewItalic
-
CourierNewPS-ItalicMT
- CourierStd-Oblique
Carte vers Courier-BoldOblique
-
-
StandardFont.CourierBoldOblique
-
Courier,BoldItalic
-
Courier-BoldOblique
-
CourierBoldItalic
-
CourierNew,BoldItalic
-
CourierNew-BoldItalic
-
CourierNewBoldItalic
-
CourierNewPS-BoldItalicMT
- CourierStd-BoldOblique
Cartographier vers Helvetica
-
-
StandardFont.Helvetica
-
Arial
-
ArialMT
- Helvetica
Carte vers Helvetica-Bold
-
-
StandardFont.HelveticaBold
-
Arial, gras
-
Arial-Bold
-
Arial-BoldMT
-
ArialBold
-
ArialMT,gras
-
ArialRoundedMTBold
-
Helvetica,Bold
-
Helvetica-Bold
- HelveticaBold
Mapper vers Helvetica-Oblique
-
-
StandardFont.HelveticaOblique
-
Arial,Italique
-
Arial-Italique
-
Arial-ItalicMT
-
ArialItalique
-
ArialMT,Italique
-
Helvetica,Italic
-
Helvetica-Italic
-
Helvetica-Oblique
- HelveticaItalic
Carte vers Helvetica-BoldOblique
-
-
StandardFont.HelveticaBoldOblique
-
Arial,BoldItalic
-
Arial-BoldItalic
-
Arial-BoldItalicMT
-
ArialBoldItalic
-
ArialMT,BoldItalic
-
Helvetica,BoldItalic
-
Helvetica-BoldItalic
-
Helvetica-BoldOblique
- HelveticaBoldItalic
Carte vers Times-Roman
-
-
StandardFont.Times
-
Times-Roman
-
TimesNewRoman
-
TimesNewRomanPS
- TimesNewRomanPSMT
Carte vers Times-Bold
-
-
StandardFont.TimesBold
-
Times-Bold
-
TimesBold
-
TimesNewRoman,Bold
-
TimesNewRoman-Bold
-
TimesNewRomanBold
-
TimesNewRomanPS-Bold
-
TimesNewRomanPS-BoldMT
- TimesNewRomanPSMT,Bold
Cartographier en Times-Italic
-
-
StandardFont.TimesOblique
-
Times-Italic
-
TimesItalic
-
TimesNewRoman,Italique
-
TimesNewRoman-Italic
-
TimesNewRomanItalic
-
TimesNewRomanPS-Italic
-
TimesNewRomanPS-ItalicMT
- TimesNewRomanPSMT,Italique
Carte vers Times-BoldItalic
-
-
StandardFont.TimesBoldOblique
-
Times-BoldItalic
-
TimesBoldItalic
-
TimesNewRoman,BoldItalic
-
TimesNewRoman-BoldItalic
-
TimesNewRomanBoldItalic
-
TimesNewRomanPS-BoldItalic
-
TimesNewRomanPS-BoldItalicMT
- TimesNewRomanPSMT,BoldItalic
Carte vers Symbole
-
-
StandardFont.Symbol
-
Symbole
- SymbolMT
Carte vers ZapfDingbats
-
-
StandardFont.Dingbats
- ZapfDingbats