Introdução
Instalação
Guias
- Engine
- Profile
- Browser
- BrowserView
- Navegação
- Conteúdo
- DOM
- JavaScript
- Pop-ups
- Diálogos
- Downloads
- Extensões
- Rede
- Cache
- Cookies
- Proxy
- Autenticação
- Plugins
- Impressão
- Senhas
- Perfis de dados do Usuário
- Cartões de Crédito
- Mídia
- Área de transferência
- Zoom
- Corretor Ortográfico
- Implantação
- Chromium
Resolução de Problemas
Plugins
O JxBrowser suporta plugins Chromium. Este guia descreve como obter informações sobre todos os plugins Chromium instalados e disponíveis, como ativar ou desativar um determinado plugin numa página Web, etc.
Utilize Plugins
para obter informações sobre todos os plugins disponíveis e ativar/desativar plugins numa página web.
var plugins = profile.plugins();
val plugins = profile.plugins()
Por padrão, todos os plugins estão ativados.
Plugins Instalados
Para obter informações sobre todos os plugins instalados e disponíveis, utilize o seguinte código:
plugins.list().forEach(plugin -> {
var name = plugin.name();
var description = plugin.description();
var version = plugin.version();
});
plugins.list().forEach { plugin ->
val name = plugin.name()
val description = plugin.description()
val version = plugin.version()
}
Plugins de Filtragem
Sempre que uma página web precisa de acessar um plugin, o AllowPluginCallback
é invocado. Nesta chamada de retorno, você pode informar a página Web se o plugin solicitado é permitido.
O exemplo a seguir demonstra como negar todos os plugins com o tipo MIME application/pdf
:
plugins.set(AllowPluginCallback.class, (params) -> {
// Obtém plugins de tipos MIME.
var pluginMimeTypes = params.plugin().mimeTypes();
// Recusa todos os plugins com o tipo MIME "application/pdf".
if (pluginMimeTypes.contains(MimeType.of("application/pdf"))) {
return AllowPluginCallback.Response.deny();
}
return AllowPluginCallback.Response.allow();
});
plugins.register(AllowPluginCallback { params ->
// Obtém plugins de tipos MIME.
val pluginMimeTypes = params.plugin().mimeTypes()
// Recusa todos os plugins com o tipo MIME "application/pdf".
if (pluginMimeTypes.contains(MimeType("application/pdf"))) {
AllowPluginCallback.Response.deny()
} else {
AllowPluginCallback.Response.allow()
}
})
Visualizador de PDF
O JxBrowser suporta o plugin Chromium PDF Viewer incorporado. Você pode visualizar um arquivo PDF disponível num servidor Web remoto utilizando o URL do arquivo PDF ou um arquivo PDF localizado no seu sistema de arquivos local.
Se você precisar fazer o download de documentos PDF em vez de apresentá-los, então precisará desativar o visualizador de PDF.
Barra de Ferramentas do Visualizador de PDF
Por padrão, o PDF Viewer apresenta os controles incorporados, tais como botões de zoom, barra de ferramentas com o nome do arquivo, número de página, botões Rotate, Download e Print. Você pode ocultar estes controles adicionando #toolbar=0
ao final do URL.
Desativar o Visualizador de PDF
Por padrão, o visualizador de PDF incorporado está ativado. Para desativá-lo, utilize a seguinte API introduzida em 7.9:
plugins.settings().disablePdfViewer();
plugins.settings().disablePdfViewer()
PDF Protegido por Senha
Você pode abrir arquivos PDF protegidos por senha e fornecer a senha utilizando a caixa de diálogo padrão:
Desde 7.27 você pode definir a senha de forma programática utilizando RequestPdfDocumentPasswordCallback
:
browser.set(RequestPdfDocumentPasswordCallback.class, (params, tell) -> {
tell.password("oxford not brogues");
});
browser.register(RequestPdfDocumentPasswordCallback { params, tell ->
tell.password("oxford not brogues")
})
Adobe Flash
O Adobe Flash chegou ao fim da sua vida útil em dezembro de 2020. O Chromium removeu suporte para Adobe Flash a partir da versão 88. Assim, o Flash não é suportado no JxBrowser 7.13 e superior.
Plugins NPAPI
A partir da versão 49, o Chromium não suporta nenhum dos plugins NPAPI, incluindo Microsoft Silverlight e Java Applet. Portanto, o JxBrowser também não os suporta.
ActiveX
O ActiveX não é suportado pelo Chromium, portanto o JxBrowser também não o suporta.
Widevine
A partir da versão 7.4, o JxBrowser permite ativar Widevine através das opções Engine
.