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

Como migrar do Sumatra PDF para o IronPDF em C#

A migração do Sumatra PDF para o IronPDF transforma seu fluxo de trabalho de PDF, passando do gerenciamento de processos externos com um aplicativo visualizador para desktop para a integração nativa com a biblioteca .NET , com recursos completos de criação, manipulação e extração de PDFs. Este guia fornece um caminho de migração completo, passo a passo, que elimina dependências externas, restrições da licença GPL e a limitação fundamental de que o Sumatra PDF é um visualizador, não uma biblioteca de desenvolvimento.

Por que migrar do Sumatra PDF para o IronPDF?

Entendendo Sumatra (PDF)

O Sumatra PDF é principalmente um leitor de PDF leve e de código aberto, conhecido por sua simplicidade e velocidade. Não entanto, o Sumatra PDF não oferece os recursos necessários para criar ou manipular arquivos PDF além da visualização. Por ser uma opção gratuita e versátil para leitura de PDFs, é adorada por muitos usuários que buscam uma experiência descomplicada. Não entanto, quando se trata de desenvolvedores que precisam de funcionalidades de PDF mais abrangentes, como criação e integração de bibliotecas em aplicativos, o Sumatra PDF deixa a desejar devido às suas limitações de design inerentes.

Sumatra PDF é um aplicativo visualizador de PDF para desktop , não uma biblioteca de desenvolvimento. Se você estiver usando o Sumatra PDF em seu aplicativo .NET , provavelmente você:

  1. Executá-lo como um processo externo para exibir PDFs
  2. Utilizando-o para imprimir PDFs via linha de comando
  3. Ao depender disso, seus usuários precisam instalar o que precisam.

Principais problemas com a integração do Sumatra PDF

Problema Impacto
Não é uma biblioteca Não é possível criar ou editar PDFs programaticamente.
Processo externo Requer a criação de processos separados.
Licença GPL Restritivo para software comercial
Dependência do usuário Os usuários devem instalar o Sumatra separadamente.
Sem API Limitado a argumentos de linha de comando
Somente visualização Não é possível criar, editar ou manipular PDFs.
Sem suporte na Web Aplicativo exclusivo para desktop

Comparação entre Sumatra PDF e IronPDF

Recurso Sumatra PDF IronPDF
Tipo Aplicativo Biblioteca
Leitura de PDF Sim Sim
Criação de PDF Não Sim
Edição de PDF Não Sim
Integração Limitado (autônomo) Integração completa em aplicativos
Licença GPL Comercial
Criar PDFs Não Sim
Editar PDFs Não Sim
HTML para PDF Não Sim
Mesclar/Dividir Não Sim
Marcas d'água Não Sim
Assinaturas digitais Não Sim
Preenchimento de formulários Não Sim
Extração de texto Não Sim
Integração .NET Nenhum Nativo
Aplicações Web Não Sim

O IronPDF, diferentemente do Sumatra PDF, não está vinculado a nenhum aplicativo de desktop específico ou processo externo. Ela fornece aos desenvolvedores uma biblioteca flexível para criar, editar e manipular documentos PDF dinamicamente diretamente em C#. Essa separação de processos externos oferece uma vantagem notável: é simples e adaptável, adequada para uma ampla gama de aplicações que vão além da simples visualização.

Para equipes que planejam a adoção do .NET 10 e do C# 14 até 2025 e 2026, o IronPDF oferece integração nativa de biblioteca, eliminando a sobrecarga de processos externos e as restrições da licença GPL do Sumatra PDF.


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

Instalação

# Install IronPDF
dotnet add package IronPdf
# Install IronPDF
dotnet add package IronPdf
SHELL

Configuração de licença

// Add at application startup
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
// Add at application startup
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
' Add at application startup
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY"
$vbLabelText   $csharpLabel

Referência completa da API

Alterações de namespace

// Before: Sumatra PDF (external process)
using System.Diagnostics;
using System.IO;

// After: IronPDF
using IronPdf;
// Before: Sumatra PDF (external process)
using System.Diagnostics;
using System.IO;

