Localizar e substituir texto em arquivos PDF programaticamente com C#. Edição direta de fluxos de conteúdo — sem conversão para DOCX, sem dependências externas, sem perda de dados.
dotnet add package Exis.PdfEditor
A maioria das bibliotecas PDF .NET — IronPDF, Spire.PDF, Aspose, Syncfusion — substituem texto convertendo o PDF para um formato intermediário, redatando texto e desenhando novo texto por cima, ou reconstruindo páginas do zero.
Esta abordagem danifica:
O Exis.PdfEditor analisa os fluxos de conteúdo PDF diretamente no nível de bytes. Localiza texto nos operadores PDF reais, modifica apenas os operandos de string selecionados e grava usando atualização incremental de PDF.
Tudo que não é tocado permanece idêntico byte por byte:
using Exis.PdfEditor;
using Exis.PdfEditor.Licensing;
ExisLicense.Initialize(); // Free 14-day trial — no key needed
var result = PdfFindReplace.Execute(
"contract.pdf",
"contract-updated.pdf",
"Acme Corporation",
"Globex Industries");
Console.WriteLine($"Replaced {result.TotalReplacements} occurrences " +
$"across {result.PagesModified} pages.");
var pairs = new[]
{
new FindReplacePair("2025", "2026"),
new FindReplacePair("Draft", "Final"),
new FindReplacePair("CONFIDENTIAL", "PUBLIC"),
};
var result = PdfFindReplace.Execute(
"report.pdf",
"report-final.pdf",
pairs);
var options = new PdfFindReplaceOptions { UseRegex = true };
// Replace all US phone numbers with a placeholder
var result = PdfFindReplace.Execute(
"document.pdf",
"redacted.pdf",
@"\(\d{3}\)\s?\d{3}-\d{4}",
"[PHONE REDACTED]",
options);
// Purchase at officefindreplace.com/Home/pdf-find-replace-csharp — $499/developer/year
ExisLicense.Initialize("XXXX-XXXX-XXXX-XXXX");
// Unlimited pages, no restrictions, no console messages
var result = PdfFindReplace.Execute("large-doc.pdf", "output.pdf", "old", "new");
| Recurso | Exis.PdfEditor | IronPDF | Spire.PDF | Aspose.PDF | Syncfusion |
|---|---|---|---|---|---|
| Edição direta de fluxos de conteúdo | ✓ | ✗ Renderização HTML | ✗ Sobreposição de redação | ✗ Substituição por fragmento | ✗ Sobreposição de redação |
| Preserva campos de formulário | ✓ | ✗ | Parcial | Parcial | ✗ |
| Preserva assinaturas digitais | ✓ Páginas não modificadas | ✗ | ✗ | ✗ | ✗ |
| Preserva espaçamento/kerning do texto | ✓ | ✗ | ✗ | Parcial | ✗ |
| Zero dependências nativas | ✓ .NET puro | ✗ Motor Chromium | ✓ | ✓ | ✓ |
| Tamanho da DLL | < 500 KB | ~250 MB | ~20 MB | ~40 MB | ~15 MB |
| Substituição em lote multi-par | ✓ Passagem única | Loop manual | Loop manual | Loop manual | Loop manual |
| .NET Framework 4.8 | ✓ | ✓ | ✓ | ✓ | ✗ Apenas .NET 6+ |
| Multiplataforma | ✓ | ✓ | ✓ | ✓ | ✓ |
| Suporte a regex | ✓ | ✓ | ✓ | ✓ | ✓ |
| Preço (por desenvolvedor/ano) | $499 | $749 | $999 | $1,175 | $995* |
| Sede | 🇺🇸 USA | 🇺🇸 USA | 🇨🇳 China | 🇦🇺 Australia | 🇺🇸 USA |
Comparação baseada em documentação publicamente disponível de fevereiro de 2026. O suporte a recursos pode variar por versão.
"Edição direta de fluxos de conteúdo" significa que a biblioteca modifica os operadores de texto PDF no local sem converter, re-renderizar ou sobrepor.
Modifica operadores de fluxo de conteúdo. Sem conversão intermediária.
Sem Ghostscript, sem LibreOffice, sem Chromium. .NET gerenciado puro.
Formulários, assinaturas, anotações, marcadores — tudo preservado.
.NET 8+, .NET Framework 4.8 e .NET Standard 2.0.
Múltiplos pares localizar/substituir executados em uma única passagem.
Suporte completo a regex .NET para substituições baseadas em padrões.
Windows, Linux, macOS. Onde quer que o .NET funcione.
DLL única, menos de 500 KB. Sem binários nativos para implantar.
Instale o pacote NuGet e chame ExisLicense.Initialize() — funcionalidade completa por 14 dias. Após o teste, o modo avaliação processa até 3 páginas por documento. Sem marcas d'água. Adquira uma chave de licença em officefindreplace.com/Home/pdf-find-replace-csharp.
Preços em dólares americanos. Uma chave por desenvolvedor. Funciona na máquina de desenvolvimento, servidor de build e produção — sem limites por máquina ou implantação.
Seu código não muda entre o modo de teste e o modo licenciado. Basta adicionar sua chave quando estiver pronto.
dotnet add package Exis.PdfEditor
Dúvidas? Envie um e-mail para support@exisone.com — você receberá resposta de um desenvolvedor, não de um bot.