Search Results for

    Show / Hide Table of Contents

    Class TextStamper

    Stamps text content onto PDF pages with full styling control. Perfect for watermarks, page numbers, annotations, and dynamic text overlay.

    // Simple watermark:
    var watermark = new TextStamper("CONFIDENTIAL") {
        FontSize = 60,
        Color = Color.Red,
        Opacity = 30,
        Rotation = -45,
        HorizontalAlignment = HorizontalAlignment.Center,
        VerticalAlignment = VerticalAlignment.Middle
    };
    pdf.ApplyStamp(watermark);
    
    // Page numbers:
    var pageNum = new TextStamper("Page {page} of {total-pages}") {
        FontFamily = "Arial",
        FontSize = 10,
        VerticalAlignment = VerticalAlignment.Bottom
    };
    pdf.ApplyStamp(pageNum);
    
    // Bold approval stamp:
    var approved = new TextStamper("APPROVED") {
        IsBold = true,
        FontSize = 48,
        Color = Color.Green,
        BackgroundColor = Color.LightYellow
    };
    pdf.ApplyStamp(approved, 0);  // First page only

    Supports {page} and {total-pages} merge fields

    Google Fonts require UseGoogleFont = true

    See: https://ironpdf.com/how-to/stamping/#text-stamper

    Inheritance
    System.Object
    Stamper
    TextStamper
    Inherited Members
    Stamper.AntiClockwiseRotateAlignment(HorizontalAlignment, VerticalAlignment, PdfPageRotation)
    Stamper.Html
    Stamper.Opacity
    Stamper.Rotation
    Stamper.HorizontalAlignment
    Stamper.VerticalAlignment
    Stamper.HorizontalOffset
    Stamper.VerticalOffset
    Stamper.MaxWidth
    Stamper.MaxHeight
    Stamper.MinWidth
    Stamper.MinHeight
    Stamper.Hyperlink
    Stamper.Scale
    Stamper.IsStampBehindContent
    Stamper.WaitFor
    Stamper.Timeout
    Stamper.IsStampAnnotation
    Namespace: IronPdf.Editing
    Assembly: IronPdf.dll
    Syntax
    public class TextStamper : Stamper

    Use TextStamper in IronPDF when a C# application works with PDF editing. It represents stamps text content onto PDF pages with full styling control.

    TextStamper matters when an application needs to configure or invoke PDF editing from C# code. The class encapsulates the related options and behavior in a single object that is set up once and reused across render or processing calls. Typical scenarios include batch generation pipelines, templated document workflows, and integration with existing C# document services.

    To use TextStamper, instantiate or obtain it from the relevant entry point in the IronPDF C# API. Key properties include BackgroundColor, Color, FontFamily, FontSize. Assign options or invoke methods on the instance to configure or perform the operation. The stamping covers typical usage in C# end to end.

    using IronPdf;
    
    // Obtain TextStamper from the relevant entry point in the IronPDF API
    void Configure(TextStamper instance)
    {
        var current = instance.BackgroundColor;
    }

    For the broader workflow, see the stamp text image guide in the IronPDF C# documentation. For broader context, the PDF editing portion of the IronPDF C# API contains related types that work with TextStamper directly. TextStamper instances inherit additional members from Stamper that may be relevant in advanced scenarios. In application code, treat TextStamper as a configured object that is constructed once and reused across operations rather than instantiated per call. Configuration is generally idempotent: assigning the same property value twice has the same effect as assigning it once. For diagnostic purposes, inspect the relevant TextStamper property after each operation to confirm the configured state. See the constructors, properties, and methods tables below for the complete API surface of TextStamper. Application code typically obtains or instantiates a single TextStamper and shares it across multiple IronPDF operations rather than recreating it per call.

    Constructors

    TextStamper(Int32)

    Initializes a new instance of the TextStamper class. This will also automatically wait for all fonts to be loaded before rendering.

    Declaration
    public TextStamper(int maxWaitTime = 10000)
    Parameters
    Type Name Description
    System.Int32 maxWaitTime

    Maximum wait time to wait for all fonts to be loaded before rendering. Default value is 10,000 ms or 10 seconds.

    TextStamper(String, Int32)

    Initializes a new instance of the TextStamper class. This will also automatically wait for all fonts to be loaded before rendering.

    Declaration
    public TextStamper(string text, int maxWaitTime = 10000)
    Parameters
    Type Name Description
    System.String text

    The text to be stamped by the Stamper

    System.Int32 maxWaitTime

    Maximum wait time to wait for all fonts to be loaded before rendering. Default value is 10,000 ms or 10 seconds.

    Properties

    BackgroundColor

    Background Color. Default is transparent.

    Declaration
    public Color BackgroundColor { get; set; }
    Property Value
    Type Description
    IronSoftware.Drawing.Color

    Color

    Font Color. Default is black.

    Declaration
    public Color Color { get; set; }
    Property Value
    Type Description
    IronSoftware.Drawing.Color

    FontFamily

    Font family name for the text.

    Note: If using a web font from https://fonts.google.com/ then you must set UseGoogleFont property of this TextStamper to true.
    Declaration
    public string FontFamily { get; set; }
    Property Value
    Type Description
    System.String

    FontSize

    Font size in pixels (default: 12px). Watermarks typically 40-100px, headers 14-20px, footers 8-12px.

    stamper.FontSize = 60;   // Large watermark
    stamper.FontSize = 10;   // Small footer
    Declaration
    public int FontSize { get; set; }
    Property Value
    Type Description
    System.Int32

    IsBold

    Determines if the bold font weight is applied. Use for emphasis, headings, or important notices.

    stamper.IsBold = true;  // APPROVED, CONFIDENTIAL, etc.
    Declaration
    public bool IsBold { get; set; }
    Property Value
    Type Description
    System.Boolean

    IsItalic

    Determines if the text has the italic font style applied. Use for quotes, references, or stylistic emphasis.

    stamper.IsItalic = true;  // "Draft Version"
    Declaration
    public bool IsItalic { get; set; }
    Property Value
    Type Description
    System.Boolean

    IsStrikethrough

    Determines if the text has a strike-through applied. Use for obsolete content, corrections, or void marks.

    stamper.IsStrikethrough = true;  // VOID, CANCELLED
    Declaration
    public bool IsStrikethrough { get; set; }
    Property Value
    Type Description
    System.Boolean

    IsUnderline

    Determines if the text has an underline font style applied. Use for hyperlinks, emphasis, or legal text.

    stamper.IsUnderline = true;  // Important notice
    Declaration
    public bool IsUnderline { get; set; }
    Property Value
    Type Description
    System.Boolean

    Text

    The text to be stamped by the Stamper. Supports merge fields: {page}, {total-pages}, {date}, {time}.

    stamper.Text = "Page {page} of {total-pages}";
    stamper.Text = "Generated on {date} at {time}";
    Declaration
    public string Text { get; set; }
    Property Value
    Type Description
    System.String

    UseGoogleFont

    Must be set to true, when using FontFamily from https://fonts.google.com/ as a web font

    Declaration
    public bool UseGoogleFont { get; set; }
    Property Value
    Type Description
    System.Boolean

    Inherited members

    AntiClockwiseRotateAlignment(HorizontalAlignment, VerticalAlignment, PdfPageRotation)
    Html
    Opacity
    Rotation
    HorizontalAlignment
    VerticalAlignment
    HorizontalOffset
    VerticalOffset
    MaxWidth
    MaxHeight
    MinWidth
    MinHeight
    Hyperlink
    Scale
    IsStampBehindContent
    WaitFor
    Timeout
    IsStampAnnotation
    ☀
    ☾
    Downloads
    • Download with Nuget
    • Start for Free
    In This Article
    Back to top
    Install with Nuget
    %s requires a valid license key for further deployment. Get Trial Below.
    ironsuite
    Blue key in circleGet Started for Free
    30 days full access • No credit card required
    Test in a live environment

    Test in production without watermarks.
    Works wherever you need it to.

    Fully-functional product

    Get 30 days of fully functional product.
    Have it up and running in minutes.

    24/5 technical support

    Full access to our support engineering team during your product trial

    Grey key in circleGet Started for Free
    The trial form was submitted successfully.
    Grey check in circleTrial key delivered
    Your key has been issued and sent to your email.
    Calendar in circleBook Free Live Demo
    No cards • no pitches • no commitments Pick a time for a quick, personalized demo
    Get the most out of your 30-day trial with:

    Live product and key features walk-through

    Project-specific recommendations

    All your questions answered

    Grey key in circleBook Free Live Demo
    Your booking has been completed Check your e-mail for confirmation

    Want to deploy Iron Suite
    to a live project for FREE?

    What’s included?

    • Test in production without watermarks
    • 30 days fully functional product
    • 24/5 technical support during trial
    ironpdf Logo
    ironword Logo
    ironxl Logo
    ironppt Logo
    ironocr Logo
    ironbarcode Logo
    ironqr Logo
    ironprint Logo
    ironzip Logo
    ironwebscraper Logo
    Iron Software sales team
    Online 24/5
    Have Enterprise licensing requirements?
    Request Iron Suite Enterprise trial
    Key in blue circle

    Get your free 30-day Trial Key instantly

    Your trial license will be sent to your email address

    No limitations. 100% unlocked. No credit card.

    bullet_checkedNo credit card or account creation requiredNo limitations. 100% unlocked. No credit card.
    Or
    Key in blue circle

    Complete Your Trial Key Signup

    Tell us a little more about yourself.

    Key in blue circleNo credit card or account creation requiredNo limitations. 100% unlocked. No credit card.
    Key in blue circle

    Your license key has been delivered to your inbox

    Can't find it? Check your spam folder.

    What’s next?
    Install with NuGet
    Add IronPDF to your project
    Quickstart Guide
    Helpful resources to get started

    Need help getting started?

    Book a Free Live Demo

    See IronPDF in action and get your licensing questions answered, or

    Key in blue circle

    Your demo request is in.

    You'll receive an invite via email shortly.

    What’s next?
    Explore Documentation
    Review Licensing Options
    badge_greencheck_in_yellowcircle
    Thank you
    Your trial key should be in the email.
    If it is not, please contact support@ironsoftware.com
    • Logo Aetna
    • Logo NASA
    • Logo GE
    • Logo Porsche
    • Logo USDA
    • Logo Qatar
    Join Millions of Engineers who’ve tried IronPDF
    Your trial key should be in the email.
    If it is not, please contact support@ironsoftware.com