Ir para o conteúdo do rodapé
AJUDA DO .NET

Cefsharp.WPF.NET Core (Como funciona para desenvolvedores)

Agora, os desenvolvedores podem integrar facilmente o poderoso mecanismo de navegador web do Chromium em seus aplicativos de desktop .NET e aplicativos WPF com o CefSharp, um inovador wrapper .NET em torno do Chromium Embedded Framework. O CefSharp possibilita aos desenvolvedores de aplicativos .NET experiências web avançadas em interfaces de desktop personalizadas, permitindo que eles aproveitem os recursos web e as ferramentas de desenvolvimento do Chromium sem dependências externas. Com sua ampla gama de novos recursos, como opções de personalização e controle sobre o comportamento do navegador, essa estrutura facilita a integração de tecnologias web contemporâneas como HTML5, CSS3 e JavaScript.

As interações e experiências dos usuários com conteúdo baseado na web em soluções para desktop são transformadas pela interoperabilidade multiplataforma e pelos recursos de interação com conteúdo da web do CefSharp, que aprimoram os programas de desktop e possibilitam experiências dinâmicas de navegação na web diretamente no ambiente do aplicativo. Neste artigo, vamos explorar mais a versão de código aberto do CefSharp através de trechos de código.

Como usar o CefSharp

  1. Crie um novo formulário do Windows a partir do projeto do Visual Studio.
  2. Instale a biblioteca CefSharp .
  3. Declare o objeto necessário para o CefSharp que esteja pronto para compilar de forma mínima.
  4. Insira o URL que precisa ser carregado.
  5. Execute o código.

Instale o CefSharp.WinForms:

  • Usar o Gerenciador de Pacotes NuGet do Visual Studio é o método mais fácil para instalar o CefSharp.
  • Inicie o projeto no Visual Studio.
  • No Explorador de Soluções, clique com o botão direito do mouse no seu projeto.
  • Selecione "Gerenciar pacotes NuGet ".
  • Acesse a aba "Procurar" e busque por "CefSharp".
  • Selecione o pacote CefSharp (CefSharp.Wpf, CefSharp.WinForms , etc.) mais adequado para o seu projeto.
  • Para incluir o pacote em seu projeto, clique em "Instalar".

Importância do CefSharp

CefSharp é um framework que transforma a maneira como os desenvolvedores criam aplicativos desktop e projetos de automação com recursos integrados de navegação na web, integrando facilmente o poder do mecanismo de navegador web Chromium em aplicativos .NET . Com a ajuda do CefSharp, podemos exibir conteúdo web remoto, incluindo interfaces de usuário incorporadas criadas com suporte a HTML5.

Pontos importantes a serem enfatizados em uma introdução ao CefSharp são:

  • O Chromium Embedded Framework (CEF) serve como estrutura para o CefSharp, permitindo a integração dos recursos do navegador Chromium em outros programas. Ao utilizar o projeto Chromium do Google, o CefSharp aprimora programas de desktop com recursos sofisticados da web.
  • Integração com .NET : CefSharp é um poderoso wrapper .NET para Cef. Isso facilita para os programadores usar C# ou outras linguagens .NET para integrar um navegador web rápido em seus aplicativos .NET para desktop.
  • Navegação na Web em aplicativos de desktop: Com o CefSharp, os desenvolvedores podem incorporar facilmente recursos de navegação na Web em seus programas de desktop. Essa funcionalidade oferece um mundo de possibilidades para os desenvolvedores, permitindo que eles incorporem material online em suas interfaces de usuário ou criem aplicativos de desktop exclusivos que sejam compatíveis com a web. Ele pode receber uma função de retorno quando eventos JavaScript são acionados.
  • Suporte a tecnologias web avançadas: Ao usar o CefSharp, os desenvolvedores podem aproveitar todos os recursos que o Chromium oferece, incluindo suporte aos padrões web mais recentes, como HTML5, CSS3, JavaScript, WebGL e outros padrões web modernos. Isso possibilita a inclusão de tecnologias web de ponta em programas para desktop. Flexibilidade e personalização: O CefSharp oferece aos desenvolvedores grande flexibilidade e possibilidades de personalização, permitindo que eles manipulem eventos, executem JavaScript, interajam com conteúdo online e modifiquem o comportamento do navegador para atender às necessidades específicas da aplicação. O CefSharp com WebGL, que utiliza OpenGL/DirectX para renderização acelerada por hardware, suporta conteúdo 3D.

