Comment dessiner du texte et des bitmaps sur des PDFs en C#

Comment dessiner du texte et des bitmaps sur des PDF en utilisant C

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronPDF vous permet de dessiner du texte et des images sur des PDF existants en utilisant les méthodes DrawText et DrawBitmap, permettant une personnalisation avec des filigranes, des logos, des annotations et une apparence visuelle améliorée sans altérer le contenu original.

Dessiner du texte et des images sur un PDF implique d'ajouter du contenu à un document existant. IronPDF permet d'utiliser cette fonctionnalité sans problème. En incorporant du texte et des images, vous pouvez personnaliser les PDF avec des marques d'eau, des logos et des annotations, améliorant ainsi l'aspect visuel et l'image de marque du document. En outre, le texte et les images facilitent la présentation des informations, la visualisation des données et la création de formulaires interactifs.

Démarrage rapide : Ajouter du texte et des images aux PDF avec IronPDF

Commencez à enrichir vos documents PDF avec du texte et des images rapidement et efficacement. En utilisant les méthodes DrawText et DrawBitmap, vous pouvez facilement personnaliser les PDF en ajoutant des filigranes, des logos ou des annotations. Cet exemple montre comment dessiner du texte à des coordonnées spécifiques et insérer une image de manière transparente dans votre PDF.

  1. Installez IronPDF avec le Gestionnaire de Packages NuGet

    PM > Install-Package IronPdf
  2. Copiez et exécutez cet extrait de code.

    new ChromePdfRenderer()
        .RenderHtmlAsPdf("<h1>Doc</h1>")
        .DrawText("Hello World", FontTypes.TimesNewRoman.Name, 12, 0, 100, 100, Color.Black, 0)
        .DrawBitmap(AnyBitmap.FromFile("logo.png"), 0, 50, 250, 500, 300)
        .SaveAs("annotated.pdf");
  3. Déployez pour tester sur votre environnement de production.

    Commencez à utiliser IronPDF dans votre projet dès aujourd'hui avec un essai gratuit

    arrow pointer


Comment dessiner du texte sur un PDF?

La méthode DrawText disponible sur l'objet PdfDocument vous permet d'ajouter du texte à un PDF existant sans altérer son contenu original. Cette méthode est particulièrement utile pour ajouter un contenu dynamique aux PDF, comme la fonction estampiller le texte et l'image pour des superpositions plus complexes.

Comprendre le système de coordonnées

Avant de dessiner du texte, comprenez le système de coordonnées PDF. L'origine (0,0) est située dans le coin inférieur gauche de la page, les valeurs X augmentant vers la droite et les valeurs Y augmentant vers le haut. Cela diffère de nombreux systèmes graphiques où l'origine se trouve en haut à gauche.

:path=/static-assets/pdf/content-code-examples/how-to/draw-text-and-bitmap-draw-text.cs
using IronPdf;
using IronSoftware.Drawing;

ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>testing</h1>");

// Draw text on PDF
pdf.DrawText("Some text", FontTypes.TimesNewRoman.Name, FontSize: 12, PageIndex: 0, X: 100, Y: 100, Color.Black, Rotation: 0);

pdf.SaveAs("drawText.pdf");
$vbLabelText   $csharpLabel

Quelles polices de caractères puis-je utiliser ?

La méthode DrawText prend actuellement en charge toutes les polices standard d' IronPDF , y compris Courier, Arial (ou Helvetica), TimesNewRoman, Symbol et ZapfDingbats. Visitez la section 'Polices standards dans IronPDF' dans l'article Gérer les polices pour les variantes italique, gras et oblique de ces types de polices.

La police ZapfDingbats peut afficher des symboles tels que ▲. Pour obtenir une liste complète des symboles pris en charge, consultez Wikipedia on Zapf Dingbats.

Exemple de polices sur PDF

Exemples de polices montrant les familles Arial, Courier, Helvetica et Times New Roman avec des variations en gras, italique et oblique

Comment ajouter du texte avec des sauts de ligne?

L'action de création de texte prend en charge les caractères de saut de ligne, vous permettant de rendre le texte avec des sauts de ligne intégrés pour une meilleure mise en forme et clarté visuelle. Cela est utile pour ajouter des annotations sur plusieurs lignes ou créer des mises en page de texte structuré.