// After: IronPDF
using IronPdf;
' Before: Sumatra PDF (external process)
Imports System.Diagnostics
Imports System.IO

' After: IronPDF
Imports IronPdf
$vbLabelText   $csharpLabel

Mapeamento das Competências Essenciais

Abordagem em PDF de Sumatra Equivalente ao IronPDF Notas
Process.Start("SumatraPDF.exe", pdfPath) PdfDocument.FromFile() Carregar PDF
Argumentos da linha de comando Métodos da API nativa Não é necessário nenhum CLI.
Externo pdftotext.exe pdf.ExtractAllText() Extração de texto
Externo wkhtmltopdf.exe renderer.RenderHtmlAsPdf() HTML para PDF
-print-to-default argumento pdf.Print() Impressão
Não é possível. PdfDocument.Merge() Mesclar PDFs
Não é possível. pdf.ApplyWatermark() Marcas d'água
Não é possível. pdf.SecuritySettings Proteção por senha

Exemplos de migração de código

Exemplo 1: Conversão de HTML para PDF

Antes (Sumatra PDF):

// NuGet: Install-Package SumatraPDF (Note: Sumatra is primarily a viewer, not a generator)
// Sumatra PDF doesn't have direct C# integration for HTML para PDF conversion
// You would need to use external tools or libraries and then open with Sumatra
using System.Diagnostics;
using System.IO;

class Program
{
    static void Main()
    {
        // Sumatra PDF cannot directly convert HTML to PDF
        // You'd need to use wkhtmltopdf or similar, then view in Sumatra
        string htmlFile = "input.html";
        string pdfFile = "output.pdf";

        // Using wkhtmltopdf as intermediary
        ProcessStartInfo psi = new ProcessStartInfo
        {
            FileName = "wkhtmltopdf.exe",
            Arguments = $"{htmlFile} {pdfFile}",
            UseShellExecute = false
        };
        Process.Start(psi)?.WaitForExit();

        // Then open with Sumatra
        Process.Start("SumatraPDF.exe", pdfFile);
    }
}
// NuGet: Install-Package SumatraPDF (Note: Sumatra is primarily a viewer, not a generator)
// Sumatra PDF doesn't have direct C# integration for HTML para PDF conversion
// You would need to use external tools or libraries and then open with Sumatra
using System.Diagnostics;
using System.IO;

class Program
{
    static void Main()
    {
        // Sumatra PDF cannot directly convert HTML to PDF
        // You'd need to use wkhtmltopdf or similar, then view in Sumatra
        string htmlFile = "input.html";
        string pdfFile = "output.pdf";

        // Using wkhtmltopdf as intermediary
        ProcessStartInfo psi = new ProcessStartInfo
        {
            FileName = "wkhtmltopdf.exe",
            Arguments = $"{htmlFile} {pdfFile}",
            UseShellExecute = false
        };
        Process.Start(psi)?.WaitForExit();

        // Then open with Sumatra
        Process.Start("SumatraPDF.exe", pdfFile);
    }
}
Imports System.Diagnostics
Imports System.IO

Module Program
    Sub Main()
        ' Sumatra PDF cannot directly convert HTML to PDF
        ' You'd need to use wkhtmltopdf or similar, then view in Sumatra
        Dim htmlFile As String = "input.html"
        Dim pdfFile As String = "output.pdf"

        ' Using wkhtmltopdf as intermediary
        Dim psi As New ProcessStartInfo With {
            .FileName = "wkhtmltopdf.exe",
            .Arguments = $"{htmlFile} {pdfFile}",
            .UseShellExecute = False
        }
        Process.Start(psi)?.WaitForExit()

        ' Then open with Sumatra
        Process.Start("SumatraPDF.exe", pdfFile)
    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 = "<h1>Hello World</h1><p>This is HTML para PDF conversion.</p>";

        var pdf = renderer.RenderHtmlAsPdf(htmlContent);
        pdf.SaveAs("output.pdf");

        Console.WriteLine("PDF created successfully!");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();

        string htmlContent = "<h1>Hello World</h1><p>This is HTML para PDF conversion.</p>";

        var pdf = renderer.RenderHtmlAsPdf(htmlContent);
        pdf.SaveAs("output.pdf");

        Console.WriteLine("PDF created successfully!");
    }
}
Imports IronPdf
Imports System

