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 une police de caractères, une taille, un poids et un style spécifiques(tels que normal, gras, italique, etc.) du 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 C# d'IronPDF
- Utiliser le
Ajouter
pour ajouter une police à la collection de polices - Utiliser le
Embarquer
pour intégrer une police de caractères afin d'assurer la persistance des visuels - Les polices désencombrées sont réduites en taille à l'aide de l'option
Unmbed
méthode - Remplacez facilement les polices avec la fonction
Remplacer
méthode
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 est accessible 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["Nom de la police spéciale"]. 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 la police standard et le fichier de police en tant que données d'octets. La méthode Add
qui accepte le nom de la police n'accepte que l'une des options suivantes14 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 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)
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. Pour ce faire, utilisez la méthode Unembed
.
: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 de rares cas, le visuel obtenu peut ne pas être parfaitement adapté. Il s'agit d'une limitation actuelle de la méthode de remplacement des polices.)}]
: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(conformément à la norme du document PDF) pour être disponible lors de l'utilisation 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.
Map to Courier
StandardFont.Courier
Courrier
CourierNew
CourierNewPSMT
- CourierStd
Map to Courier-Bold (en anglais)
StandardFont.CourierBold
Courier, gras
Courier-Bold
CourierBold
CourierNew,Bold
CourierNew-Bold
CourierNewBold
CourierNewPS-BoldMT
- CourierStd-Bold
Carte vers 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
Carte vers Helvetica
StandardFont.Helvetica
Arial
ArialMT
- Helvetica
Map to Helvetica-Bold (en anglais)
StandardFont.HelveticaBold
Arial, gras
Arial-Bold
Arial-BoldMT
ArialBold
ArialMT,gras
ArialRoundedMTBold
Helvetica,Bold
Helvetica-Bold
- HelveticaBold
Map to Helvetica-Oblique (en anglais)
StandardFont.HelveticaOblique
Arial,Italique
Arial-Italique
Arial-ItalicMT
ArialItalique
ArialMT,Italique
Helvetica,Italic
Helvetica-Italic
Helvetica-Oblique
- HelveticaItalic
Map to Helvetica-BoldOblique *Map to 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
Map to Times-Bold (en anglais)
StandardFont.TimesBold
Times-Bold
TimesBold
TimesNewRoman,Bold
TimesNewRoman-Bold
TimesNewRomanBold
TimesNewRomanPS-Bold
TimesNewRomanPS-BoldMT
- TimesNewRomanPSMT,Bold
Carte vers Times-Italic
StandardFont.TimesOblique
Times-Italic
TimesItalic
TimesNewRoman,Italique
TimesNewRoman-Italic
TimesNewRomanItalic
TimesNewRomanPS-Italic
TimesNewRomanPS-ItalicMT
- TimesNewRomanPSMT,Italique
Mapper sur Times-BoldItalic
StandardFont.TimesBoldOblique
Times-BoldItalic
TimesBoldItalic
TimesNewRoman,BoldItalic
TimesNewRoman-BoldItalic
TimesNewRomanBoldItalic
TimesNewRomanPS-BoldItalic
TimesNewRomanPS-BoldItalicMT
- TimesNewRomanPSMT,BoldItalic
Map to Symbol
StandardFont.Symbol
Symbole
- SymbolMT
Carte vers ZapfDingbats
StandardFont.Dingbats
- ZapfDingbats