Como migrar do PDFFilePrint para o IronPDF em C#
A migração do Arquivo PDFImprimir para o IronPDF transforma seu fluxo de trabalho de PDF em .NET , de um utilitário focado em impressão com recursos limitados, para uma biblioteca de PDF abrangente que lida com criação, manipulação e impressão em uma única API unificada. Este guia fornece um caminho de migração completo, passo a passo, que elimina as dependências da linha de comando, ao mesmo tempo que adiciona recursos de geração e manipulação de PDFs que o Arquivo PDFImprimir não oferece.
Por que migrar do Arquivo PDFImprimir para o IronPDF?
Entendendo o PDFFilePrint
PDFFilePrint é uma ferramenta prática projetada especificamente para imprimir arquivos PDF a partir de aplicativos C#. Embora seja útil para tarefas específicas de impressão de PDFs, sua funcionalidade se limita a um único aspecto do manuseio de documentos. O principal atrativo do Arquivo PDFImprimir reside na sua simplicidade — um foco singular em proporcionar uma experiência de impressão para arquivos PDF. No entanto, esse foco restrito cria limitações significativas para sistemas abrangentes de gerenciamento de documentos.
Limitações críticas do PDFFilePrint
-
Foco exclusivo na impressão: a funcionalidade do Arquivo PDFImprimir se limita à impressão. A falta de funcionalidades para criar ou modificar arquivos PDF é uma limitação para sistemas de gerenciamento de documentos mais abrangentes.
-
Dependência da linha de comando: Por frequentemente depender de operações de linha de comando com chamadas
Process.Start(), o Arquivo PDFImprimir pode não atender às necessidades de integração perfeita em aplicativos que exigem APIs mais robustas. -
Exclusivo para Windows: Como depende muito dos sistemas de impressão do Windows, pode não ser a melhor opção para ambientes que utilizam outros sistemas operacionais.
-
Sem integração com .NET : Sem API nativa, sem pacote NuGet e sem suporte ao IntelliSense em alguns padrões de uso.
-
Gerenciamento de Processos Externos: Deve lidar com o ciclo de vida do processo, códigos de saída e análise de erros provenientes de stdout/stderr.
-
Tratamento de erros limitado: a detecção de erros requer a análise da saída padrão e dos fluxos de erro, em vez de exceções nativas.
-
Complexidade de implantação: É necessário incluir o PDFFilePrint.exe com o aplicativo em cenários de uso pela linha de comando.
- Sem geração de PDF: Não é possível criar PDFs — apenas imprimir PDFs existentes no modo de linha de comando.
Comparação entre Arquivo PDFImprimir e IronPDF
| Aspecto | Arquivo PDFImprimir | IronPDF |
|---|---|---|
| Foco principal | Impressão em PDF | API de PDF abrangente |
| Tipo | Utilitário de linha de comando / Biblioteca básica | Biblioteca nativa do .NET |
| Integração | Process.Start() / API Básica | Chamadas diretas à API |
| Impressão em PDF | ✓ | ✓ |
| Criação de PDF | Limitado | ✓ (HTML, URL, imagens) |
| Manipulação de PDF | ✗ | ✓ (mesclar, dividir, editar) |
| Multiplataforma | Somente para Windows | Windows, Linux, macOS |
| Tratamento de erros | Analisar stdout/stderr | Exceções nativas |
| IntelliSense | Limitado | Apoiado |
| Pacote NuGet | Limitado | ✓ |
| Documentação | Básico | Extenso |
Para equipes que planejam a adoção do .NET 10 e do C# 14 até 2025 e 2026, o IronPDF oferece uma base abrangente com suporte multiplataforma e desenvolvimento ativo, abordando as limitações arquitetônicas do PDFFilePrint.
Antes de começar
Pré-requisitos
- Ambiente .NET : .NET Framework 4.6.2+ ou .NET Core 3.1+ / .NET 5/6/7/8/9+
- Acesso ao NuGet : Capacidade de instalar pacotes NuGet.
- Licença do IronPDF : Obtenha sua chave de licença em IronPDF
Alterações no pacote NuGet
# Remove Arquivo PDFImprimir package (if installed via NuGet)
dotnet remove package PDFFilePrint
# If using command-line PDFFilePrint.exe, remove from deployment
# Delete bundled PDFFilePrint.exe from your project
# Install IronPDF
dotnet add package IronPdf
# Remove Arquivo PDFImprimir package (if installed via NuGet)
dotnet remove package PDFFilePrint
# If using command-line PDFFilePrint.exe, remove from deployment
# Delete bundled PDFFilePrint.exe from your project
# Install IronPDF
dotnet add package IronPdf
Configuração de licença
// Add at application startup (Program.cs or Startup.cs)
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
// Add at application startup (Program.cs or Startup.cs)
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
' Add at application startup (Program.vb or Startup.vb)
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY"
Identificar o uso do PDFFilePrint
# Find Arquivo PDFImprimir references
grep -r "PDFFilePrint\|PDFFile\|CreateFromHtml\|CreateFromUrl" --include="*.cs" .
# Find command-line execution patterns
grep -r "ProcessStartInfo.*pdf\|Process.Start.*print" --include="*.cs" .
# Find batch scripts
find . -name "*.bat" -o -name "*.cmd" | xargs grep -l "PDFFilePrint"
# Find Arquivo PDFImprimir references
grep -r "PDFFilePrint\|PDFFile\|CreateFromHtml\|CreateFromUrl" --include="*.cs" .
# Find command-line execution patterns
grep -r "ProcessStartInfo.*pdf\|Process.Start.*print" --include="*.cs" .
# Find batch scripts
find . -name "*.bat" -o -name "*.cmd" | xargs grep -l "PDFFilePrint"
Referência completa da API
Alterações de namespace
// PDFFilePrint
using PDFFilePrint;
using System.Diagnostics; // For command-line usage
// IronPDF
using IronPdf;
using IronPdf.Printing;
// PDFFilePrint
using PDFFilePrint;
using System.Diagnostics; // For command-line usage
// IronPDF
using IronPdf;
using IronPdf.Printing;
Imports PDFFilePrint
Imports System.Diagnostics ' For command-line usage
' IronPDF
Imports IronPdf
Imports IronPdf.Printing
Mapeamentos de Classes Principais
| Arquivo PDFImprimir | IronPDF |
|---|---|
new PDFFile() |
new ChromePdfRenderer() |
new PDFFile() |
PdfDocument.FromFile() |
PDFFile |
PdfDocument |
Mapeamentos de métodos de geração de PDF
| Arquivo PDFImprimir | IronPDF |
|---|---|
pdf.CreateFromHtml(html) |
renderer.RenderHtmlAsPdf(html) |
pdf.CreateFromUrl(url) |
renderer.RenderUrlAsPdf(url) |
pdf.SaveToFile(path) |
pdf.SaveAs(path) |
Carregamento e impressão de mapas em PDF
| Arquivo PDFImprimir | IronPDF |
|---|---|
pdf.LoadFromFile(path) |
PdfDocument.FromFile(path) |
pdf.Print(printerName) |
pdf.Print(printerName) |
pdf.Print("Default Printer") |
pdf.Print() |
Mapeamento de configurações de impressão (linha de comando para API)
| Arquivo PDFImprimir Flag | Propriedade de configurações de impressão do IronPDF |
|---|---|
-printer "Name" |
PrinterName |
-copies N |
NumberOfCopies |
-silent |
ShowPrintDialog = false |
-pages "1-5" |
FromPage, ToPage |
-orientation landscape |
PaperOrientation |
-duplex |
Duplex |
-collate |
Collate |
Novas funcionalidades não presentes no PDFFilePrint
| Recurso IronPDF | Descrição |
|---|---|
PdfDocument.Merge() |
Combinar vários PDFs |
pdf.CopyPages() |
Extrair páginas específicas |
pdf.ApplyWatermark() |
Adicionar marcas d'água |
pdf.SecuritySettings |
Proteção por senha |
pdf.ExtractAllText() |
Extrair conteúdo de texto |
pdf.RasterizeToImageFiles() |
Converter em imagens |
pdf.SignWithDigitalSignature() |
Assinaturas digitais |
Exemplos de migração de código
Exemplo 1: Conversão de HTML para PDF
Antes (PDFFilePrint):
// NuGet: Install-Package PDFFilePrint
using System;
using PDFFilePrint;
class Program
{
static void Main()
{
var pdf = new PDFFile();
string htmlContent = "<html><body><h1>Hello World</h1></body></html>";
pdf.CreateFromHtml(htmlContent);
pdf.SaveToFile("output.pdf");
}
}
// NuGet: Install-Package PDFFilePrint
using System;
using PDFFilePrint;
class Program
{
static void Main()
{
var pdf = new PDFFile();
string htmlContent = "<html><body><h1>Hello World</h1></body></html>";
pdf.CreateFromHtml(htmlContent);
pdf.SaveToFile("output.pdf");
}
}
Imports System
Imports PDFFilePrint
Module Program
Sub Main()
Dim pdf As New PDFFile()
Dim htmlContent As String = "<html><body><h1>Hello World</h1></body></html>"
pdf.CreateFromHtml(htmlContent)
pdf.SaveToFile("output.pdf")
End Sub
End Module
Após (IronPDF):
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
class Program
{
static void Main()
{
var renderer = new ChromePdfRenderer();
string htmlContent = "<html><body><h1>Hello World</h1></body></html>";
var pdf = renderer.RenderHtmlAsPdf(htmlContent);
pdf.SaveAs("output.pdf");
}
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
class Program
{
static void Main()
{
var renderer = new ChromePdfRenderer();
string htmlContent = "<html><body><h1>Hello World</h1></body></html>";
var pdf = renderer.RenderHtmlAsPdf(htmlContent);
pdf.SaveAs("output.pdf");
}
}
Imports IronPdf
Imports System
Class Program
Shared Sub Main()
Dim renderer = New ChromePdfRenderer()
Dim htmlContent As String = "<html><body><h1>Hello World</h1></body></html>"
Dim pdf = renderer.RenderHtmlAsPdf(htmlContent)
pdf.SaveAs("output.pdf")
End Sub
End Class
A diferença fundamental aqui reside no padrão da API. Arquivo PDFImprimir usa uma única classe PDFFile com métodos CreateFromHtml() e SaveToFile(). O IronPDF separa a renderização do objeto do documento — ChromePdfRenderer lida com a conversão de HTML para PDF e retorna um objeto PdfDocument que você então salva com SaveAs().
Essa separação oferece vantagens significativas: você pode configurar as opções de renderização no renderizador antes da conversão, e o arquivo retornado PdfDocument pode ser manipulado (adicionar marcas d'água, mesclar com outros PDFs, adicionar segurança) antes de ser salvo. Consulte a documentação de conversão de HTML para PDF para obter opções de renderização adicionais.
Exemplo 2: Conversão de URL para PDF
Antes (PDFFilePrint):
// NuGet: Install-Package PDFFilePrint
using System;
using PDFFilePrint;
class Program
{
static void Main()
{
var pdf = new PDFFile();
pdf.CreateFromUrl("https://www.example.com");
pdf.SaveToFile("webpage.pdf");
}
}
// NuGet: Install-Package PDFFilePrint
using System;
using PDFFilePrint;
class Program
{
static void Main()
{
var pdf = new PDFFile();
pdf.CreateFromUrl("https://www.example.com");
pdf.SaveToFile("webpage.pdf");
}
}
Imports System
Imports PDFFilePrint
Class Program
Shared Sub Main()
Dim pdf As New PDFFile()
pdf.CreateFromUrl("https://www.example.com")
pdf.SaveToFile("webpage.pdf")
End Sub
End Class
Após (IronPDF):
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
class Program
{
static void Main()
{
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf("https://www.example.com");
pdf.SaveAs("webpage.pdf");
}
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
class Program
{
static void Main()
{
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf("https://www.example.com");
pdf.SaveAs("webpage.pdf");
}
}
Imports IronPdf
Imports System
Class Program
Shared Sub Main()
Dim renderer = New ChromePdfRenderer()
Dim pdf = renderer.RenderUrlAsPdf("https://www.example.com")
pdf.SaveAs("webpage.pdf")
End Sub
End Class
PDFFilePrint usa CreateFromUrl() na mesma classe PDFFile. O IronPDF usa o método dedicado RenderUrlAsPdf() em ChromePdfRenderer, que aproveita um mecanismo Chromium moderno para renderização precisa de CSS3 complexo, JavaScript e recursos modernos da web. A qualidade da renderização é previsível e corresponde ao que você vê no navegador Chrome. Saiba mais sobre a conversão de URL para PDF .
Exemplo 3: Impressão em PDF
Antes (PDFFilePrint):
// NuGet: Install-Package PDFFilePrint
using System;
using PDFFilePrint;
class Program
{
static void Main()
{
var pdf = new PDFFile();
pdf.LoadFromFile("document.pdf");
pdf.Print("Default Printer");
Console.WriteLine("PDF sent to printer");
}
}
// NuGet: Install-Package PDFFilePrint
using System;
using PDFFilePrint;
class Program
{
static void Main()
{
var pdf = new PDFFile();
pdf.LoadFromFile("document.pdf");
pdf.Print("Default Printer");
Console.WriteLine("PDF sent to printer");
}
}
Imports System
Imports PDFFilePrint
Module Program
Sub Main()
Dim pdf As New PDFFile()
pdf.LoadFromFile("document.pdf")
pdf.Print("Default Printer")
Console.WriteLine("PDF sent to printer")
End Sub
End Module
Após (IronPDF):
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
class Program
{
static void Main()
{
var pdf = PdfDocument.FromFile("document.pdf");
pdf.Print();
Console.WriteLine("PDF sent to printer");
}
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
class Program
{
static void Main()
{
var pdf = PdfDocument.FromFile("document.pdf");
pdf.Print();
Console.WriteLine("PDF sent to printer");
}
}
Imports IronPdf
Imports System
Class Program
Shared Sub Main()
Dim pdf = PdfDocument.FromFile("document.pdf")
pdf.Print()
Console.WriteLine("PDF sent to printer")
End Sub
End Class
Este exemplo mostra uma diferença arquitetônica fundamental no carregamento e impressão de PDFs. O Arquivo PDFImprimir usa new PDFFile() seguido por LoadFromFile(), depois Print(printerName). O IronPDF usa o método de fábrica estático PdfDocument.FromFile() para carregar diretamente e, em seguida, Print(), que usa a impressora padrão (ou você pode passar um nome de impressora).
As principais alterações de migração:
new PDFFile()+LoadFromFile(path)→PdfDocument.FromFile(path)Print("Default Printer")→Print()(a impressora padrão é automática)
Para configurações avançadas de impressão, o IronPDF fornece uma classe PrintSettings. Consulte a documentação de impressão para opções avançadas.
Migração de configurações avançadas de impressão
Para aplicações que utilizam os parâmetros de linha de comando do PDFFilePrint, veja como migrar para o PrintSettings do IronPDF:
// Arquivo PDFImprimir command-line approach:
// PDFFilePrint.exe -silent -copies 3 -printer "HP LaserJet" -pages "1-5" "document.pdf"
// IronPDF equivalent:
using IronPdf;
var pdf = PdfDocument.FromFile("document.pdf");
var settings = new PrintSettings
{
ShowPrintDialog = false, // -silent
NumberOfCopies = 3, // -copies 3
PrinterName = "HP LaserJet", // -printer "HP LaserJet"
FromPage = 1, // -pages "1-5"
ToPage = 5
};
pdf.Print(settings);
// Arquivo PDFImprimir command-line approach:
// PDFFilePrint.exe -silent -copies 3 -printer "HP LaserJet" -pages "1-5" "document.pdf"
// IronPDF equivalent:
using IronPdf;
var pdf = PdfDocument.FromFile("document.pdf");
var settings = new PrintSettings
{
ShowPrintDialog = false, // -silent
NumberOfCopies = 3, // -copies 3
PrinterName = "HP LaserJet", // -printer "HP LaserJet"
FromPage = 1, // -pages "1-5"
ToPage = 5
};
pdf.Print(settings);
Imports IronPdf
Dim pdf = PdfDocument.FromFile("document.pdf")
Dim settings As New PrintSettings With {
.ShowPrintDialog = False, ' -silent
.NumberOfCopies = 3, ' -copies 3
.PrinterName = "HP LaserJet", ' -printer "HP LaserJet"
.FromPage = 1, ' -pages "1-5"
.ToPage = 5
}
pdf.Print(settings)
Conversão do sinalizador do modo silencioso
Observe a lógica invertida para impressão silenciosa:
// PDFFilePrint: -silent flag enables silent mode
// IronPDF: ShowPrintDialog = false (false = silent)
var settings = new PrintSettings { ShowPrintDialog = false };
// PDFFilePrint: -silent flag enables silent mode
// IronPDF: ShowPrintDialog = false (false = silent)
var settings = new PrintSettings { ShowPrintDialog = false };
' PDFFilePrint: -silent flag enables silent mode
' IronPDF: ShowPrintDialog = false (false = silent)
Dim settings As New PrintSettings With {.ShowPrintDialog = False}
Novas funcionalidades após a migração
Após migrar para o IronPDF, você obtém recursos que o Arquivo PDFImprimir não pode fornecer:
Crie e imprima em uma única etapa
using IronPdf;
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Invoice #12345</h1><p>Thank you for your order.</p>");
pdf.Print("Office Printer");
using IronPdf;
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Invoice #12345</h1><p>Thank you for your order.</p>");
pdf.Print("Office Printer");
Imports IronPdf
Dim renderer As New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Invoice #12345</h1><p>Thank you for your order.</p>")
pdf.Print("Office Printer")
Fusão de PDFs
var pdf1 = PdfDocument.FromFile("document1.pdf");
var pdf2 = PdfDocument.FromFile("document2.pdf");
var merged = PdfDocument.Merge(pdf1, pdf2);
merged.SaveAs("merged.pdf");
var pdf1 = PdfDocument.FromFile("document1.pdf");
var pdf2 = PdfDocument.FromFile("document2.pdf");
var merged = PdfDocument.Merge(pdf1, pdf2);
merged.SaveAs("merged.pdf");
Dim pdf1 = PdfDocument.FromFile("document1.pdf")
Dim pdf2 = PdfDocument.FromFile("document2.pdf")
Dim merged = PdfDocument.Merge(pdf1, pdf2)
merged.SaveAs("merged.pdf")
Marcas d'água
var pdf = PdfDocument.FromFile("document.pdf");
pdf.ApplyWatermark("<h1 style='color:red; opacity:0.3;'>CONFIDENTIAL</h1>");
pdf.SaveAs("watermarked.pdf");
var pdf = PdfDocument.FromFile("document.pdf");
pdf.ApplyWatermark("<h1 style='color:red; opacity:0.3;'>CONFIDENTIAL</h1>");
pdf.SaveAs("watermarked.pdf");
Dim pdf = PdfDocument.FromFile("document.pdf")
pdf.ApplyWatermark("<h1 style='color:red; opacity:0.3;'>CONFIDENTIAL</h1>")
pdf.SaveAs("watermarked.pdf")
Proteção por senha
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SecuritySettings.UserPassword = "userpassword";
pdf.SecuritySettings.OwnerPassword = "ownerpassword";
pdf.SaveAs("secured.pdf");
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SecuritySettings.UserPassword = "userpassword";
pdf.SecuritySettings.OwnerPassword = "ownerpassword";
pdf.SaveAs("secured.pdf");
Dim pdf = renderer.RenderHtmlAsPdf(html)
pdf.SecuritySettings.UserPassword = "userpassword"
pdf.SecuritySettings.OwnerPassword = "ownerpassword"
pdf.SaveAs("secured.pdf")
Extração de texto
var pdf = PdfDocument.FromFile("document.pdf");
string text = pdf.ExtractAllText();
var pdf = PdfDocument.FromFile("document.pdf");
string text = pdf.ExtractAllText();
Dim pdf = PdfDocument.FromFile("document.pdf")
Dim text As String = pdf.ExtractAllText()
Notas críticas sobre migração
Mudança no padrão de classe
O Arquivo PDFImprimir usa uma única classe PDFFile para tudo; IronPDF separa as responsabilidades:
// PDFFilePrint: Single class
var pdf = new PDFFile();
pdf.CreateFromHtml(html);
pdf.SaveToFile(path);
// IronPDF: Renderer for creation, Document for manipulation
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs(path);
// PDFFilePrint: Single class
var pdf = new PDFFile();
pdf.CreateFromHtml(html);
pdf.SaveToFile(path);
// IronPDF: Renderer for creation, Document for manipulation
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs(path);
' PDFFilePrint: Single class
Dim pdf1 = New PDFFile()
pdf1.CreateFromHtml(html)
pdf1.SaveToFile(path)
' IronPDF: Renderer for creation, Document for manipulation
Dim renderer = New ChromePdfRenderer()
Dim pdf2 = renderer.RenderHtmlAsPdf(html)
pdf2.SaveAs(path)
Alterações nos nomes dos métodos
// Arquivo PDFImprimir → IronPDF
CreateFromHtml() → RenderHtmlAsPdf()
CreateFromUrl() → RenderUrlAsPdf()
LoadFromFile() → PdfDocument.FromFile()
SaveToFile() → SaveAs()
Print(printerName) → Print(printerName) or Print()
// Arquivo PDFImprimir → IronPDF
CreateFromHtml() → RenderHtmlAsPdf()
CreateFromUrl() → RenderUrlAsPdf()
LoadFromFile() → PdfDocument.FromFile()
SaveToFile() → SaveAs()
Print(printerName) → Print(printerName) or Print()
' Arquivo PDFImprimir → IronPDF
RenderHtmlAsPdf() ' CreateFromHtml()
RenderUrlAsPdf() ' CreateFromUrl()
PdfDocument.FromFile() ' LoadFromFile()
SaveAs() ' SaveToFile()
Print(printerName) ' Print(printerName) or Print()
Código de saída para tratamento de exceções
Se estiver usando o Arquivo PDFImprimir pela linha de comando:
// PDFFilePrint: Check process exit code
if (process.ExitCode != 0) {
var error = process.StandardError.ReadToEnd();
throw new Exception($"Print failed: {error}");
}
// IronPDF: Use try-catch
try {
pdf.Print();
}
catch (Exception ex) {
// Handle error with full exception details
}
// PDFFilePrint: Check process exit code
if (process.ExitCode != 0) {
var error = process.StandardError.ReadToEnd();
throw new Exception($"Print failed: {error}");
}
// IronPDF: Use try-catch
try {
pdf.Print();
}
catch (Exception ex) {
// Handle error with full exception details
}
' PDFFilePrint: Check process exit code
If process.ExitCode <> 0 Then
Dim error = process.StandardError.ReadToEnd()
Throw New Exception($"Print failed: {error}")
End If
' IronPDF: Use try-catch
Try
pdf.Print()
Catch ex As Exception
' Handle error with full exception details
End Try
Remover dependências externas
Se estiver usando o Arquivo PDFImprimir pela linha de comando, remova o executável incluído:
// Before: Required external executable
private readonly string _pdfFilePrintPath = @"C:\tools\PDFFilePrint.exe";
// After: No external dependencies
// IronPDF is fully self-contained via NuGet
// Before: Required external executable
private readonly string _pdfFilePrintPath = @"C:\tools\PDFFilePrint.exe";
// After: No external dependencies
// IronPDF is fully self-contained via NuGet
' Before: Required external executable
Private ReadOnly _pdfFilePrintPath As String = "C:\tools\PDFFilePrint.exe"
' After: No external dependencies
' IronPDF is fully self-contained via NuGet
Resumo da comparação de recursos
| Recurso | Arquivo PDFImprimir | IronPDF |
|---|---|---|
| Impressão básica | ✓ | ✓ |
| Impressão silenciosa | ✓ | ✓ |
| Várias cópias | ✓ | ✓ |
| Intervalo de páginas | ✓ | ✓ |
| Duplex | Varia | ✓ |
| Criar a partir de HTML | Limitado | ✓ |
| Criar a partir de um URL | Limitado | ✓ |
| Mesclar PDFs | ✗ | ✓ |
| Dividir PDFs | ✗ | ✓ |
| Adicionar marcas d'água | ✗ | ✓ |
| Extrair texto | ✗ | ✓ |
| Proteção por senha | ✗ | ✓ |
| Assinaturas digitais | ✗ | ✓ |
| Multiplataforma | ✗ | ✓ |
| API nativa do .NET | Limitado | ✓ |
Lista de verificação para migração
Pré-migração
- Localize todas as referências a Arquivo PDFImprimir na base de código.
- Documentar os métodos atualmente utilizados (CreateFromHtml, CreateFromUrl, Print, etc.)
- Identificar os nomes das impressoras utilizadas em diferentes ambientes.
- Liste quaisquer argumentos de linha de comando se estiver usando o padrão Process.Start.
- Identificar oportunidades para novas funcionalidades (fusão, marcas d'água, segurança)
- Obtenha a chave de licença do IronPDF
Alterações no pacote
- Remover o pacote NuGet
PDFFilePrint - Remova o PDFFilePrint.exe incluído na distribuição (se aplicável)
- Instale o pacote NuGet
IronPdf:dotnet add package IronPdf - Atualizar importações de namespace
Alterações no código
- Adicionar configuração de chave de licença na inicialização
- Substitua
new PDFFile()+CreateFromHtml()porChromePdfRenderer.RenderHtmlAsPdf() - Substitua
new PDFFile()+CreateFromUrl()porChromePdfRenderer.RenderUrlAsPdf() - Substitua
LoadFromFile()porPdfDocument.FromFile() - Substitua
SaveToFile()porSaveAs() - Atualizar chamadas
Print()conforme necessário - Substituir verificações de código de saída por tratamento de exceções (se aplicável)
Pós-migração
- Remova o PDFFilePrint.exe do controle de versão.
- Atualizar scripts de compilação para remover a cópia do PDFFilePrint
- Teste a impressão em todas as impressoras de destino.
- Teste a compatibilidade entre plataformas, se aplicável.
- Adicionar novas funcionalidades (marcas d'água, segurança) conforme necessário.
- Atualizar documentação