Module Program
    Sub Main()
        Dim renderer As New ChromePdfRenderer()

        Dim htmlContent As String = "<h1>Hello World</h1><p>This is HTML para PDF conversion.</p>"

        Dim pdf = renderer.RenderHtmlAsPdf(htmlContent)
        pdf.SaveAs("output.pdf")

        Console.WriteLine("PDF created successfully!")
    End Sub
End Module
$vbLabelText   $csharpLabel

Este exemplo demonstra a diferença arquitetônica fundamental. O Sumatra PDF não consegue converter HTML para PDF diretamente; você precisa usar uma ferramenta externa como o wkhtmltopdf como intermediário e, em seguida, executar o Sumatra como um processo separado para visualizar o resultado. Isso requer dois executáveis ​​externos e a inicialização de múltiplos processos.

IronPDF usa um ChromePdfRenderer com RenderHtmlAsPdf() em apenas três linhas de código. Sem ferramentas externas, sem gerenciamento de processos, sem arquivos intermediários. O PDF é criado diretamente na memória e salvo com SaveAs(). Consulte a documentação de conversão de HTML para PDF para obter exemplos completos.

Exemplo 2: Abrindo e exibindo PDFs

Antes (Sumatra PDF):

// NuGet: Install-Package SumatraPDF.CommandLine (or direct executable)
using System.Diagnostics;
using System.IO;

class Program
{
    static void Main()
    {
        string pdfPath = "document.pdf";

        // Sumatra PDF excels at viewing PDFs
        ProcessStartInfo startInfo = new ProcessStartInfo
        {
            FileName = "SumatraPDF.exe",
            Arguments = $"\"{pdfPath}\"",
            UseShellExecute = true
        };

        Process.Start(startInfo);

        // Optional: Open specific page
        // Arguments = $"-page 5 \"{pdfPath}\""
    }
}
// NuGet: Install-Package SumatraPDF.CommandLine (or direct executable)
using System.Diagnostics;
using System.IO;

class Program
{
    static void Main()
    {
        string pdfPath = "document.pdf";

        // Sumatra PDF excels at viewing PDFs
        ProcessStartInfo startInfo = new ProcessStartInfo
        {
            FileName = "SumatraPDF.exe",
            Arguments = $"\"{pdfPath}\"",
            UseShellExecute = true
        };

        Process.Start(startInfo);

        // Optional: Open specific page
        // Arguments = $"-page 5 \"{pdfPath}\""
    }
}
Imports System.Diagnostics
Imports System.IO

Module Program
    Sub Main()
        Dim pdfPath As String = "document.pdf"

        ' Sumatra PDF excels at viewing PDFs
        Dim startInfo As New ProcessStartInfo With {
            .FileName = "SumatraPDF.exe",
            .Arguments = $"""{pdfPath}""",
            .UseShellExecute = True
        }

        Process.Start(startInfo)

        ' Optional: Open specific page
        ' Arguments = $"-page 5 ""{pdfPath}"""
    End Sub
End Module
$vbLabelText   $csharpLabel

Após (IronPDF):

// NuGet: Install-Package IronPdf
using IronPdf;
using System;
using System.Diagnostics;