Pour ce faire, ajoutez newline characters (\n) à la chaîne de texte. Reprenons l'exemple ci-dessus :

// Multi-line text example with proper spacing
string textWithNewlines = "Some text\nSecond line\nThird line with more content";
pdfDoc.DrawText(textWithNewlines, font, position);

// You can also use Environment.NewLine for platform-specific line breaks
string platformText = $"Line 1{Environment.NewLine}Line 2{Environment.NewLine}Line 3";
pdfDoc.DrawText(platformText, font, position);
// Multi-line text example with proper spacing
string textWithNewlines = "Some text\nSecond line\nThird line with more content";
pdfDoc.DrawText(textWithNewlines, font, position);

// You can also use Environment.NewLine for platform-specific line breaks
string platformText = $"Line 1{Environment.NewLine}Line 2{Environment.NewLine}Line 3";
pdfDoc.DrawText(platformText, font, position);
$vbLabelText   $csharpLabel

Comment utiliser des polices de caractères personnalisées?

Les polices personnalisées sont prises en charge avec la méthode DrawText, élargissant vos options typographiques au-delà des polices standard. Cette caractéristique est essentielle pour maintenir la cohérence de la marque ou travailler avec des polices spécialisées. Pour une gestion avancée des polices, consultez notre guide sur la gestion des polices dans les PDF.

Voici un exemple avec la police Pixelify Sans Font ajoutée au texte :

:path=/static-assets/pdf/content-code-examples/how-to/draw-text-and-bitmap-draw-custom-font.cs
using IronPdf;
using IronSoftware.Drawing;
using System.IO;

ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>testing</h1>");

// Add custom font to the PDF
byte[] fontByte = File.ReadAllBytes(@".\PixelifySans-VariableFont_wght.ttf");
var addedFont = pdf.Fonts.Add(fontByte);

// Draw text on PDF
pdf.DrawText("Iron Software", addedFont.Name, FontSize: 12, PageIndex: 0, X: 100, Y: 600, Color.Black, Rotation: 0);

pdf.SaveAs("drawCustomFont.pdf");
$vbLabelText   $csharpLabel

Positionnement avancé du texte

Lorsque vous positionnez le texte avec précision, tenez compte des conseils suivants :

  • Dimensions de la page : Utilisez pdf.Pages[pageIndex].Width et pdf.Pages[pageIndex].Height pour obtenir les dimensions de la page
  • Rotation : le paramètre de rotation accepte les degrés (0-360) pour un texte en angle
  • Options de couleur : Au-delà des couleurs de base, utilisez les valeurs RVB : Color.FromArgb(255, 100, 100)

Comment dessiner des images sur un PDF?

La méthode DrawBitmap d'IronPDF vous permet d'ajouter des bitmaps à des documents PDF existants. Cette méthode fonctionne de la même manière que la fonction Image Stamper, qui permet d'apposer des images sur des PDF existants. Pour les besoins de manipulation d'images complexes, consultez notre guide sur l'ajout d'images aux PDF.

Veuillez noterLa méthode DrawBitmap fonctionne mieux avec les grandes images. Lors de l'utilisation d'images à plus faible résolution, l'exception suivante peut se produire : IronPDF: " Erreur lors du dessin de l'image : la longueur des données (567 000) est inférieure à la longueur attendue (756 000) ". Pour résoudre ce problème, utilisez l'outil Tampon d'image, qui prend en charge les images de toutes tailles.

Exemple d'image

Logo Iron Software avec un design géométrique 3D coloré et imbriqué sur un fond de marque

À quoi ressemble la mise en œuvre?

:path=/static-assets/pdf/content-code-examples/how-to/draw-text-and-bitmap-draw-bitmap.cs
using IronPdf;
using IronSoftware.Drawing;

ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>testing</h1>");

// Open the image from file
AnyBitmap bitmap = AnyBitmap.FromFile("ironSoftware.png");

// Draw the bitmp on PDF
pdf.DrawBitmap(bitmap, 0, 50, 250, 500, 300);

pdf.SaveAs("drawImage.pdf");
$vbLabelText   $csharpLabel

PDF de sortie

