Add Text Stamp In PDF File

Introduction

In today’s digital age, PDFs are a common format for sharing and delivering documents. Whether you’re a developer, a content creator, or just someone looking to enhance their PDF files, knowing how to manipulate PDFs programmatically can be a game-changer. One nifty feature you might want to make use of is the ability to add text stamps in your PDF files. Adding a text stamp can give your documents a professional touch or convey important information, such as “Sample,” “Confidential,” or even a watermark.

Prerequisites

Before we jump into the code, there are a few prerequisites to ensure you have everything set up correctly. Here’s what you’ll need:

  1. Aspose.PDF for .NET: Make sure you have the Aspose.PDF library installed in your project. If you haven’t done this yet, you can download it from the Aspose website.
  2. Visual Studio or Compatible IDE: You will need a development environment to write and run your .NET code. Visual Studio is the most common choice among developers.
  3. Basic Knowledge of C#: Familiarity with C# and object-oriented programming principles will help you understand the examples better.
  4. Sample PDF File: You should have a PDF file ready to work with. You can create a basic PDF or use any existing PDF to test the functionality.

Once you’ve got these prerequisites sorted out, we can move on to coding!

Import Packages

Now, let’s import the necessary packages. This step is crucial as it makes the classes and methods from the Aspose library available in your project.

Import Aspose.PDF Assembly

To get started, you need to import the Aspose.PDF namespace. At the top of your C# file, add the following using directive:

using System.IO;
using Aspose.Pdf;
using Aspose.Pdf.Text;
using System;

This will enable you to access classes that are essential for creating and manipulating PDF documents.

Now, let’s get into the meat of the tutorial. We will break down the process into clear and concise steps. Each step will guide you through the code to add a text stamp to a PDF file.

Step 1: Set Up the Document Directory

First, you need to establish the directory where your PDF document is stored. This means your code needs to know where to find the PDF file you want to edit.

// The path to the documents directory.
string dataDir = "YOUR DOCUMENT DIRECTORY";

Explanation: Replace "YOUR DOCUMENT DIRECTORY" with the actual path where your PDF file (AddTextStamp.pdf) is stored. This path is used later to open and save the modified PDF.

Step 2: Open the PDF Document

Next, we will open the PDF document using the Document class from the Aspose.PDF namespace.

// Open document
Document pdfDocument = new Document(dataDir + "AddTextStamp.pdf");

Explanation: Here, we are creating an instance of the Document class and passing the path to our PDF file. This will load the PDF so that we can manipulate it.

Step 3: Create a Text Stamp

Now, we will create a text stamp that we’ll later apply to our PDF document.

// Create text stamp
TextStamp textStamp = new TextStamp("Sample Stamp");

Explanation: The TextStamp object is created with the text you want to display. In this case, we are using “Sample Stamp” as the text for our stamp.

Step 4: Set Stamp Properties

To customize your stamp, we can set various properties such as background color, position, and rotation. Let’s do that now:

// Set whether stamp is background
textStamp.Background = true;

// Set origin
textStamp.XIndent = 100;
textStamp.YIndent = 100;

// Rotate stamp
textStamp.Rotate = Rotation.on90;

Explanation:

  • Background: Setting this to true means the stamp will appear behind the content of the PDF.
  • XIndent & YIndent: These properties determine the position of the stamp on the page. In this example, the stamp will be placed 100 units from the left and top edges of the page.
  • Rotate: This rotates the stamp by 90 degrees. You can choose different rotation options based on your design requirements.

Step 5: Customize Text Properties

Next, let’s get creative by customizing the appearance of the text within our stamp:

// Set text properties
textStamp.TextState.Font = FontRepository.FindFont("Arial");
textStamp.TextState.FontSize = 14.0F;
textStamp.TextState.FontStyle = FontStyles.Bold | FontStyles.Italic;
textStamp.TextState.ForegroundColor = Aspose.Pdf.Color.FromRgb(Color.Aqua);

Explanation:

  • Font: We are using the Arial font and making it bold and italic.
  • FontSize: It’s set to 14 points.
  • ForegroundColor: Using RGB to set the text color to Aqua. Feel free to change the color to fit your branding or design needs!

Step 6: Add Stamp to the PDF Page

Now it’s time to add the stamp to a specific page of the PDF document.

// Add stamp to particular page
pdfDocument.Pages[1].AddStamp(textStamp);

Explanation: In this example, the stamp is added to the first page of the PDF (pages are 1-indexed). Adjust the page number as needed for your document.

Step 7: Save the Modified PDF

Finally, let’s save the document with the newly added text stamp.

dataDir = dataDir + "AddTextStamp_out.pdf";

// Save output document
pdfDocument.Save(dataDir);
Console.WriteLine("\nText stamp added successfully.\nFile saved at " + dataDir);

Explanation: We define a new path for the output file and then save the modified document. After saving, the path is printed to the console, confirming the successful operation.

Conclusion

Congratulations! You’ve successfully added a text stamp to a PDF file using Aspose.PDF for .NET. This method allows you to annotate your documents efficiently, enhancing both their professionalism and usability. Whether you’re adding watermarks, signatures, or simple notes, the Aspose library provides powerful tools to manipulate your PDFs with ease.

FAQ’s

What is a text stamp in a PDF?

A text stamp is a graphical overlay containing text that can be placed on a PDF document, often used for annotations or watermarks.

Can I customize the stamp with images?

Yes, Aspose.PDF supports adding image stamps as well, providing more design flexibility.

What programming languages can I use with Aspose.PDF?

Aspose.PDF is primarily focused on .NET, but there are versions available for other languages like Java and Python.

How do I get a temporary license for Aspose.PDF?

You can apply for a temporary license by visiting the purchase link on their website.

Where can I find support for Aspose.PDF?

Support for Aspose.PDF is available on their support forum.