Por meio do uso do CefSharp, os desenvolvedores podem aprimorar aplicativos de desktop, facilitando a experiência de navegação na web, incentivando a interação do usuário e fornecendo informações ricas e atualizadas dentro do ambiente do aplicativo.

Código de exemplo:

using System;
using System.Windows.Forms;
using CefSharp;
using CefSharp.WinForms;

namespace CefSharpExample
{
    public partial class MainForm : Form
    {
        private ChromiumWebBrowser chromeBrowser;

        public MainForm()
        {
            InitializeComponent();

            // Initialize CefSharp settings
            CefSettings settings = new CefSettings();
            Cef.Initialize(settings);

            // Create the ChromiumWebBrowser instance
            chromeBrowser = new ChromiumWebBrowser("https://ironpdf.com/"); // Load a URL

            // Add the ChromiumWebBrowser control to the form
            this.Controls.Add(chromeBrowser);
            chromeBrowser.Dock = DockStyle.Fill; // Fill the entire form

            // Handle when the browser component has finished loading
            chromeBrowser.LoadingStateChanged += ChromeBrowser_LoadingStateChanged;
        }

        private void ChromeBrowser_LoadingStateChanged(object sender, LoadingStateChangedEventArgs e)
        {
            if (!e.IsLoading)
            {
                // Page has finished loading
                // Perform actions after the page has loaded
                Console.WriteLine("Finished loading.");
            }
        }

        // Dispose of Cef resources when the form is closed
        private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
        {
            Cef.Shutdown();
        }
    }
}
using System;
using System.Windows.Forms;
using CefSharp;
using CefSharp.WinForms;

namespace CefSharpExample
{
    public partial class MainForm : Form
    {
        private ChromiumWebBrowser chromeBrowser;

        public MainForm()
        {
            InitializeComponent();

            // Initialize CefSharp settings
            CefSettings settings = new CefSettings();
            Cef.Initialize(settings);

            // Create the ChromiumWebBrowser instance
            chromeBrowser = new ChromiumWebBrowser("https://ironpdf.com/"); // Load a URL

            // Add the ChromiumWebBrowser control to the form
            this.Controls.Add(chromeBrowser);
            chromeBrowser.Dock = DockStyle.Fill; // Fill the entire form

            // Handle when the browser component has finished loading
            chromeBrowser.LoadingStateChanged += ChromeBrowser_LoadingStateChanged;
        }

        private void ChromeBrowser_LoadingStateChanged(object sender, LoadingStateChangedEventArgs e)
        {
            if (!e.IsLoading)
            {
                // Page has finished loading
                // Perform actions after the page has loaded
                Console.WriteLine("Finished loading.");
            }
        }

        // Dispose of Cef resources when the form is closed
        private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
        {
            Cef.Shutdown();
        }
    }
}
Imports System
Imports System.Windows.Forms
Imports CefSharp
Imports CefSharp.WinForms

