Introdução
O Chromium é um projeto de código aberto para criar navegadores multiplataforma, servindo de base para o Chrome e o Edge. O Chromium Embedded Framework (CEF) permite incorporar essa tecnologia em aplicativos do usuário no Linux, macOS e Windows.
Neste artigo, utilizaremos o CEF4Delphi. Apesar do nome, ele possui suporte completo para Lazarus e Delphi, sendo a escolha ideal para substituir versões obsoletas como o fpCEF3.
Instalando-o no Lazarus-IDE
A instalação é feita via pacotes. Siga os passos:
1. Acesse o repositório: https://github.com/salvadordf/CEF4Delphi
2. No terminal, execute os comandos abaixo para clonar o componente:
cd C:\lazarus\components
git clone https://github.com/salvadordf/CEF4Delphi.git
cd CEF4Delphi
3. No Lazarus, abra o pacote cef4delphi_lazarus.lpk em Package | Open Package File, compile e instale. Se a IDE sugerir o DCPCrypt, aceite a inclusão.
Criando o Primeiro Projeto
Recomenda-se iniciar pelo demo SimpleBrowser. Copie a pasta do demo para seu diretório de projetos e ajuste as opções de compilação para o Target desejado (ex: Win32).
É vital que o runtime do CEF baixado seja compatível com a arquitetura (32 ou 64 bits) do executável gerado.
Download e Preparação do Runtime
Baixe os binários (tarballs) na página oficial. Você precisará apenas dos arquivos das pastas Release e Resources.
Copie os arquivos para a pasta do seu projeto seguindo a estrutura correta.
Vídeo Tutorial: Assista ao procedimento de configuração externa.
Abrir Vídeo em Nova Aba
Exemplo de Inicialização (Pascal)
O código do CEF exige inicialização prévia no arquivo .lpi para evitar erros de memória:
program SimpleBrowser;
{$I cef.inc}
uses Forms, Interfaces, uCEFApplication;
begin
GlobalCEFApp := TCefApplication.Create;
// Define pasta de locales dinamicamente
GlobalCEFApp.LocalesDirPath := UTF8Decode(GetCurrentDir + PathDelim + 'locales');
if GlobalCEFApp.StartMainProcess then
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end;
GlobalCEFApp.Free;
end.
Conclusão
O CEF4Delphi é um componente robusto e moderno. Embora sua configuração inicial seja mais complexa que a do antigo TWebbrowser, ele oferece um navegador completo e atualizado para suas aplicações Pascal, sendo excelente para navegação avançada e automação de bots.