Ir para o conteúdo do rodapé
GUIAS DE MIGRAçãO

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

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

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

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

  4. Sem integração com .NET : Sem API nativa, sem pacote NuGet e sem suporte ao IntelliSense em alguns padrões de uso.

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

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

  7. Complexidade de implantação: É necessário incluir o PDFFilePrint.exe com o aplicativo em cenários de uso pela linha de comando.

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

  1. Ambiente .NET : .NET Framework 4.6.2+ ou .NET Core 3.1+ / .NET 5/6/7/8/9+
  2. Acesso ao NuGet : Capacidade de instalar pacotes NuGet.
  3. 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
SHELL

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

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

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

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

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

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

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

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

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

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

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}
$vbLabelText   $csharpLabel

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

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

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

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

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

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

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

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

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

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() por ChromePdfRenderer.RenderHtmlAsPdf()
  • Substitua new PDFFile() + CreateFromUrl() por ChromePdfRenderer.RenderUrlAsPdf()
  • Substitua LoadFromFile() por PdfDocument.FromFile()
  • Substitua SaveToFile() por SaveAs()
  • 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

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

Equipe de suporte de ferro

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