Namespace CefSharpExample
	Partial Public Class MainForm
		Inherits Form

		Private chromeBrowser As ChromiumWebBrowser

		Public Sub New()
			InitializeComponent()

			' Initialize CefSharp settings
			Dim settings As New CefSettings()
			Cef.Initialize(settings)

			' Create the ChromiumWebBrowser instance
			chromeBrowser = New ChromiumWebBrowser("https://ironpdf.com/") ' Load a URL

			' Add the ChromiumWebBrowser control to the form
			Me.Controls.Add(chromeBrowser)
			chromeBrowser.Dock = DockStyle.Fill ' Fill the entire form

			' Handle when the browser component has finished loading
			AddHandler chromeBrowser.LoadingStateChanged, AddressOf ChromeBrowser_LoadingStateChanged
		End Sub

		Private Sub ChromeBrowser_LoadingStateChanged(ByVal sender As Object, ByVal e As LoadingStateChangedEventArgs)
			If Not e.IsLoading Then
				' Page has finished loading
				' Perform actions after the page has loaded
				Console.WriteLine("Finished loading.")
			End If
		End Sub

		' Dispose of Cef resources when the form is closed
		Private Sub MainForm_FormClosing(ByVal sender As Object, ByVal e As FormClosingEventArgs)
			Cef.Shutdown()
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

Este código utiliza o CefSharp para desenvolver uma aplicação WinForms básica com um navegador web incorporado baseado no Chromium. Segue uma explicação:

  • Inicialize as configurações do CefSharp usando CefSettings.
  • ChromiumWebBrowser: Esta classe representa o controle do navegador web fornecido pelo CefSharp. O evento LoadingStateChanged lida com as mudanças no estado de carregamento do navegador, por exemplo, quando uma página termina de carregar. O evento MainForm_FormClosing garante que os recursos do Cef sejam devidamente desativados após o fechamento do formulário.

Para um exemplo básico, veja o Projeto de Exemplo Mínimo no GitHub , com aplicativos criados usando CefSharp que já podem ser compilados. Exemplos de projetos mais complexos estão disponíveis no código-fonte do projeto.

CefSharp com IronPDF

A integração dos recursos de geração de PDF do IronPDF com o navegador Chromium Embedded Framework (CEF) do CefSharp requer o uso conjunto do CefSharp e do IronPDF em uma aplicação .NET . No entanto, na versão mais recente, de janeiro de 2022, não existe uma interface direta e pronta para uso entre o CefSharp e o IronPDF.

O principal objetivo do CefSharp é integrar o mecanismo do navegador web Chromium em programas .NET , permitindo que o conteúdo online seja exibido e que se possa interagir com ele através da interface do usuário do aplicativo. O CefSharp fornece controles de navegador para aplicativos WPF e Windows Forms.

Embora CefSharp e IronPDF não sejam diretamente integrados, os desenvolvedores ainda podem usar ambas as bibliotecas no mesmo contexto de aplicação.

O IronPDF se destaca na conversão de HTML para PDF , garantindo a preservação precisa dos layouts e estilos originais. É perfeito para criar PDFs a partir de conteúdo da web, como relatórios, faturas e documentação. Com suporte para arquivos HTML, URLs e strings HTML brutas, o IronPDF produz facilmente documentos PDF de alta qualidade.