Quels sont les paramètres supplémentaires disponibles ?

  • PixelFormat : La propriété PixelFormat spécifie le format des données de couleur pour le bitmap, contrôlant principalement la prise en charge de la transparence. La valeur par défaut est Format32bppArgb. Choisissez entre les formats d'énumération de pixels Format32bppRgb et Format32bppArgb en passant le paramètre comme option. Elle est utile pour travailler avec les éléments arrière-plan et avant-plan dans les PDF.

  • IgnorePageRotation : Cette propriété bool détermine si la méthode ignore la rotation de la page lors du dessin de l'image bitmap. Par défaut, la valeur est false. Particulièrement utile pour appliquer des filigranes de manière cohérente à toutes les pages, quelle que soit leur rotation.

Cas d'utilisation courants et meilleures pratiques

Lorsque vous dessinez du texte et des images sur des PDF, pensez à ces applications pratiques :

  1. Filigrane dynamique : Ajoutez des logos d'entreprise ou des tampons "CONFIDENTIEL" aux documents sensibles
  2. Numérotation des pages : Dessinez les numéros de page dans des positions cohérentes sur toutes les pages
  3. Placement de la signature : Ajoutez des images de signature aux endroits désignés sur les formulaires
  4. Amélioration de l'en-tête et du pied de page : Compléter les en-têtes existants par un contenu dynamique

Pour le débogage et le contrôle des opérations PDF, mettez en œuvre la journalisation personnalisée pour suivre les opérations de dessin et garantir une exécution correcte.

Considérations de performance

Lorsque vous travaillez avec plusieurs pages ou des documents volumineux :

  • Opérations par lots lorsque cela est possible afin de minimiser l'utilisation de la mémoire
  • Se débarrasser des objets bitmap après utilisation pour libérer des ressources
  • Envisagez de précharger les images fréquemment utilisées pour améliorer les performances

Prêt à voir ce que vous pouvez faire d'autre? Consultez notre page de tutoriel ici : Modifier les PDFs

Questions Fréquemment Posées

Quelles méthodes puis-je utiliser pour ajouter du texte et des images à des PDF existants ?

IronPDF propose deux méthodes principales pour ajouter du contenu aux PDF existants : la méthode DrawText pour ajouter du texte et la méthode DrawBitmap pour ajouter des images. Ces méthodes vous permettent de personnaliser les PDF avec des filigranes, des logos et des annotations sans altérer le contenu du document original.

Comment le système de coordonnées PDF fonctionne-t-il pour dessiner du texte ?

Dans IronPDF, le système de coordonnées PDF a pour origine (0,0) le coin inférieur gauche de la page. Les valeurs X augmentent en allant vers la droite et les valeurs Y augmentent en allant vers le haut. Cela diffère de nombreux systèmes graphiques où l'origine se trouve dans le coin supérieur gauche.

Quelles sont les polices prises en charge pour dessiner du texte sur les PDF ?

La méthode DrawText d'IronPDF prend en charge toutes les polices standard, notamment Courier, Arial (Helvetica), Times New Roman, Symbol et ZapfDingbats. Ces polices sont également disponibles en italique, en gras et en oblique. La police ZapfDingbats peut être utilisée pour afficher des symboles spéciaux.

Puis-je ajouter du texte et des images à un PDF en une seule opération ?

Oui, IronPDF vous permet d'enchaîner les méthodes. Vous pouvez utiliser ChromePdfRenderer pour créer un PDF, puis appliquer les méthodes DrawText et DrawBitmap séquentiellement dans une seule ligne de code, ce qui permet d'ajouter efficacement plusieurs éléments à votre document PDF.

Quels sont les cas d'utilisation courants pour dessiner du texte et des images sur des PDF ?

Les fonctionnalités de dessin d'IronPDF sont couramment utilisées pour ajouter des filigranes afin de protéger les documents, insérer des logos d'entreprise pour l'image de marque, créer des annotations pour l'examen des documents, améliorer l'apparence visuelle, faciliter la visualisation des données et créer des formulaires interactifs.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite
Prêt à commencer?
Nuget Téléchargements 17,803,474 | Version : 2026.3 vient de sortir
Still Scrolling Icon

Vous faites encore défiler ?

Vous voulez une preuve rapidement ? PM > Install-Package IronPdf
exécuter un échantillon Regardez votre code HTML se transformer en PDF.