Ir para o conteúdo do rodapé
COMPARAçãO DE PRODUTOS
Comparação da conversão de HTML para PDF no IronPDF e no QuestPDF

Uma comparação entre QuestPDF e IronPDF

Full Comparison

Looking for a detailed feature-by-feature breakdown? See how IronPDF stacks up against QuestPDF on pricing, HTML support, and licensing.

View Full Comparison

Esta comparação abrange o IronPDF e oQuestPDF— duas bibliotecas PDF para .NET com modelos de geração fundamentalmente diferentes — em termos de recursos, suporte multiplataforma e licenciamento.

O que sãoIronPDFe QuestPDF?

IronPDF é uma biblioteca .NET que abrange conversão de HTML para PDF , segurança de documentos, formulários interativos, assinaturas digitais, marcas d'água e manipulação de conteúdo em um único pacote NuGet . Seu mecanismo Chromium integrado lida com HTML5, CSS3 e JavaScript modernos sem exigir dependências externas.

QuestPDF é uma biblioteca .NET de código aberto construída em torno de uma API fluente, totalmente em código, para geração de PDFs. É uma excelente opção para equipes que preferem criar layouts de documentos programaticamente, sem modelos HTML ou formatos proprietários.

Compatibilidade entre plataformas

IronPDF

OIronPDFé compatível com uma ampla variedade de plataformas, garantindo que você possa trabalhar no ambiente de sua preferência. Segue abaixo um resumo da sua compatibilidade:

  • Versões do .NET :
    • (C#, VB .NET, F#)
    • .NET Core (8, 7, 6, 5 e 3.1+)
  • .NET Standard (2.0+)

    • .NET Framework (4.6.2 ou superior)
  • Ambientes de aplicativos: OIronPDFfunciona em diversos ambientes, incluindo Windows, Linux, Mac, Docker , Azure e AWS.

  • IDEs: Funciona com IDEs como Microsoft Visual Studio e JetBrains Rider & ReSharper

  • Sistemas Operacionais e Processadores: Suporta diversos sistemas operacionais e processadores, incluindo Windows, Mac, Linux, x64, x86 e ARM.

QuestPDF

OQuestPDFoferece forte compatibilidade multiplataforma, o que significa que, independentemente da plataforma que você esteja usando, provavelmente conseguirá implementar oQuestPDFem seu ambiente de trabalho.

  • Versões do .NET :
    • .NET Core (3.1+)
  • .NET Standard (2.0+)

    • .NET Framework (4.6.1+)
  • Sistemas: Funciona em diversos sistemas operacionais e ambientes de nuvem, como Windows, Linux, macOS, Azure e AWS.

  • IDEs: Você pode usar oQuestPDFcom qualquer IDE que utilize em seu ambiente de trabalho, seja Visual Studio, VS Code, JetBrains Rider ou outra.

Comparação de recursos: funcionalidade de PDF noIronPDFvs. QuestPDF

A tabela a seguir resume a comparação entre oIronPDFe oQuestPDFem relação às principais funcionalidades discutidas neste artigo:

Recurso IronPDF QuestPDF
Conversão de HTML para PDF Suportado (motor Chromium) Não incluído
Geração programática de PDFs Apoiado Compatível (mecanismo de layout somente com código)
Criptografia e segurança de PDF Apoiado Não incluído
Redação de conteúdo Apoiado Não incluído
Assinaturas digitais Apoiado Não incluído
Watermarking Suportado (HTML/CSS) Não incluído
Carimbo de texto e imagem Apoiado Compatível (baseado em tela)
Conversão de DOCX para PDF Apoiado Não incluído

A versão de avaliação gratuita de 30 dias doIronPDFinclui acesso a todos os recursos desta comparação.IronPDFeQuestPDFoferecem conjuntos distintos de recursos adaptados a diferentes necessidades do usuário; portanto, a escolha da biblioteca mais adequada depende do que você pretende fazer com os PDFs com os quais está trabalhando. A seguir, uma comparação de suas principais funcionalidades:

Funcionalidades do IronPDF

  • Conversão para PDF: OIronPDFconsegue converter HTML em PDF. Com suporte completo aos padrões web modernos, você pode ter certeza de que oIronPDFsempre retornará PDFs perfeitos em pixels a partir do seu conteúdo HTML. Você deseja converter outros formatos de arquivo para PDF? OIronPDFsuporta a conversão de diversos formatos de arquivo, incluindo DOCX para PDF, RTF para PDF, imagem para PDF e muito mais.

  • Geração de PDF: Com o IronPDF, você pode gerar documentos PDF a partir de URLs, arquivos ASPX ou strings HTML.

  • Marca d'água: Aplique marcas d'água de texto e imagem a arquivos PDF.

  • Recursos de segurança: Com o IronPDF, você sempre pode ter certeza de que seus arquivos PDF confidenciais estão seguros graças aos seus recursos de segurança. Use oIronPDFpara criptografar seus arquivos PDF, definir senhas e permissões para seus arquivos PDF.

  • Recursos de edição de PDF: Com o IronPDF, você pode editar arquivos PDF com facilidade. OIronPDFoferece recursos de edição como adicionar cabeçalhos e rodapés, inserir texto e imagens nas páginas do PDF, adicionar marcas d'água personalizadas ao PDF, trabalhar com formulários em PDF e dividir ou mesclar arquivos PDF.

Para obter uma lista de recursos mais detalhada, visite a página de recursos do IronPDF .

Recursos do QuestPDF

  • Design de documentos usando C#: Utilize código C# para projetar e criar arquivos PDF usando uma abordagem exclusivamente em código.

  • Mecanismo de Layout Abrangente: O mecanismo de layout abrangente doQuestPDFgarante que você possa gerar documentos PDF com facilidade, oferecendo controle total sobre o processo de geração e a estrutura do documento, suporte completo à paginação e otimizando a estrutura visual do documento.

  • Elementos Estruturais Previsíveis: Use oQuestPDFpara adicionar uma variedade de elementos estruturais ao seu arquivo PDF, incluindo texto, imagens, bordas e tabelas.

  • Capacidade de recarregamento a quente: você poderá visualizar documentos em tempo real sem recompilar o código.

  • Manutenção: Gerencie o controle de versões de forma eficiente para corrigir erros ou recuperar versões antigas. A manutenção eficiente oferecida peloQuestPDFgarante que você nunca perca tempo com implementações HTML complexas.

Como oQuestPDFe oIronPDFlidam com tarefas comuns em PDF?

Antes de escolher qual biblioteca de PDF é a ideal para você, vamos analisar alguns casos de uso comuns para diferentes finalidades que você pode ter para uma biblioteca de PDF, comparando como oIronPDFe oQuestPDFlidam com essas tarefas.

Conversão de HTML para PDF

Conversão de HTML para PDF com 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>");
pdf.SaveAs("output.pdf");

// Advanced Example with HTML Assets
// Load external html assets: images, CSS and JavaScript.
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
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>");
pdf.SaveAs("output.pdf");

// Advanced Example with HTML Assets
// Load external html assets: images, CSS and JavaScript.
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>")
pdf.SaveAs("output.pdf")

' Advanced Example with HTML Assets
' Load external html assets: images, CSS and JavaScript.
Dim myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "C:\site\assets\")
myAdvancedPdf.SaveAs("html-with-assets.pdf")
$vbLabelText   $csharpLabel

QuestPDF:

OQuestPDFnão foi projetado para conversão de HTML para PDF — sua arquitetura é construída em torno da composição programática de documentos, em vez da transformação de formato de arquivo, incluindo a renderização em JavaScript . As equipes que precisam converter conteúdo HTML existente normalmente utilizam oQuestPDFem conjunto com uma biblioteca de renderização separada.

Para projetos em que a conversão de HTML para PDF é um requisito fundamental, a ferramenta HTML-to-PDF do IronPDF realiza essa operação de forma eficiente, utilizando seu mecanismo Chromium integrado.

Criptografando arquivos PDF

Criptografia de PDF com 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;

//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");
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;

//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
Dim pdf = PdfDocument.FromFile("encrypted.pdf", "password")

'Edit file metadata
pdf.MetaData.Author = "Satoshi Nakamoto"
pdf.MetaData.Keywords = "SEO, Friendly"
pdf.MetaData.ModifiedDate = DateTime.Now

'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")
$vbLabelText   $csharpLabel

QuestPDF:

A criptografia de PDFs está fora do escopo atual do QuestPDF, embora ele suporte a modificação de metadados de documentos. Equipes que precisam de criptografia normalmente integram uma biblioteca adicional juntamente com o QuestPDF.

Se a criptografia de documentos ou os ajustes de configurações de segurança fazem parte da rotina do seu fluxo de trabalho, oIronPDFinclui esses recursos de segurança de PDF nativamente — sem necessidade de pacotes adicionais.

Redigir conteúdo de PDF

Redigindo conteúdo com o IronPDF :

using IronPdf;

PdfDocument pdf = PdfDocument.FromFile("novel.pdf");

// Redact 'are' phrase from all pages
pdf.RedactTextOnAllPages("are");

pdf.SaveAs("redacted.pdf");
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")
$vbLabelText   $csharpLabel

QuestPDF:

O mecanismo de layout doQuestPDFconcentra-se na geração de documentos, portanto, a redação de conteúdo fica fora de sua área de atuação. As equipes que precisam de redação geralmente utilizam uma biblioteca adicional, como o iTextSharp, juntamente com o QuestPDF.

OIronPDFlida com a redação em uma única chamada de método, o que elimina a necessidade de coordenar várias bibliotecas para essa tarefa.

Assinar PDFs

Assinatura digital com IronPDF :

using IronPdf;
using IronPdf.Signing;
using System.Security.Cryptography.X509Certificates;

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");
using IronPdf;
using IronPdf.Signing;
using System.Security.Cryptography.X509Certificates;

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

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")
$vbLabelText   $csharpLabel

QuestPDF:

A assinatura digital não faz parte do conjunto de funcionalidades do QuestPDF. A solução alternativa típica é gerar o PDF com oQuestPDFe, em seguida, passá-lo para uma biblioteca separada para assinatura com certificados PFX — uma etapa extra que adiciona uma dependência ao seu fluxo de trabalho.

Para equipes que precisam de assinatura como parte do fluxo de trabalho de geração, o recurso de assinatura do IronPDF oferece assinaturas digitais baseadas em certificados como uma operação integrada.

Aplique marcas d'água ao seu PDF

Aplicação de marca d'água com 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");
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")
$vbLabelText   $csharpLabel

QuestPDF:

A inclusão de marcas d'água está fora do escopo específico da QuestPDF. Como oQuestPDFse concentra na composição de documentos do zero, a sobreposição de conteúdo em PDFs existentes não faz parte de seu design.

A API de marca d'água doIronPDFaceita strings HTML/CSS, oferecendo controle total sobre o posicionamento, a opacidade e a aparência da marca d'água sem a necessidade de bibliotecas adicionais.

Texto HTML da imagem de carimbo

Carimbo de texto e imagem no 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");

// 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");
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");

// 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

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")

' Create image stamper
Dim 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")
$vbLabelText   $csharpLabel

QuestPDF:

using QuestPDF.Fluent;
using QuestPDF.Infrastructure;
using QuestPDF.Helpers;

Document.Create(container =>
{
    container.Page(page =>
    {
        page.Size(PageSizes.A4);
        page.Margin(2, Unit.Centimetre);
        page.PageColor(Colors.White);
        page.DefaultTextStyle(x => x.FontSize(12));

        // Adding Header and Footer for context
        page.Header()
            .Text("Header Text")
            .FontSize(20)
            .Bold()
            .AlignCenter();

        page.Footer()
            .Text("Footer Text")
            .FontSize(12)
            .AlignCenter();

        // Adding main content and stamps
        page.Content()
            .Canvas(canvas =>
            {
                // Main content
                canvas.DrawText("This is the main content of the page.", x =>
                {
                    x.Translate(50, 50);
                    x.FontSize(12);
                });

                // Stamped text
                canvas.DrawText("Stamped Text", x =>
                {
                    x.Translate(200, 200); // Position the text
                    x.FontSize(30);
                    x.Bold();
                    x.FontColor(Colors.Red);
                });

                // Stamped image
                canvas.DrawImage("path/to/image.png", x =>
                {
                    x.Translate(200, 300); // Position the image
                    x.Width(100); // Set the width of the image
                });
            });
    });
}).GeneratePdf("output.pdf");
using QuestPDF.Fluent;
using QuestPDF.Infrastructure;
using QuestPDF.Helpers;

Document.Create(container =>
{
    container.Page(page =>
    {
        page.Size(PageSizes.A4);
        page.Margin(2, Unit.Centimetre);
        page.PageColor(Colors.White);
        page.DefaultTextStyle(x => x.FontSize(12));

        // Adding Header and Footer for context
        page.Header()
            .Text("Header Text")
            .FontSize(20)
            .Bold()
            .AlignCenter();

        page.Footer()
            .Text("Footer Text")
            .FontSize(12)
            .AlignCenter();

        // Adding main content and stamps
        page.Content()
            .Canvas(canvas =>
            {
                // Main content
                canvas.DrawText("This is the main content of the page.", x =>
                {
                    x.Translate(50, 50);
                    x.FontSize(12);
                });

                // Stamped text
                canvas.DrawText("Stamped Text", x =>
                {
                    x.Translate(200, 200); // Position the text
                    x.FontSize(30);
                    x.Bold();
                    x.FontColor(Colors.Red);
                });

                // Stamped image
                canvas.DrawImage("path/to/image.png", x =>
                {
                    x.Translate(200, 300); // Position the image
                    x.Width(100); // Set the width of the image
                });
            });
    });
}).GeneratePdf("output.pdf");
Imports QuestPDF.Fluent
Imports QuestPDF.Infrastructure
Imports QuestPDF.Helpers

Document.Create(Sub(container)
	container.Page(Sub(page)
		page.Size(PageSizes.A4)
		page.Margin(2, Unit.Centimetre)
		page.PageColor(Colors.White)
		page.DefaultTextStyle(Function(x) x.FontSize(12))

		' Adding Header and Footer for context
		page.Header().Text("Header Text").FontSize(20).Bold().AlignCenter()

		page.Footer().Text("Footer Text").FontSize(12).AlignCenter()

		' Adding main content and stamps
		page.Content().Canvas(Sub(canvas)
				' Main content
				canvas.DrawText("This is the main content of the page.", Sub(x)
					x.Translate(50, 50)
					x.FontSize(12)
				End Sub)

				' Stamped text
				canvas.DrawText("Stamped Text", Sub(x)
					x.Translate(200, 200) ' Position the text
					x.FontSize(30)
					x.Bold()
					x.FontColor(Colors.Red)
				End Sub)

				' Stamped image
				canvas.DrawImage("path/to/image.png", Sub(x)
					x.Translate(200, 300) ' Position the image
					x.Width(100) ' Set the width of the image
				End Sub)
		End Sub)
	End Sub)
End Sub).GeneratePdf("output.pdf")
$vbLabelText   $csharpLabel

Tanto oIronPDFquanto oQuestPDFsuportam a inserção de texto e imagens. A abordagem doIronPDFrequer aproximadamente 15 linhas para o mesmo resultado que a API baseada em canvas doQuestPDFleva cerca de 45 linhas, já que oQuestPDFexige o posicionamento explícito das coordenadas de cada elemento. Para mais informações sobre os recursos de edição e manipulação de documentos PDF do IronPDF, consulte o tutorial completo.

DOCX para PDF

Conversão de DOCX para PDF com 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");
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
Private renderer As New DocxToPdfRenderer()

' Render from DOCX file
Private pdf As PdfDocument = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx")

' Save the PDF
pdf.SaveAs("pdfFromDocx.pdf")
$vbLabelText   $csharpLabel

QuestPDF:

OQuestPDFnão inclui um renderizador de DOCX para PDF. Para realizar essa conversão com o QuestPDF, é necessário introduzir uma dependência adicional, como o Aspose.Words ou o Syncfusion, para lidar com a etapa de transformação.

OIronPDFinclui a conversão de DOCX para PDF como um renderizador integrado, mantendo a operação em um único pacote.

Resumo da comparação dos exemplos de código

! Imagem de comparação

Preços e licenciamento:IronPDFvs.QuestPDFLibrary

Preços e licenciamento do IronPDF

Veja as opções de licenciamento do IronPDF para diferentes níveis e recursos adicionais. Os desenvolvedores também podem adquirir o Iron Suite Access , que inclui todos os produtos da Iron Software pelo preço de dois. OIronPDFtambém oferece um período de teste gratuito de 30 dias.

  • 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 custa $799 e suporta um desenvolvedor, um local e um projeto.

  • Licença Plus: Com suporte para três desenvolvedores, três locais e três projetos, este próximo nível da licença Lite custa $1,199. A licença Plus oferece suporte por chat e por telefone, além do suporte básico por e-mail.

  • Licença Profissional: Adequada para equipes maiores, suportando dez desenvolvedores, dez locais e dez projetos para $2,399. 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 daIronPDFoferece cobertura de redistribuição livre de royalties por um adicional $2,399.

  • Suporte ininterrupto ao produto: Oferece atualizações contínuas do produto, melhorias nos recursos de segurança e suporte da equipe de engenharia por $1,199/ano ou por uma compra única de $2,399 para cobertura de 5 anos.

  • Iron Suite: $1,498 para acesso a todos os produtos da Iron Software, incluindo IronPDF, IronOCR, IronWord, IronXL, IronBarcode, IronQR, IronZIP, IronPrint e IronWebScraper.

! Imagem de preços do IronPDF

QuestPDF

  • Comunidade: OQuestPDFé de código aberto e está disponível sob a licença MIT, sendo que sua licença comunitária é gratuita. Ao utilizar esta licença, você poderá modificar e distribuir livremente seus projetos usando este software, conforme seu modelo de licenciamento.

  • Profissional: Por US$ 699, a licença profissional cobre equipes de até 10 desenvolvedores que trabalham em projetos usando o QuestPDF.

  • Enterprise: Este nível de licenciamento final é $2,399 e cobre um número ilimitado de desenvolvedores.

Além do custo da licença, o custo total do projeto inclui as horas de desenvolvimento gastas na criação de bibliotecas separadas para criptografia, assinaturas digitais, redação e conversão de formatos — funcionalidades que o escopo específico doQuestPDFnão abrange nativamente. 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.

Documentação e suporte:IronPDFvs. QuestPDF

IronPDF

AIronPDFoferece ampla documentação e suporte comercial:

  • 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.

Para obter mais informações, consulte a documentação do IronPDF e visite o canal da IronSoftware no YouTube .

QuestPDF

  • Documentação: AQuestPDFoferece ampla documentação em seu site, além de guias rápidos para começar e exemplos de código.

  • Comunidade: Como um projeto de código aberto, oQuestPDFdepende muito das contribuições da comunidade para promoção e detecção de erros, incentivando uma comunidade de desenvolvedores ativa e colaborativa.

  • Vídeos do YouTube: AQuestPDFtem uma presença crescente no YouTube, publicando vídeos para ajudar os desenvolvedores a aprenderem como usar diferentes recursos da biblioteca.

OQuestPDFse beneficia de uma comunidade ativa de código aberto que contribui para a documentação e a resolução de problemas. Equipes que necessitam de tempos de resposta garantidos ou suporte técnico dedicado podem achar o modelo de suporte comercial daIronPDFmais adequado para ambientes de produção.

Qual biblioteca você deve escolher?

Tanto oIronPDFquanto oQuestPDFoferecem ferramentas valiosas para geração de PDFs em .NET, atendendo a diferentes necessidades de desenvolvimento. A escolha da melhor opção depende das suas necessidades e do seu orçamento. O QuestPDF, por ser de código aberto e fácil de usar, é adequado para desenvolvedores que buscam uma solução leve e centrada em código. Se você não precisa de todos os recursos extras que oIronPDFoferece e deseja apenas uma biblioteca de PDFs gratuita e simples, oQuestPDFpode ser a opção ideal para você.

OIronPDFé distribuído como um único pacote NuGet que inclui conversão de HTML para PDF, criptografia, redação, assinaturas digitais, marcas d'água e conversão de DOCX para PDF — funcionalidades que exigiriam várias bibliotecas adicionais ao trabalhar com o QuestPDF.

Para equipes cujas necessidades vão além da geração de documentos, abrangendo segurança, conversão de formatos e pós-processamento, oIronPDFconsolida essas operações em uma única biblioteca com suporte comercial dedicado e documentação completa.

Você pode experimentar o teste gratuito de 30 dias para conferir os recursos disponíveis.

[{i:(QuestPDF é uma marca registrada de seu respectivo proprietário. Este site não é afiliado, endossado ou patrocinado pela QuestPDF. Todos os nomes de produtos, logotipos e marcas são propriedade de seus respectivos proprietários. As comparações são apenas para fins informativos e refletem informações disponíveis publicamente no momento da redação.

Perguntas frequentes

Como posso converter HTML para PDF em C#?

Você pode usar o método RenderHtmlAsPdf do IronPDF para converter strings HTML em PDFs. Você também pode converter arquivos HTML em PDFs usando o RenderHtmlFileAsPdf .

Quais são os benefícios de usar o IronPDF para aplicações empresariais?

O IronPDF é ideal para aplicações empresariais devido ao seu extenso conjunto de recursos, que inclui conversão de HTML para PDF, segurança de documentos, formulários interativos e funcionalidades de edição. Ele suporta múltiplas plataformas e oferece recursos de segurança robustos.

Posso usar o IronPDF para assinatura digital de PDFs?

Sim, o IronPDF suporta assinatura digital de PDFs. Ele permite que desenvolvedores assinem documentos programaticamente usando certificados X.509.

Quais plataformas o IronPDF suporta?

O IronPDF é compatível com diversas plataformas, incluindo .NET Core, .NET Standard e .NET Framework. Ele funciona em ambientes como Windows, Linux, Mac, Docker, Azure e AWS.

Existe alguma maneira de criptografar arquivos PDF usando o IronPDF?

Sim, o IronPDF oferece recursos de criptografia que permitem definir senhas e gerenciar permissões para garantir a segurança dos documentos.

Qual é a principal diferença entre IronPDF e QuestPDF?

Uma diferença fundamental é que o IronPDF oferece amplas funcionalidades, incluindo conversão de HTML para PDF e segurança de documentos, tornando-o adequado para aplicações complexas, enquanto o QuestPDF é uma biblioteca de código aberto mais simples, focada na facilidade de uso, sem suporte nativo para conversão de HTML.

O IronPDF oferece algum recurso de suporte?

A IronPDF oferece recursos de suporte abrangentes, incluindo documentação detalhada, suporte técnico 24 horas por dia, 5 dias por semana, tutoriais em vídeo, um fórum da comunidade e atualizações regulares do produto para auxiliar os desenvolvedores.

Posso usar o IronPDF para adicionar marcas d'água a PDFs?

Sim, o IronPDF permite adicionar marcas d'água a documentos PDF. Isso pode ser feito programaticamente para melhorar a apresentação e a segurança do documento.

Quais são as opções de licenciamento disponíveis para o IronPDF?

A IronPDF oferece diversas opções de licenciamento, incluindo Lite, Plus, Professional e Redistribuição Livre de Royalties, atendendo a diferentes necessidades e orçamentos de negócios.

O QuestPDF é uma boa alternativa para geração de PDFs com custo-benefício?

Sim, o QuestPDF é uma biblioteca gratuita e de código aberto, ideal para desenvolvedores que buscam uma solução econômica para projetos de geração de PDFs leves.

Curtis Chau
Redator Técnico

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais ...

Leia mais

A PHP Error was encountered

Severity: Warning

Message: sprintf(): Too few arguments

Filename: competitors/dialog_competitor_banner.php

Line Number: 111

Backtrace:

File: /var/www/ironpdf.com/application/views/products/competitors/dialog_competitor_banner.php
Line: 111
Function: sprintf

File: /var/www/ironpdf.com/application/views/products/blog/main_post.php
Line: 196
Function: view

File: /var/www/ironpdf.com/application/views/products/blog/blog_post.php
Line: 24
Function: include

File: /var/www/ironpdf.com/application/views/products/blog/index.php
Line: 83
Function: include

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 552
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Blog.php
Line: 77
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

QuestPDF Logo

Cansado de renovações caras e atualizações de produtos desatualizadas?

IronPDF Logo

Equipe de suporte de ferro

Estamos online 24 horas por dia, 5 dias por semana.
Bater papo
E-mail
Liga para mim