using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        var renderer = new ChromePdfRenderer();

        // 1. Convert HTML String to PDF
        var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
        var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
        pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");

        // 2. Convert HTML File to PDF
        var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
        var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
        pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");

        // 3. Convert URL to PDF
        var url = "http://ironpdf.com"; // Specify the URL
        var pdfFromUrl = renderer.RenderUrlAsPdf(url);
        pdfFromUrl.SaveAs("URLToPDF.pdf");
    }
}
using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        var renderer = new ChromePdfRenderer();

        // 1. Convert HTML String to PDF
        var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
        var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
        pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");

        // 2. Convert HTML File to PDF
        var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
        var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
        pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");

        // 3. Convert URL to PDF
        var url = "http://ironpdf.com"; // Specify the URL
        var pdfFromUrl = renderer.RenderUrlAsPdf(url);
        pdfFromUrl.SaveAs("URLToPDF.pdf");
    }
}
Imports IronPdf

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		Dim renderer = New ChromePdfRenderer()

		' 1. Convert HTML String to PDF
		Dim htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>"
		Dim pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent)
		pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf")

		' 2. Convert HTML File to PDF
		Dim htmlFilePath = "path_to_your_html_file.html" ' Specify the path to your HTML file
		Dim pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath)
		pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf")

		' 3. Convert URL to PDF
		Dim url = "http://ironpdf.com" ' Specify the URL
		Dim pdfFromUrl = renderer.RenderUrlAsPdf(url)
		pdfFromUrl.SaveAs("URLToPDF.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

Instale o IronPDF

Para obter a biblioteca IronPDF , você precisa seguir os próximos passos. Insira o seguinte código no Gerenciador de Pacotes:

Install-Package IronPdf 
dotnet add package IronPdf
Install-Package IronPdf 
dotnet add package IronPdf
SHELL

CefSharp.Wpf.NetCore (Como funciona para desenvolvedores): Figura 1 - Instalar o IronPDF

Alternativamente, você pode usar o Gerenciador de Pacotes NuGet para procurar o pacote "IronPDF". Na lista de todos os pacotes NuGet relacionados ao IronPDF, escolha e baixe o pacote necessário.

CefSharp.Wpf.NetCore (Como funciona para desenvolvedores): Figura 2 - IronPDF

Usando o IronPDF no CefSharp em C

Para integrar o IronPDF com o CefSharp em uma aplicação C#, você precisa realizar duas etapas: utilizar o navegador baseado no Chromium fornecido pelo CefSharp para renderizar o conteúdo HTML e, em seguida, usar o IronPDF para converter essas informações HTML em um documento PDF. O exemplo a seguir demonstra como realizar essa integração:

using CefSharp;
using IronPdf;
using System;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace CefSharpIronPdfIntegration
{
    public partial class MainForm : Form
    {
        private ChromiumWebBrowser chromeBrowser;

        public MainForm()
        {
            InitializeComponent();

            // Initialize CefSharp
            CefSettings settings = new CefSettings();
            Cef.Initialize(settings);

            // Create the ChromiumWebBrowser instance
            chromeBrowser = new ChromiumWebBrowser("https://ironpdf.com/"); // Load a URL

            // Add the ChromiumWebBrowser control to the form
            this.Controls.Add(chromeBrowser);
            chromeBrowser.Dock = DockStyle.Fill; // Fill the entire form

            // Handle when the browser component has finished loading
            chromeBrowser.LoadingStateChanged += ChromeBrowser_LoadingStateChanged;
        }

        private async void ChromeBrowser_LoadingStateChanged(object sender, LoadingStateChangedEventArgs e)
        {
            if (!e.IsLoading)
            {
                // Page has finished loading
                // Capture HTML content after page load completes
                string htmlContent = await chromeBrowser.GetSourceAsync();

                // Use IronPDF to generate a PDF from the captured HTML content
                var Renderer = new IronPdf.HtmlToPdf();
                var PDF = Renderer.RenderHtmlAsPdf(htmlContent);
                PDF.SaveAs("Output.pdf"); // Save the generated PDF

                Console.WriteLine("PDF generated successfully.");
            }
        }

        // Dispose of Cef resources when the form is closed to avoid unnecessary memory usage
        private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
        {
            Cef.Shutdown();
        }
    }
}
using CefSharp;
using IronPdf;
using System;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace CefSharpIronPdfIntegration
{
    public partial class MainForm : Form
    {
        private ChromiumWebBrowser chromeBrowser;

        public MainForm()
        {
            InitializeComponent();

            // Initialize CefSharp
            CefSettings settings = new CefSettings();
            Cef.Initialize(settings);

            // Create the ChromiumWebBrowser instance
            chromeBrowser = new ChromiumWebBrowser("https://ironpdf.com/"); // Load a URL

            // Add the ChromiumWebBrowser control to the form
            this.Controls.Add(chromeBrowser);
            chromeBrowser.Dock = DockStyle.Fill; // Fill the entire form

            // Handle when the browser component has finished loading
            chromeBrowser.LoadingStateChanged += ChromeBrowser_LoadingStateChanged;
        }

        private async void ChromeBrowser_LoadingStateChanged(object sender, LoadingStateChangedEventArgs e)
        {
            if (!e.IsLoading)
            {
                // Page has finished loading
                // Capture HTML content after page load completes
                string htmlContent = await chromeBrowser.GetSourceAsync();

                // Use IronPDF to generate a PDF from the captured HTML content
                var Renderer = new IronPdf.HtmlToPdf();
                var PDF = Renderer.RenderHtmlAsPdf(htmlContent);
                PDF.SaveAs("Output.pdf"); // Save the generated PDF

                Console.WriteLine("PDF generated successfully.");
            }
        }

        // Dispose of Cef resources when the form is closed to avoid unnecessary memory usage
        private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
        {
            Cef.Shutdown();
        }
    }
}
Imports CefSharp
Imports IronPdf
Imports System
Imports System.Threading.Tasks
Imports System.Windows.Forms

Namespace CefSharpIronPdfIntegration
	Partial Public Class MainForm
		Inherits Form

		Private chromeBrowser As ChromiumWebBrowser

		Public Sub New()
			InitializeComponent()

			' Initialize CefSharp
			Dim settings As New CefSettings()
			Cef.Initialize(settings)

			' Create the ChromiumWebBrowser instance
			chromeBrowser = New ChromiumWebBrowser("https://ironpdf.com/") ' Load a URL

			' Add the ChromiumWebBrowser control to the form
			Me.Controls.Add(chromeBrowser)
			chromeBrowser.Dock = DockStyle.Fill ' Fill the entire form

			' Handle when the browser component has finished loading
			AddHandler chromeBrowser.LoadingStateChanged, AddressOf ChromeBrowser_LoadingStateChanged
		End Sub

		Private Async Sub ChromeBrowser_LoadingStateChanged(ByVal sender As Object, ByVal e As LoadingStateChangedEventArgs)
			If Not e.IsLoading Then
				' Page has finished loading
				' Capture HTML content after page load completes
				Dim htmlContent As String = Await chromeBrowser.GetSourceAsync()

				' Use IronPDF to generate a PDF from the captured HTML content
				Dim Renderer = New IronPdf.HtmlToPdf()
				Dim PDF = Renderer.RenderHtmlAsPdf(htmlContent)
				PDF.SaveAs("Output.pdf") ' Save the generated PDF

				Console.WriteLine("PDF generated successfully.")
			End If
		End Sub

		' Dispose of Cef resources when the form is closed to avoid unnecessary memory usage
		Private Sub MainForm_FormClosing(ByVal sender As Object, ByVal e As FormClosingEventArgs)
			Cef.Shutdown()
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

Este código demonstra uma integração simples onde o conteúdo HTML carregado no navegador Chromium é interceptado e o IronPDF é usado para transformá-lo em um documento PDF. Eis uma explicação:

  • Inicialize o CefSharp para integrar o navegador Chromium em um aplicativo Windows Forms.
  • ChromiumWebBrowser Controle: Este controle carrega uma URL específica (neste exemplo, "https://ironpdf.com/") no navegador e cria uma instância dela.
  • LoadingStateChanged Evento: Monitora o progresso de carregamento do navegador. Quando a página termina de carregar (e.IsLoading é falso), o ChromeBrowser captura de forma assíncrona o conteúdo HTML da página carregada usando GetSourceAsync().
  • Integração com IronPDF : O conteúdo HTML capturado (htmlContent) é convertido em um documento PDF usando o recurso HtmlToPdf do IronPDF. O PDF gerado é salvo como "Output.pdf".
  • Encerramento do formulário: Certifique-se de que os recursos do Cef sejam devidamente encerrados chamando Cef.Shutdown() após o fechamento do formulário.

CefSharp.Wpf.NetCore (Como funciona para desenvolvedores): Figura 3 - Saída

Este código demonstra uma integração simples onde o conteúdo HTML carregado no navegador Chromium é interceptado e então convertido em um documento PDF usando o IronPDF. Personalize o URL, o tratamento de erros e outros aspectos de acordo com as necessidades específicas da sua aplicação. Para obter mais informações sobre a documentação do IronPDF , consulte o pacote NuGet do IronPDF .

Conclusão

A integração do IronPDF com o CefSharp em uma aplicação C# abre novas possibilidades para o gerenciamento de documentos e informações online. Ao combinar os recursos de geração de PDF do IronPDF com o navegador baseado no Chromium fornecido pelo CefSharp, os desenvolvedores podem criar aplicativos flexíveis capazes de gerar documentos PDF de alta qualidade, incorporando conteúdo web dinâmico.

O pacote Lite do IronPDF está disponível por $799 e inclui um contrato de manutenção de software de um ano, opções de atualização, uma licença permanente e uma garantia de reembolso de trinta dias. Durante o período de teste de trinta dias, os usuários podem avaliar o produto em cenários reais com uma versão de teste com marca d'água. Para saber mais sobre o custo, licenciamento e versão gratuita do IronPDF, visite a página de Informações sobre Licenciamento do IronPDF . Para obter mais informações sobre a Iron Software, visite o site da Iron Software .

Perguntas frequentes

Como posso integrar um navegador web baseado no Chromium em meu aplicativo desktop .NET?

Você pode usar o CefSharp, um wrapper .NET para o Chromium Embedded Framework, para integrar facilmente um navegador web baseado no Chromium em seus aplicativos desktop .NET. Isso permite que você aproveite tecnologias web modernas, como HTML5, CSS3 e JavaScript.

Quais são os passos envolvidos na configuração do CefSharp em uma aplicação WPF?

Para configurar o CefSharp em uma aplicação WPF, comece criando um novo projeto no Visual Studio. Use o Gerenciador de Pacotes NuGet para instalar o pacote CefSharp.Wpf e, em seguida, configure as definições necessárias para incorporar o navegador Chromium à sua aplicação.

Como faço para converter conteúdo HTML renderizado em um navegador Chromium para um documento PDF?

Para converter conteúdo HTML renderizado em um navegador Chromium para PDF, você pode primeiro renderizar o HTML usando o CefSharp e, em seguida, usar a função HtmlToPdf do IronPDF para gerar um documento PDF.

O CefSharp pode ser usado em conjunto com ferramentas de geração de PDF em uma aplicação .NET?

Sim, o CefSharp pode ser usado em conjunto com ferramentas de geração de PDF como o IronPDF em uma aplicação .NET. Embora não haja integração direta, você pode utilizar ambos para renderizar conteúdo HTML e convertê-lo em PDFs.

Quais são os benefícios de integrar o CefSharp em uma aplicação .NET?

A integração do CefSharp em uma aplicação .NET oferece benefícios como a capacidade de exibir e interagir com conteúdo web moderno diretamente em aplicações desktop. Também permite que os desenvolvedores personalizem o comportamento do navegador e utilizem tecnologias web como HTML5, CSS3 e JavaScript.

Como posso solucionar problemas ao integrar o CefSharp com um aplicativo .NET?

Para solucionar problemas com a integração do CefSharp, certifique-se de que todos os pacotes NuGet estejam instalados corretamente, verifique a compatibilidade com a sua versão do .NET e verifique as configurações do seu projeto no Visual Studio.

É possível personalizar o comportamento do navegador Chromium em uma aplicação .NET?

Sim, o CefSharp permite que os desenvolvedores personalizem o comportamento do navegador Chromium integrado a um aplicativo .NET, oferecendo controle sobre as configurações do navegador e a capacidade de estender a funcionalidade com código personalizado.

Que tipo de projetos se beneficiam do uso conjunto de CefSharp e IronPDF?

Projetos que exigem a exibição de conteúdo web dinâmico e a geração de relatórios ou documentação em PDF diretamente a partir desse conteúdo se beneficiam do uso conjunto do CefSharp e do IronPDF. Essa combinação é ideal para aplicações que necessitam de recursos robustos de gerenciamento de documentos e renderização de conteúdo web.

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