class Program
{
    static void Main()
    {
        var pdf = PdfDocument.FromFile("document.pdf");

        // Extract information
        Console.WriteLine($"Page Count: {pdf.PageCount}");

        // IronPDF can manipulate and save, then open with default viewer
        pdf.SaveAs("modified.pdf");

        // Open with default PDF viewer
        Process.Start(new ProcessStartInfo("modified.pdf") { UseShellExecute = true });
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
using System.Diagnostics;

class Program
{
    static void Main()
    {
        var pdf = PdfDocument.FromFile("document.pdf");

        // Extract information
        Console.WriteLine($"Page Count: {pdf.PageCount}");

        // IronPDF can manipulate and save, then open with default viewer
        pdf.SaveAs("modified.pdf");

        // Open with default PDF viewer
        Process.Start(new ProcessStartInfo("modified.pdf") { UseShellExecute = true });
    }
}
Imports IronPdf
Imports System
Imports System.Diagnostics

Class Program
    Shared Sub Main()
        Dim pdf = PdfDocument.FromFile("document.pdf")

        ' Extract information
        Console.WriteLine($"Page Count: {pdf.PageCount}")

        ' IronPDF can manipulate and save, then open with default viewer
        pdf.SaveAs("modified.pdf")

        ' Open with default PDF viewer
        Process.Start(New ProcessStartInfo("modified.pdf") With {.UseShellExecute = True})
    End Sub
End Class
$vbLabelText   $csharpLabel

O Sumatra PDF é excelente para visualizar PDFs, mas sua funcionalidade se limita a iniciar um processo externo com argumentos de linha de comando. Não é possível acessar o conteúdo do PDF programaticamente — apenas exibi-lo.

O IronPDF carrega o PDF com PdfDocument.FromFile(), dando a você acesso programático completo. Você pode ler propriedades como PageCount, manipular o documento, salvar as alterações e, em seguida, abrir com o visualizador de PDF padrão do sistema. A principal diferença é que o IronPDF fornece uma API real, e não apenas processa argumentos. Saiba mais em nossos tutoriais .

Exemplo 3: Extraindo texto de PDFs

Antes (Sumatra PDF):

// Sumatra PDF doesn't provide C# API for text extraction
// You would need to use command-line tools or other libraries
using System.Diagnostics;
using System.IO;

class Program
{
    static void Main()
    {
        // Sumatra PDF is a viewer, not a text extraction library
        // You'd need to use PDFBox, iTextSharp, or similar for extraction

        string pdfFile = "document.pdf";

        // This would require external tools like pdftotext
        ProcessStartInfo psi = new ProcessStartInfo
        {
            FileName = "pdftotext.exe",
            Arguments = $"{pdfFile} output.txt",
            UseShellExecute = false
        };

        Process.Start(psi)?.WaitForExit();

        string extractedText = File.ReadAllText("output.txt");
        Console.WriteLine(extractedText);
    }
}
// Sumatra PDF doesn't provide C# API for text extraction
// You would need to use command-line tools or other libraries
using System.Diagnostics;
using System.IO;

class Program
{
    static void Main()
    {
        // Sumatra PDF is a viewer, not a text extraction library
        // You'd need to use PDFBox, iTextSharp, or similar for extraction

        string pdfFile = "document.pdf";

        // This would require external tools like pdftotext
        ProcessStartInfo psi = new ProcessStartInfo
        {
            FileName = "pdftotext.exe",
            Arguments = $"{pdfFile} output.txt",
            UseShellExecute = false
        };

        Process.Start(psi)?.WaitForExit();

        string extractedText = File.ReadAllText("output.txt");
        Console.WriteLine(extractedText);
    }
}
Imports System.Diagnostics
Imports System.IO

Class Program
    Shared Sub Main()
        ' Sumatra PDF is a viewer, not a text extraction library
        ' You'd need to use PDFBox, iTextSharp, or similar for extraction

        Dim pdfFile As String = "document.pdf"

        ' This would require external tools like pdftotext
        Dim psi As New ProcessStartInfo With {
            .FileName = "pdftotext.exe",
            .Arguments = $"{pdfFile} output.txt",
            .UseShellExecute = False
        }

        Process.Start(psi)?.WaitForExit()

        Dim extractedText As String = File.ReadAllText("output.txt")
        Console.WriteLine(extractedText)
    End Sub
End Class
$vbLabelText   $csharpLabel

Após (IronPDF):

// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Program
{
    static void Main()
    {
        var pdf = PdfDocument.FromFile("document.pdf");

        // Extract text from all pages
        string allText = pdf.ExtractAllText();
        Console.WriteLine("Extracted Text:");
        Console.WriteLine(allText);

        // Extract text from specific page
        string pageText = pdf.ExtractTextFromPage(0);
        Console.WriteLine($"\nFirst Page Text:\n{pageText}");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Program
{
    static void Main()
    {
        var pdf = PdfDocument.FromFile("document.pdf");

        // Extract text from all pages
        string allText = pdf.ExtractAllText();
        Console.WriteLine("Extracted Text:");
        Console.WriteLine(allText);

        // Extract text from specific page
        string pageText = pdf.ExtractTextFromPage(0);
        Console.WriteLine($"\nFirst Page Text:\n{pageText}");
    }
}
Imports IronPdf
Imports System

Class Program
    Shared Sub Main()
        Dim pdf = PdfDocument.FromFile("document.pdf")

        ' Extract text from all pages
        Dim allText As String = pdf.ExtractAllText()
        Console.WriteLine("Extracted Text:")
        Console.WriteLine(allText)

        ' Extract text from specific page
        Dim pageText As String = pdf.ExtractTextFromPage(0)
        Console.WriteLine(vbCrLf & "First Page Text:" & vbCrLf & pageText)
    End Sub
End Class
$vbLabelText   $csharpLabel

Sumatra PDF é um visualizador, não uma biblioteca de extração de texto. Para extrair texto, você deve usar ferramentas externas de linha de comando como pdftotext.exe, iniciar um processo, esperar que ele termine, ler o arquivo de saída e lidar com todas as operações de entrada/saída e limpeza de arquivos associadas.

O IronPDF oferece extração de texto nativa com ExtractAllText() para o documento inteiro ou ExtractTextFromPage(0) para páginas específicas. Sem processos externos, sem arquivos temporários, sem necessidade de limpeza.


Comparação de recursos

Recurso Sumatra PDF IronPDF
Criação : HTML para PDF Não Sim
URL para PDF Não Sim
Texto para PDF Não Sim
Converter imagem para PDF Não Sim
Manipulação : Mesclar PDFs Não Sim
Dividir PDFs Não Sim
Girar páginas Não Sim
Excluir páginas Não Sim
Reordenar páginas Não Sim
: Contente : Adicionar marcas d'água Não Sim
Adicionar cabeçalhos/rodapés Não Sim
Texto do carimbo Não Sim
Imagens de selos Não Sim
: Segurança : Proteção por senha Não Sim
Assinaturas digitais Não Sim
Criptografia Não Sim
Configurações de permissão Não Sim
Extração : Texto extraído Não Sim
Extrair imagens Não Sim
Plataforma : Windows Sim Sim
Linux Não Sim
macOS Não Sim
Aplicativos Web Não Sim
Azure/AWS Não Sim

Novas funcionalidades após a migração

Após migrar para o IronPDF, você obtém recursos que o Sumatra PDF não oferece:

Criação de PDF a partir de HTML

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(@"
    <html>
    <head><style>body { font-family: Arial; }</style></head>
    <body>
        <h1>Invoice #12345</h1>
        <p>Thank you for your purchase.</p>
    </body>
    </html>");

pdf.SaveAs("invoice.pdf");
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(@"
    <html>
    <head><style>body { font-family: Arial; }</style></head>
    <body>
        <h1>Invoice #12345</h1>
        <p>Thank you for your purchase.</p>
    </body>
    </html>");

pdf.SaveAs("invoice.pdf");
Dim renderer = New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf("
    <html>
    <head><style>body { font-family: Arial; }</style></head>
    <body>
        <h1>Invoice #12345</h1>
        <p>Thank you for your purchase.</p>
    </body>
    </html>")

pdf.SaveAs("invoice.pdf")
$vbLabelText   $csharpLabel

Fusão de PDFs

var pdf1 = PdfDocument.FromFile("chapter1.pdf");
var pdf2 = PdfDocument.FromFile("chapter2.pdf");
var pdf3 = PdfDocument.FromFile("chapter3.pdf");

var book = PdfDocument.Merge(pdf1, pdf2, pdf3);
book.SaveAs("complete_book.pdf");
var pdf1 = PdfDocument.FromFile("chapter1.pdf");
var pdf2 = PdfDocument.FromFile("chapter2.pdf");
var pdf3 = PdfDocument.FromFile("chapter3.pdf");

var book = PdfDocument.Merge(pdf1, pdf2, pdf3);
book.SaveAs("complete_book.pdf");
Dim pdf1 = PdfDocument.FromFile("chapter1.pdf")
Dim pdf2 = PdfDocument.FromFile("chapter2.pdf")
Dim pdf3 = PdfDocument.FromFile("chapter3.pdf")

Dim book = PdfDocument.Merge(pdf1, pdf2, pdf3)
book.SaveAs("complete_book.pdf")
$vbLabelText   $csharpLabel

Marcas d'água

var pdf = PdfDocument.FromFile("document.pdf");

pdf.ApplyWatermark(@"
    <div style='
        font-size: 60pt;
        color: rgba(255, 0, 0, 0.3);
        transform: rotate(-45deg);
    '>
        CONFIDENTIAL
    </div>");

pdf.SaveAs("watermarked.pdf");
var pdf = PdfDocument.FromFile("document.pdf");

pdf.ApplyWatermark(@"
    <div style='
        font-size: 60pt;
        color: rgba(255, 0, 0, 0.3);
        transform: rotate(-45deg);
    '>
        CONFIDENTIAL
    </div>");

pdf.SaveAs("watermarked.pdf");
Dim pdf = PdfDocument.FromFile("document.pdf")

pdf.ApplyWatermark("
    <div style='
        font-size: 60pt;
        color: rgba(255, 0, 0, 0.3);
        transform: rotate(-45deg);
    '>
        CONFIDENTIAL
    </div>")

pdf.SaveAs("watermarked.pdf")
$vbLabelText   $csharpLabel

Proteção por senha

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Sensitive Data</h1>");

pdf.SecuritySettings.OwnerPassword = "owner123";
pdf.SecuritySettings.UserPassword = "user456";
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SecuritySettings.AllowUserPrinting = PdfPrintSecurity.NoPrint;

pdf.SaveAs("protected.pdf");
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Sensitive Data</h1>");

pdf.SecuritySettings.OwnerPassword = "owner123";
pdf.SecuritySettings.UserPassword = "user456";
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SecuritySettings.AllowUserPrinting = PdfPrintSecurity.NoPrint;

pdf.SaveAs("protected.pdf");
Dim renderer As New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Sensitive Data</h1>")

pdf.SecuritySettings.OwnerPassword = "owner123"
pdf.SecuritySettings.UserPassword = "user456"
pdf.SecuritySettings.AllowUserCopyPasteContent = False
pdf.SecuritySettings.AllowUserPrinting = PdfPrintSecurity.NoPrint

pdf.SaveAs("protected.pdf")
$vbLabelText   $csharpLabel

Lista de verificação para migração

Pré-migração

  • Identificar todos os lançamentos de processos de Sumatra (Process.Start("SumatraPDF.exe", ...))
  • Fluxos de trabalho de impressão de documentos (-print-to-default argumentos)
  • Anote quaisquer argumentos de linha de comando do Sumatra utilizados.
  • Obtenha a chave de licença do IronPDF em IronPDF

Atualizações de código

  • Instale o pacote NuGet IronPdf
  • Remover o código do processo de Sumatra
  • Substitua Process.Start("SumatraPDF.exe", pdfPath) por PdfDocument.FromFile(pdfPath)
  • Substituir chamadas externas wkhtmltopdf.exe por ChromePdfRenderer.RenderHtmlAsPdf()
  • Substituir chamadas externas pdftotext.exe por pdf.ExtractAllText()
  • Substitua as chamadas de processo -print-to-default por pdf.Print()
  • Adicionar inicialização de licença na inicialização do aplicativo

Testando

  • Testar a qualidade da geração de PDFs
  • Verificar a funcionalidade de impressão
  • Testar em todas as plataformas alvo
  • Verificar se ainda não existe nenhuma dependência de Sumatra

Limpar

  • Remover Sumatra dos instaladores
  • Atualizar documentação
  • Remover Sumatra dos requisitos do sistema

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