¿Cómo puedo integrar Firefox en una aplicación GUI?
embedding (4)
¿Alguna vez alguien ha incrustado la tecnología del navegador web firefox en su propia aplicación GUI C / C ++ [no administrada] de la misma manera que IE se puede incrustar como un objeto COM? (Me gustaría hacer esto en Linux, no en Windows). ¿Hay "mejores" alternativas a Firefox? Estoy abierto a cualquier cosa, siempre que pueda usarlo con código que no sea GPL. Mis necesidades son bastante básicas; Solo necesito un análisis HTML fundamental y una visualización de archivos locales estáticos, pero aprovecharía la tecnología más sofisticada, si es que puedo obtenerla. Me gustaría poder usar JavaScript, pero puedo vivir sin eso.
Primero, debe diferenciar entre motor HTML y JavaScript Engine.
El motor de renderizado HTML de Firefox se llama Gecko. Y aquí hay una guía sobre la incrustación de Gecko en su aplicación .
El motor JavaScript de Firefox se llama SpiderMonkey y aquí está Cómo incrustar SpiderMonkey en su aplicación C
Echa un vistazo a webkitgtk . No es Gecko, sino basado en Webkit. Básicamente proporciona un widget de navegador web que se puede usar en aplicaciones GTK +. Si desea incrustar mozilla, hay cosas en los repositorios mercuriales para el repositorio de Mozilla que le permiten hacerlo, pero la última vez que revisé no parecía muy respaldada.
Es posible usar partes de Firefox (como el renderizador Gecko) en otras aplicaciones. Hay varios enfoques para esto, incluido wxWebConnect , un control de navegador web para wxWidgets . Véase también Embedding Gecko
Otra solución popular es WebKit . Nuevamente, hay varias formas de usar esto, incluyendo QtWebKit (un contenedor para el kit de herramientas Qt) y webkitgtk (ya mencionado por SB).
Eche un vistazo a CEF (Chromium Embedded Framework) . Es muy similar a WebKit y también tiene incorporados los motores HTML y JavaScript incrustados, pero tiene mejor compatibilidad con WebGL y HTML5 Canvas. Se lanza bajo la licencia BSD.