Publicado em 2 de março de 2021
DotNetBrowser 2.4
O que há de novo
API de Impressão
A API de impressão está de volta - melhorada e reformulada. Agora você pode imprimir páginas e documentos, bem como guardar páginas Web em PDF silenciosamente a partir do código.
Com a nova API de impressão, você pode:
- selecionar um dispositivo de impressão;
- fornecer as definições de impressão necessárias, como o tamanho do papel, a orientação, os intervalos de páginas, etc;
- receber notificações quando a impressão estiver concluída;
- cancelar a impressão;
- salvar a página Web atualmente carregada num documento PDF e muito mais.
O exemplo seguinte demonstra como salvar a página Web atualmente carregada como um PDF:
// Dizer ao motor Chromium para efetuar a impressão de forma programática.
browser.RequestPrintHandler =
new Handler<RequestPrintParameters, RequestPrintResponse>(p =>
{
return RequestPrintResponse.Print();
});
// Este manipulador é utilizado para imprimir páginas Web normais de forma programática.
browser.PrintHtmlContentHandler
= new Handler<PrintHtmlContentParameters, PrintHtmlContentResponse>(p =>
{
string pdfFilePath = Path.GetFullPath("result.pdf");
// Obter o trabalho de impressão para a impressora PDF incorporada.
IPrintJob<PdfPrinter.IHtmlSettings> printJob = p.Printers.Pdf.PrintJob;
// Subscreve o seu evento PrintCompleted e mostra uma caixa de mensagem quando estiver concluído.
printJob.PrintCompleted += (sender, args) =>
{
BeginInvoke((Action) (() =>
{ MessageBox.Show("Impressão concluída: \n"+pdfFilePath); }));
};
// Aplicar as definições de impressão necessárias
printJob.Settings.Apply(s =>
{
// Ativar a impressão do cabeçalho e do rodapé.
s.PrintingHeaderFooterEnabled = true;
// Especifique o caminho para guardar o resultado.
s.PdfFilePath = pdfFilePath;
});
// Diga ao Chromium para utilizar a impressora PDF incorporada para impressão.
return PrintHtmlContentResponse.Print(p.Printers.Pdf);
});
// Carregue a página Web e aguarde até estar completamente carregada.
browser.Navigation.LoadUrl("teamdev.com").Wait();
// Inicie a impressão.
browser.MainFrame.Print();
Suporte para .NET 5
O DotNetBrowser foi testado e comprovado para se integrar com aplicações desktop .NET 5.
Melhorias
- A caixa de diálogo Pré-visualização de impressão foi cortada da parte superior do formulário e posicionada mais abaixo para melhorar a experiência do usuário.
- A propriedade
AuthenticateParameters.Realm
foi adicionada para fornecer o domínio do desafio de autenticação.
Problemas corrigidos
- Uso excessivo de CPU e GPU pelo processo nativo com várias guias com instâncias do WPF
BrowserView
no modo acelerado por hardware. - A falha do
BrowserView
do WPF no modo acelerado por hardware. - Poucos vazamentos de memória para registar/remover registro de objetos .NET através da Bridge JS-.NET.
- A tecla Tab não funcionando corretamente com o WPF
BrowserView
. - A rolagem de uma página parando se o cursor do mouse passar para fora do componente
BrowserView
do WPF no modo de renderização fora de tela. - A passagem do foco que entra no ciclo infinito ao apresentar um pop-up.
Solicitar licença de avaliação
Baixar DotNetBrowser 2.4 (.NET Framework)
Baixar DotNetBrowser 2.4 (.NET Core)
Siga @DotNetBrowser para obter todas as atualizações da biblioteca.
Assine o nosso RSS feed para receber atualizações instantâneas sobre novos lançamentos.