# PDF Examples

> PDF samples you can use with TX Text Control .NET for WPF: electronic invoices, watermarks, XFDF form data, fillable forms, attachments and PDF/UA checks.

- **Product:** TX Text Control .NET for WPF
- **Section:** Documentation
- **Kind:** Topic
- **Path:** TX Text Control .NET for WPF > Examples > PDF Examples
- **1257 words**
- **Web URL:** https://docs.textcontrol.com/tx-text-control-dotnet-wpf/examples/pdf/
- **LLMs URL:** https://docs.textcontrol.com/tx-text-control-dotnet-wpf/examples/pdf/llms.txt
- **LLMs-Full URL:** https://docs.textcontrol.com/tx-text-control-dotnet-wpf/examples/pdf/llms-full.txt

---

No sample of Text Control is a WPF application dedicated to PDF, yet everything the samples below do works in one: the PDF classes of TX Text Control, such as the namespace [DocumentServer.PDF](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol-documentserver-pdf/llms-full.txt), and `ServerTextControl` are part of the WPF package. The samples were written for TX Text Control .NET Server or for Windows Forms, and the tables say which. The TX Words *Reporting* sample saves merged documents as PDF/A in WPF; see [Mail Merge Examples](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/examples/mail-merge/llms-full.txt).

### Sample Projects

To reuse the code of a console application for TX Text Control .NET Server in a WPF project, reference `TXTextControl.TextControl.WPF.SDK` instead of its package:

| Example | What it shows | Where |
|---|---|---|
| Watermarks for each download | A watermark with the data of the user added at each download, and the PDF document signed so that removing the watermark can be detected, as described in [Secure by Design: Dynamic Watermarking for Enterprise Documents in C# .NET](https://www.textcontrol.com/blog/2026/02/06/secure-by-design-dynamic-watermarking-for-enterprise-documents-in-csharp-dotnet/). A console application for TX Text Control .NET Server, .NET 10, version 34.0 | [TXTextControl.TXEnterpriseWatermark](https://github.com/TextControl/TXTextControl.TXEnterpriseWatermark) |
| XFDF form data | A class that exports the AcroForm fields of a PDF document as XFDF and fills fields from XFDF, as described in [Export and Import Adobe PDF XFDF XML Files in .NET C#](https://www.textcontrol.com/blog/2025/01/22/export-and-import-adobe-pdf-xfdf-xml-files-in-net-c-sharp/). A class without a project | [XfdfProcessing](https://github.com/TextControl/XfdfProcessing) |
| ZUGFeRD invoice | An invoice with its ZUGFeRD XML embedded in a PDF/A-3 document, as described in [Creating ZUGFeRD Compliant PDF Invoices in C#](https://www.textcontrol.com/blog/2021/02/03/creating-zugferd-compliant-pdf-invoices-in-csharp/). Windows Forms, .NET Framework 4.8, version 33.0 | [TextControl.WindowsForms.Zugferd](https://github.com/TextControl/TextControl.WindowsForms.Zugferd) |
| ZUGFeRD from a merge | An invoice merged with `MailMerge` and its XML embedded in a PDF/A document, as described in [Creating 100% Compliant ZUGFeRD and Factur-X Invoices using MailMerge in C#](https://www.textcontrol.com/blog/2023/02/09/creating-compliant-zugferd-and-facturx-invoices-using-mailmerge-in-csharp/). A console application for TX Text Control .NET Server, .NET 8, version 33.0 | [TXTextControl.Core.MailMerge.Zugferd](https://github.com/TextControl/TXTextControl.Core.MailMerge.Zugferd) |
| ZUGFeRD 2.3 | An XRechnung invoice in ZUGFeRD 2.3 embedded in a PDF/A-3 document, as described in [Creating ZUGFeRD 2.3 (XRechnung, Factur-X) Documents with .NET C#](https://www.textcontrol.com/blog/2025/01/02/creating-zugferd-2-3-xrechnung-factur-x-documents-with-net-c-sharp/). A console application for TX Text Control .NET Server, .NET 8, version 32.0 | [TXTextControl.ZUGFeRD23](https://github.com/TextControl/TXTextControl.ZUGFeRD23) |
| Readable electronic invoices | The data of XRechnung, ZUGFeRD and Factur-X invoices shown as a readable document, as described in [Visualize and Preview XRechnung, ZUGFeRD, and Factur-X Documents in .NET C#](https://www.textcontrol.com/blog/2025/01/02/visualize-and-preview-xrechnung-zugferd-and-factur-x-documents-in-net-csharp/). A console application for TX Text Control .NET Server, .NET 8, version 32.0 | [TXTextControl.XRechnung.Visualize](https://github.com/TextControl/TXTextControl.XRechnung.Visualize) |

### Blog Articles With Code

These articles use `ServerTextControl` and the PDF classes in console applications:

| Example | What it shows | Where |
|---|---|---|
| Fillable PDF forms | Text, check box and selection form fields created and saved as a fillable PDF form | [Create Fillable PDF Forms in .NET C#](https://www.textcontrol.com/blog/2024/11/12/create-fillable-pdf-forms-in-net-c-sharp/) |
| Form fields in PDF | Form fields created, preselected, flattened and read from a PDF document | [Create, Pre-Select, Flatten and Extract PDF Form Fields using C#](https://www.textcontrol.com/blog/2023/08/14/create-preselect-flatten-and-extract-pdf-form-fields-using-csharp/) |
| ZUGFeRD attachments | The XML attachment of a ZUGFeRD or Factur-X invoice read from a PDF/A-3 document | [Extract ZUGFeRD/Factur-X XML Attachments from Adobe PDF/A-3b Documents](https://www.textcontrol.com/blog/2021/01/18/extract-zugferd-facturx-attachments-from-adobe-pdf-documents/) |
| Watermarks | Watermarks added to the pages of a PDF document | [Adding Watermarks to PDF Documents in .NET C#](https://www.textcontrol.com/blog/2025/02/06/adding-watermarks-to-pdf-documents-in-net-c-sharp/) |
| Keywords | Keywords written to and read from the metadata of PDF documents | [Enhancing PDF Searchability in Large Repositories by Adding and Reading Keywords Using C# .NET](https://www.textcontrol.com/blog/2025/06/24/enhancing-pdf-searchability-in-large-repositories-by-adding-and-reading-keywords-using-csharp-dotnet/) |
| Accessible PDF | Documents checked for the requirements of PDF/UA before they are saved | [Preflighting PDF/UA Documents with TX Text Control in .NET C#](https://www.textcontrol.com/blog/2025/12/29/preflighting-pdf-ua-documents-with-tx-text-control-dotnet-csharp/) |
| Security | Passwords, permissions, encryption and digital signatures of PDF documents | [PDF Security Explained: Passwords, Permissions, Encryption and Digital Signatures in C# .NET](https://www.textcontrol.com/blog/2026/06/08/pdf-security-explained-passwords-permissions-encryption-and-digital-signatures-in-csharp-dotnet/) |

### Next Steps

- [PDF Processing](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/pdf/llms-full.txt): create, import and secure PDF documents.
- [Create a PDF](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/getting-started/pdf/create/llms-full.txt): save a first PDF document from a window.
- [Digital Signature Examples](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/examples/digital-signatures/llms-full.txt): sign PDF documents with certificates.

---

## Nearby

- **Previous:** [Mail Merge Examples](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/examples/mail-merge/llms-full.txt)
- **Next:** [Digital Signature Examples](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/examples/digital-signatures/llms-full.txt)
