
Comparação do Wkhtmltopdf em C# com exemplos de código
IronPDF vs wkhtmltopdf
Comparação de cada funcionalidade com base em evidências da documentação oficial, listagens do NuGet e repositórios de projetos.
A biblioteca wkhtmltopdf está obsoleta. O projeto foi arquivado e não recebe mais manutenção. Ela utiliza um mecanismo Qt WebKit desatualizado que não oferece suporte a CSS3, Flexbox, Grid e aos padrões atuais de JavaScript . Recomenda-se a migração para uma biblioteca com manutenção ativa para aplicações em produção.
| Recurso | wkhtmltopdf | IronPDF ✦ |
|---|---|---|
| Criação e conversão de PDF | ||
| HTML/CSS para PDF | ⚠ Outdated Engine O objetivo principal é a conversão de HTML para PDF, mas o mecanismo utilizado é o Qt WebKit (desatualizado). Não oferece suporte a CSS3, Flexbox e Grid modernos. | ✓ Yes Mecanismo Chromium integrado — HTML5/CSS3 impecável com Flexbox, Grid e padrões web modernos. |
| Execução de JavaScript | ~ Partial Suporta opções relacionadas a JS, mas o mecanismo WebKit, já desatualizado, recomenda alternativas para JS complexo. | ✓ Yes Renderização completa de HTML/CSS/JavaScript via Chromium incorporado — gráficos dinâmicos, SPAs, conteúdo interativo. |
| Geração Programática | ✕ No Projetada para renderizar apenas HTML em PDF — não é uma biblioteca programática geral para desenho de PDFs. | ✓ Yes Crie PDFs novos/em branco através do construtor PdfDocument . Controle programático completo. |
| Mesclar, dividir e reorganizar | ✕ No Ferramenta apenas para conversão; não há evidências de APIs para divisão/fusão de páginas em PDF. | ✓ Yes Funcionamento de mesclagem/divisão com guia passo a passo dedicado. Operações em uma única linha. |
| Edição e Manipulação | ||
| Cabeçalhos, rodapés e números de página | ✓ Yes O mecanismo fornece recursos de cabeçalho/rodapé (funcionalidade comum do wkhtmltopdf via flags da linha de comando). | ✓ Yes API dedicada para cabeçalho/rodapé + suporte a marcadores de página. Baseado em HTML com personalização completa. |
| Marcas d'água e selos | ✕ No Não é um editor de PDF; a marca d'água geralmente é feita alterando o modelo HTML antes da conversão. | ✓ Yes Tutoriais de aplicação de marcas d'água/carimbos com ferramentas de carimbo HTML/texto/imagem. Controle total de opacidade, rotação e posição. |
| Leitura e Extração | ||
| Extrair texto de PDFs | ✕ No Apenas conversor; não é uma biblioteca de extração de texto. | ✓ YesExtractAllText Suporta opções de pedido (ex.: pedido visual). |
| Renderizar páginas em imagens | ✕ No wkhtmltopdf converte HTML em PDF; wkhtmltoimage converte HTML em imagem, e não PDF em imagem. | ✓ Yes APIs de conversão de PDF para imagem/rasterização documentadas. Saída nativa em PNG, JPEG e BMP. |
| OCR para PDFs digitalizados | ✕ No OCR não está incluído no escopo do conversor de HTML para PDF. | ✓ Via IronOCR Crie PDFs pesquisáveis usando OCR. Suporte para mais de 127 idiomas através da integração com o IronOCR . |
| Segurança e Conformidade | ||
| Assinaturas digitais | ✕ No O wkhtmltopdf não implementa a assinatura de PDFs. | ✓ Yes Guia de assinatura dedicado com suporte para certificados X509/PFX. |
| Conformidade com PDF/A | ✕ No Os fluxos de trabalho de conformidade com PDF/A não estão documentados como saída suportada. | ✓ Yes Orientações para conversão de PDF/A (ex.: detalhes de PDF/A-3B). Pronto para conformidade empresarial. |
| Plataforma e Implantação | ||
| Suporte multiplataforma | ⚙ Wrapper-Dependent A compatibilidade entre plataformas depende da instalação dos binários nativos corretos para cada sistema operacional. Não é autossuficiente. | ✓ Yes Pacotes NuGet específicos para cada sistema operacional + guias para macOS e Linux. Compatível com Windows, Linux, macOS e ARM. |
| Implantação de servidor/Docker | ⚙ Wrapper-Dependent Requer o envio de binários nativos; o projeto observa o status do mecanismo legado. Configuração complexa do Docker. | ✓ Yes Guias oficiais do Azure Functions + Docker; contêiner de mecanismo separado opcional. |
| Tempo até o primeiro PDF | ~ Complex Requer gerenciamento de binários nativos + integração de wrapper. Não é uma simples instalação NuGet . | ✓ Simple O guia de início rápido mostra a instalação e o código mínimo para conversão de HTML para PDF. Install-Package IronPDF . |
| Licenciamento e suporte | ||
| Clareza no licenciamento | ~ Complex A licença LGPLv3 introduz considerações sobre copyleft; diferentes wrappers .NET têm licenças diferentes. | ✓ Clear Contrato de licença de usuário final (EULA) e termos de licenciamento documentados publicamente. Licenças comerciais perpétuas. |
| Suporte comercial / SLA | ? Unknown O motor é de código aberto (arquivado); o SLA do fornecedor não está descrito nas fontes citadas. Suporte apenas da comunidade. | ✓ 24/5 SLA Portal de suporte + "suporte técnico 24 horas por dia, 5 dias por semana" com SLA garantido — e-mail, chat ao vivo, telefone. |
| Qualidade da documentação | ~ Partial A documentação da CLI para o mecanismo é extensa, mas a documentação do wrapper .NET varia muito em qualidade. | ✓ Extensive Documentação completa de "primeiros passos/como fazer/exemplos" com exemplos de código para copiar e colar e tutoriais em vídeo. |
Resumo: wkhtmltopdf é um conversor de HTML para PDF obsoleto, com um mecanismo Qt WebKit desatualizado. Ele não consegue extrair texto, assinar PDFs, gerar PDF/A, mesclar/dividir, adicionar marcas d'água ou rasterizar páginas — e requer gerenciamento manual de binários nativos para implantação.
O IronPDF é uma alternativa moderna e com manutenção ativa — experimente gratuitamente por 30 dias →
Escolher a biblioteca de PDFs certa para suas necessidades pode ser difícil quando existem inúmeras opções disponíveis. Ao comparar, os principais fatores incluem os recursos oferecidos em relação às suas necessidades, o nível de suporte e documentação, a curva de aprendizado e os custos de licenciamento. Fundamentalmente, as implicações de segurança também devem ser ponderadas.
Esta comparação cobre duas bibliotecas de geração de PDF com filosofias de design distintas: wkhtmltopdf e IronPDF. wkhtmltopdf construiu sua reputação como um conversor de HTML para PDF de linha de comando direto, e muitas equipes confiaram nele exatamente para esse propósito. No entanto, usar wkhtmltopdf em C# pode introduzir riscos de segurança. Como depende de um executável externo (WebKit), vulnerabilidades ou sanitização inadequada de comandos podem ser exploradas, comprometendo o servidor por meio de HTML ou argumentos maliciosos.
IronPDF é uma biblioteca .NET gerenciada que é executada dentro do contexto de segurança do seu aplicativo, reduzindo a superfície de ataque associada a processos externos. As seções abaixo comparam seus recursos, capacidades de renderização e arquitetura de segurança.
O que são IronPDF e wkhtmltopdf?
IronPDF é uma biblioteca C# para criação, manipulação e processamento de PDFs dentro do .NET Framework. Sua API abrange conversão de HTML para PDF, extração de texto e imagem, manipulação de formulários e opções de segurança de documentos, como criptografia e assinaturas digitais — tudo acessível por meio de um único pacote NuGet . Você pode instalar o IronPDF através do Console do Gerenciador de Pacotes NuGet e colocar a biblioteca em funcionamento em minutos. Para obter mais informações, visite o site oficial do IronPDF .
wkhtmltopdf é um wrapper de invocação P/Invoke do .NET Core para a biblioteca wkhtmltopdf, uma ferramenta popular para converter páginas HTML em PDF usando o motor de renderização Qt WebKit. Esta biblioteca de código aberto é derivada da DinkToPdf e foca na conversão de HTML para PDF com ênfase na simplicidade. É fácil de instalar; após baixar e executar o executável wkhtmltopdf, tudo o que você precisa fazer é garantir que ele seja adicionado à variável de ambiente do caminho do seu sistema. wkhtmltopdf é uma biblioteca leve, embora seu escopo seja focado na conversão em vez de uma manipulação mais ampla de PDF. Para avaliar a segurança e as diferenças de recursos do IronPDF em seu próprio ambiente, uma licença de avaliação gratuita de 30 dias está disponível.
Compatibilidade entre plataformas
IronPDF
O IronPDF oferece suporte a uma ampla gama de ambientes dentro da .NET Framework, proporcionando operação consistente em diferentes plataformas.
-
Versões do .NET :
- Totalmente escrito em C#, VB .NET e F#, com suporte para ambos.
- .NET Core (8, 7, 6, 5 e 3.1+).
-
.NET Standard (2.0+).
-
.NET Framework (4.6.2 ou superior).
-
Ambientes de aplicativos: O IronPDF funciona em diversos ambientes de aplicativos, como Windows, Linux, Mac, Docker , Azure e AWS.
-
IDEs: Funciona com IDEs como o Microsoft Visual Studio e o JetBrains Rider & ReSharper.
-
Sistemas Operacionais e Processadores: Suporta diversos sistemas operacionais e processadores, incluindo Windows, Mac, Linux, x64, x86 e ARM.
Para obter mais detalhes sobre a compatibilidade do IronPDF, visite a página de Compatibilidade do IronPDF .
wkhtmltopdf
-
Versões .NET: Como uma ferramenta de linha de comando, o wkhtmltopdf em si não tem suporte direto ao .NET, no entanto, os desenvolvedores .NET tipicamente interagem com ele usando um wrapper ou biblioteca, como DinkToPdf.
-
Ambientes de Aplicações: wkhtmltopdf funciona suavemente em vários ambientes de aplicações como Windows, Linux e macOS.
-
Linguagens de Programação: wkhtmltopdf é amplamente usado através de ferramentas de linha de comando ou integrado com linguagens de programação como C#, Java, Python, PHP, e Node.js.
Instalação
Instalando o IronPDF
Para usar o IronPDF , instale-o através do Gerenciador de Pacotes NuGet no Visual Studio:
Installing wkhtmltopdf
-
Baixe o instalador:
- Vá para a página de download do wkhtmltopdf.
- Na seção "Windows", baixe a versão estável mais recente do instalador (por exemplo, arquivo .exe).
-
Execute o instalador:
- Clique duas vezes no arquivo .exe baixado.
- Siga as instruções de instalação.
- Durante a instalação, você pode escolher adicionar o wkhtmltopdf ao seu PATH do sistema para torná-lo acessível a partir de qualquer prompt de comando.
-
Verifique a instalação:
- Abra o Prompt de Comando (cmd).
- Digite
wkhtmltopdf --versionpara verificar se está corretamente instalado. Você deverá ver o número da versão impresso na tela.
Como o IronPDF e o wkhtmltopdf se comparam em termos de recursos?
Ao comparar IronPDF e wkhtmltopdf, é essencial olhar para os recursos que ambas as bibliotecas fornecem para geração e manipulação de PDF.
Funcionalidades do IronPDF :
-
Conversão para PDF: O IronPDF converte HTML em PDF usando um mecanismo Chromium integrado com suporte completo para HTML5, CSS3 (incluindo Flexbox e Grid) e JavaScript. Ele também converte de outros formatos, como DOCX, imagens, RTF e muito mais.
-
Geração de PDF: Com o IronPDF, você pode gerar PDFs a partir de URLs, formatos de imagem, arquivos ASPX ou strings HTML.
-
Recursos de segurança: O IronPDF inclui criptografia, proteção por senha e configurações de permissão detalhadas (somente leitura, restrição de copiar/colar, controle de impressão) como operações de primeira classe na API.
-
Recursos de edição de PDF: O IronPDF pode processar documentos PDF existentes, editá-los e ler arquivos PDF. As funcionalidades de edição incluem adicionar cabeçalhos e rodapés, inserir texto e imagens nas páginas, aplicar marcas d'água personalizadas, trabalhar com formulários PDF e dividir ou mesclar arquivos PDF.
Para obter mais detalhes sobre os recursos do IronPDF , visite Recursos do IronPDF .
Recursos-chave do wkhtmltopdf em C#:
-
Conversão de HTML para PDF: Converta páginas HTML, arquivos, strings e conteúdo CSS para PDF, mantendo o layout original.
-
Opções de personalização: Suporta tamanho da página, margens, cabeçalhos, rodapés, etc.
-
Código aberto: Gratuito para uso sob a licença MIT.
-
Compatibilidade multiplataforma: Funciona em ambientes Windows, Linux e macOS.
Exemplos de código lado a lado
Conversão de HTML para PDF
IronPDF:
using IronPdf;
// Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from an HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
// Export to a file or Stream
pdf.SaveAs("output.pdf");
// Advanced Example with HTML Assets
// Load external html assets: Images, CSS and JavaScript.
// An optional BasePath 'C:\\site\\assets\\' is set as the file location to load assets from
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");Imports IronPdf
' Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = True
' Instantiate Renderer
Dim renderer = New ChromePdfRenderer()
' Create a PDF from an HTML string using C#
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>")
' Export to a file or Stream
pdf.SaveAs("output.pdf")
' Advanced Example with HTML Assets
' Load external html assets: Images, CSS and JavaScript.
' An optional BasePath 'C:\\site\\assets\\' is set as the file location to load assets from
Dim myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "C:\site\assets\")
myAdvancedPdf.SaveAs("html-with-assets.pdf")wkhtmltopdf (Using DinkToPdf):
using DinkToPdf;
var converter = new BasicConverter(new PdfTools());
var doc = new HtmlToPdfDocument()
{
Objects = { new ObjectSettings() { HtmlContent = "<h1>Hello World</h1>" } }
};
byte[] pdf = converter.Convert(doc);
System.IO.File.WriteAllBytes("HtmlToPdf.pdf", pdf);Imports DinkToPdf
Private converter = New BasicConverter(New PdfTools())
Private doc = New HtmlToPdfDocument() With {
.Objects = {
New ObjectSettings() With {.HtmlContent = "<h1>Hello World</h1>"}
}
}
Private pdf() As Byte = converter.Convert(doc)
System.IO.File.WriteAllBytes("HtmlToPdf.pdf", pdf)wkhtmltopdf (Usando linha de comando)
wkhtmltopdf myfile.html myfile.pdf
O IronPDF gera arquivos PDF com qualidade de imagem perfeita a partir de conteúdo HTML com apenas algumas linhas de código. Seu mecanismo Chromium integrado oferece suporte a CSS3, Flexbox e Grid modernos, de modo que o PDF renderizado corresponde de perto à fonte original. wkhtmltopdf é construído em torno da mesma tarefa central — conversão de HTML para PDF — e lida com ela de maneira concisa, quer seja invocado através de uma biblioteca wrapper ou da linha de comando. Onde as equipes tipicamente encontram pontos de atrito é com layouts CSS modernos: o motor Qt WebKit do wkhtmltopdf não suporta completamente Flexbox ou Grid, o que pode produzir resultados inesperados de renderização em designs contemporâneos.
Criptografando arquivos PDF
IronPDF:
using IronPdf;
using System;
// Open an Encrypted File, alternatively create a new PDF from Html
var pdf = PdfDocument.FromFile("encrypted.pdf", "password");
// Edit file metadata
pdf.MetaData.Author = "Satoshi Nakamoto";
pdf.MetaData.Keywords = "SEO, Friendly";
pdf.MetaData.ModifiedDate = DateTime.Now;
// Edit file security settings
// The following code makes a PDF read-only and will disallow copy & paste and printing
pdf.SecuritySettings.RemovePasswordsAndEncryption();
pdf.SecuritySettings.MakePdfDocumentReadOnly("secret-key");
pdf.SecuritySettings.AllowUserAnnotations = false;
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SecuritySettings.AllowUserFormData = false;
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights;
// Change or set the document encryption password
pdf.Password = "my-password";
pdf.SaveAs("secured.pdf");Imports IronPdf
Imports System
' Open an Encrypted File, alternatively create a new PDF from Html
Private pdf = PdfDocument.FromFile("encrypted.pdf", "password")
' Edit file metadata
pdf.MetaData.Author = "Satoshi Nakamoto"
pdf.MetaData.Keywords = "SEO, Friendly"
pdf.MetaData.ModifiedDate = DateTime.Now
' Edit file security settings
' The following code makes a PDF read-only and will disallow copy & paste and printing
pdf.SecuritySettings.RemovePasswordsAndEncryption()
pdf.SecuritySettings.MakePdfDocumentReadOnly("secret-key")
pdf.SecuritySettings.AllowUserAnnotations = False
pdf.SecuritySettings.AllowUserCopyPasteContent = False
pdf.SecuritySettings.AllowUserFormData = False
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights
' Change or set the document encryption password
pdf.Password = "my-password"
pdf.SaveAs("secured.pdf")wkhtmltopdf:
Criptografia está fora do escopo atual do wkhtmltopdf; Para isso, é necessário utilizar uma biblioteca de terceiros separada.
O IronPDF fornece uma API direta para criptografar arquivos PDF , incluindo proteção por senha, imposição de modo somente leitura e controle granular de permissões. wkhtmltopdf foca no passo de conversão, então as equipes que precisam de criptografia normalmente integram uma segunda biblioteca para lidar com a segurança do documento após o PDF ser gerado.
Redigir conteúdo de PDF
IronPDF:
using IronPdf;
PdfDocument pdf = PdfDocument.FromFile("novel.pdf");
// Redact 'are' phrase from all pages
pdf.RedactTextOnAllPages("are");
pdf.SaveAs("redacted.pdf");Imports IronPdf
Private pdf As PdfDocument = PdfDocument.FromFile("novel.pdf")
' Redact 'are' phrase from all pages
pdf.RedactTextOnAllPages("are")
pdf.SaveAs("redacted.pdf")wkhtmltopdf:
Redação não faz parte do conjunto de recursos do wkhtmltopdf.
A API de redação do IronPDF redige o conteúdo especificado em uma única chamada de método — três linhas de código no exemplo acima. Como o wkhtmltopdf é projetado como uma ferramenta de conversão em vez de um editor de PDF, a redação está fora do seu escopo arquitetônico. As equipes que precisarem dessa funcionalidade devem adicionar uma biblioteca separada para manipulação de PDFs.
Assinatura digital de arquivos PDF
IronPDF:
using IronPdf;
using IronPdf.Signing;
using System.Security.Cryptography.X509Certificates;
// Instantiate Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>foo</h1>");
// Create X509Certificate2 object with X509KeyStorageFlags set to Exportable
X509Certificate2 cert = new X509Certificate2("IronSoftware.pfx", "123456", X509KeyStorageFlags.Exportable);
// Create PdfSignature object
var sig = new PdfSignature(cert);
// Sign PDF document
pdf.Sign(sig);
pdf.SaveAs("signed.pdf");Imports IronPdf
Imports IronPdf.Signing
Imports System.Security.Cryptography.X509Certificates
' Instantiate Renderer
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>foo</h1>")
' Create X509Certificate2 object with X509KeyStorageFlags set to Exportable
Private cert As New X509Certificate2("IronSoftware.pfx", "123456", X509KeyStorageFlags.Exportable)
' Create PdfSignature object
Private sig = New PdfSignature(cert)
' Sign PDF document
pdf.Sign(sig)
pdf.SaveAs("signed.pdf")wkhtmltopdf C#:
wkhtmltopdf não é projetado para assinaturas de PDF; É necessária uma biblioteca separada para essa funcionalidade.
A API de assinatura digital do IronPDF aceita certificados X509/PFX e assina um documento em duas chamadas de método, o que simplifica fluxos de trabalho que exigem assinatura programática em grande escala. wkhtmltopdf não é projetado para lidar com assinaturas de PDF por conta própria; No entanto, se você estiver usando-a em conjunto com outra biblioteca, essa biblioteca poderá fornecer os recursos de assinatura de que você precisa.
Aplicando marcas d'água personalizadas ao seu PDF
IronPDF:
using IronPdf;
// Stamps a Watermark onto a new or existing PDF
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf");
pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE</h2>", 30, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center);
pdf.SaveAs(@"C:\Path\To\Watermarked.pdf");Imports IronPdf
' Stamps a Watermark onto a new or existing PDF
Private renderer = New ChromePdfRenderer()
Private pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf")
pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE</h2>", 30, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center)
pdf.SaveAs("C:\Path\To\Watermarked.pdf")wkhtmltopdf:
A marca d'água não faz parte do conjunto de recursos nativos do wkhtmltopdf. Em vez disso, você precisaria implementar o estilo CSS no HTML de origem antes da conversão ou usar uma biblioteca PDF separada que possa aplicar marcas d'água a documentos existentes.
A ferramenta de marca d'água do IronPDF utiliza uma abordagem baseada em HTML/CSS, dando aos desenvolvedores controle sobre opacidade, rotação e posição sem sair da API .NET . wkhtmltopdf pode aproximar marcas d'água através de estilização CSS aplicada ao HTML de origem antes da conversão — uma abordagem que funciona para casos mais simples, mas atinge seu limite de design quando você precisa marcar com água PDFs existentes que não foram gerados a partir do seu próprio HTML.
Imagens e texto para carimbo
IronPDF:
using IronPdf;
using IronPdf.Editing;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>");
// Create text stamper
TextStamper textStamper = new TextStamper()
{
Text = "Text Stamper!",
FontFamily = "Bungee Spice",
UseGoogleFont = true,
FontSize = 30,
IsBold = true,
IsItalic = true,
VerticalAlignment = VerticalAlignment.Top,
};
// Stamp the text stamper
pdf.ApplyStamp(textStamper);
pdf.SaveAs("stampText.pdf");Imports IronPdf
Imports IronPdf.Editing
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>")
' Create text stamper
Private textStamper As New TextStamper() With {
.Text = "Text Stamper!",
.FontFamily = "Bungee Spice",
.UseGoogleFont = True,
.FontSize = 30,
.IsBold = True,
.IsItalic = True,
.VerticalAlignment = VerticalAlignment.Top
}
' Stamp the text stamper
pdf.ApplyStamp(textStamper)
pdf.SaveAs("stampText.pdf")using IronPdf;
using IronPdf.Editing;
using System;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>");
// Create image stamper
ImageStamper imageStamper = new ImageStamper(new Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg"))
{
VerticalAlignment = VerticalAlignment.Top,
};
// Stamp the image stamper
pdf.ApplyStamp(imageStamper, 0);
pdf.SaveAs("stampImage.pdf");Imports IronPdf
Imports IronPdf.Editing
Imports System
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>")
' Create image stamper
Private imageStamper As New ImageStamper(New Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg")) With {.VerticalAlignment = VerticalAlignment.Top}
' Stamp the image stamper
pdf.ApplyStamp(imageStamper, 0)
pdf.SaveAs("stampImage.pdf")wkhtmltopdf C#:
wkhtmltopdf não inclui ferramentas de estampa embutidas. A solução alternativa mais comum é incorporar os selos desejados no HTML e CSS de origem antes da conversão.
IronPDF oferece classes dedicadas TextStamper e ImageStamper para carimbar texto e imagens em páginas PDF — incluindo suporte a fontes do Google e controles precisos de alinhamento. wkhtmltopdf não inclui ferramentas de estampa embutidas, mas você pode alcançar um resultado semelhante incorporando o conteúdo estampado diretamente em seu HTML de origem e CSS antes da conversão.
Conversão de DOCX para PDF
IronPDF:
using IronPdf;
// Instantiate Renderer
DocxToPdfRenderer renderer = new DocxToPdfRenderer();
// Render from DOCX file
PdfDocument pdf = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx");
// Save the PDF
pdf.SaveAs("pdfFromDocx.pdf");Imports IronPdf
' Instantiate Renderer
Dim renderer As New DocxToPdfRenderer()
' Render from DOCX file
Dim pdf As PdfDocument = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx")
' Save the PDF
pdf.SaveAs("pdfFromDocx.pdf")wkhtmltopdf C#:
wkhtmltopdf foca exclusivamente em entrada HTML, então a conversão DOCX requer bibliotecas adicionais.
IronPDF lida com conversão de DOCX para PDF através de sua classe DocxToPdfRenderer — três linhas de código no exemplo acima. Já que o pipeline de rendering do wkhtmltopdf é baseado na entrada HTML, DOCX não é um formato de origem suportado. Equipes que precisam dessa capacidade integrariam uma biblioteca de conversão separada juntamente com o wkhtmltopdf.
Resumo da comparação dos exemplos de código
Para ver toda a gama de recursos do IronPDF em ação, explore os guias práticos do IronPDF , que explicam cada recurso com exemplos de código para copiar e colar.
Preços e Licenciamento: IronPDF vs. wkhtmltopdf
IronPDF
O IronPDF possui diferentes níveis e recursos adicionais para a compra de uma licença. Os desenvolvedores também podem adquirir o Iron Suite , que dá acesso a todos os produtos da Iron Software pelo preço de dois. Se você ainda não está pronto para comprar uma licença, o IronPDF oferece um período de teste gratuito para que você possa explorar todos os recursos disponíveis antes de se comprometer com a aquisição de uma licença.
-
Licenças perpétuas: Oferecemos uma variedade de licenças perpétuas, dependendo do tamanho da sua equipe, das necessidades do seu projeto e do número de locais. Cada tipo de licença inclui suporte por e-mail.
-
Licença Lite: Esta licença é válida para um desenvolvedor, um local e um projeto.
-
Licença Plus: Com suporte para três desenvolvedores, três locais e três projetos, esta é a próxima etapa em relação à licença Lite. A licença Plus oferece suporte por chat e por telefone, além do suporte básico por e-mail.
-
Licença Profissional: Esta licença é adequada para equipes maiores, suportando dez desenvolvedores, dez locais e dez projetos. Oferece os mesmos canais de suporte ao cliente que os planos anteriores, mas também oferece suporte para compartilhamento de tela.
-
Redistribuição livre de royalties: O licenciamento da IronPDF também oferece cobertura para redistribuição livre de royalties por um custo adicional.
-
Suporte ininterrupto ao produto: A IronPDF oferece acesso a atualizações contínuas do produto, melhorias nos recursos de segurança e suporte da sua equipe de engenharia.
-
Iron Suite: Você terá acesso a todos os produtos da Iron Software , incluindo IronPDF , IronOCR , IronWord , IronXL , IronBarcode , IronQR , IronZIP , IronPrint e IronWebScraper .
wkhtmltopdf
wkhtmltopdf é uma ferramenta de código aberto de uso gratuito, licenciada sob a Licença LGPL que permite usar o wkhtmltopdf em aplicações proprietárias, desde que você não modifique a própria biblioteca.
Além do custo da licença, o custo total do projeto inclui as horas de desenvolvimento gastas gerenciando dependências binárias nativas, montando bibliotecas separadas para criptografia , assinatura e redação, e contornando o suporte limitado a CSS3 do mecanismo Qt WebKit. Para equipes que avaliam custos ao longo do ciclo de vida de um projeto de vários anos, esses custos de integração e manutenção frequentemente superam a diferença entre o licenciamento de código aberto e o comercial.
Documentation and Support: IronPDF vs. wkhtmltopdf
IronPDF
O IronPDF oferece ampla documentação e suporte:
-
Documentação completa: Documentação extensa e fácil de usar, abrangendo todos os recursos.
-
Suporte 24 horas por dia, 5 dias por semana: Suporte técnico ativo disponível.
-
Tutoriais em vídeo: Guias em vídeo passo a passo estão disponíveis no YouTube.
-
Fórum da Comunidade: Comunidade engajada para apoio adicional.
-
Atualizações regulares: Atualizações mensais do produto para garantir os recursos mais recentes e os patches de segurança.
-
Referência da API em PDF: Oferece referências da API para que você possa aproveitar ao máximo o que nossas ferramentas têm a oferecer.
Para obter mais informações, consulte a extensa documentação do IronPDF e visite o canal da Iron Software no YouTube .
wkhtmltopdf
-
GitHub: O repositório GitHub do wkhtmltopdf é um lugar onde os usuários podem relatar problemas que encontram ao usar a ferramenta.
-
Stack Overflow: Aqui, você pode encontrar inúmeras perguntas e respostas relacionadas ao wkhtmltopdf e obter conselhos da comunidade.
-
Documentação oficial: A documentação oficial fornece detalhes sobre instalação, uso, opções de linha de comando e configurações comuns.
Qual biblioteca você deve escolher?
Tanto o IronPDF quanto o wkhtmltopdf abordam a geração de PDF em C#, mas eles atendem a diferentes segmentos do espectro de complexidade. O IronPDF abrange todo o ciclo de vida do PDF — conversão, criptografia, redação, assinatura digital, conversão de DOCX para PDF e muito mais — por meio de um único pacote NuGet com um mecanismo de renderização Chromium com manutenção ativa. Para equipes cujos projetos envolvem múltiplas operações com PDFs, essa abordagem consolidada reduz o número de dependências a serem gerenciadas.
wkhtmltopdf ganhou sua popularidade através de uma abordagem focada e direta para conversão de HTML para PDF, e seu custo zero de licença o torna um ponto de entrada acessível. Onde as equipes tipicamente atingem um ponto de inflexão é quando requisitos se expandem além da conversão para edição, segurança ou conformidade — capacidades que estão fora do escopo arquitetônico do wkhtmltopdf. Considerando o status arquivado do projeto e o mecanismo WebKit já defasado, equipes com necessidades crescentes frequentemente consideram este o momento ideal para avaliar uma alternativa que recebe manutenção ativa . Em última análise, a escolha certa depende dos requisitos atuais e futuros do seu projeto em relação ao formato PDF.
Você pode experimentar o teste gratuito de 30 dias para conferir os recursos disponíveis.

Kye Stuart une sua paixão por programação e sua habilidade de escrita na Iron Software. Formado em implantação de software pela Yoobee College, ele agora transforma conceitos tecnológicos complexos em conteúdo educacional claro. Kye valoriza o aprendizado contínuo e abraça novos desafios tecnológicos.
Artigos relacionados

