2010-08-28 21 views
6

muy rápido, siempre me pregunté si los navegadores de internet usan para representar las funciones de la API del sistema operativo para crear botones, magos de representación y, o lo hacen todo por su cuenta?¿Qué utilizan los navegadores de Internet para representar?

Primero creo que utiliza la API del sistema, pero hay algunos efectos como cuando la pantalla se desvanece en gris y se ve solo una ventana pequeña en el centro, ya sabes, el efecto utilizado en muchos álbumes de imágenes en línea, que realmente no cómo lograr usando, por ejemplo, solo llamadas Win32.

EDITAR: Para ser más exactos, sé que el dibujo final en la pantalla siempre usará la API del sistema, pero puede enviar la imagen pretratada como desee. Gracias.

+1

* (referencia) * [Wikipedia: motores de navegadores web] (http://en.wikipedia.org/wiki/Web_browser_engine) – Gordon

+0

No entiendo la pregunta: sí, el dibujo final en la pantalla siempre usará la API del sistema . Sí, hay un código específico para la implementación del navegador dentro de la implementación de cada navegador, que usa las API del sistema para representar lo que el navegador quiera procesar. Entonces, ¿cuál es la pregunta? – ChrisW

+0

Bueno, quizás una mejor formulación sería: ¿Los motores de procesamiento de navegador utilizan una API para crear botones, escribir texto, crear cuadros, etc., o renderizan todo esto por sí mismos usando la API del sistema operativo solo para mostrar realmente la imagen procesada en el ¿pantalla? Porque la representación completa de texto, gráficos y por lo tanto parece bastante difícil de escribir completamente usted mismo ... –

Respuesta

5

Los navegadores web usan sus propios motores de representación en lugar de la API del sistema operativo. El uso de la API del sistema operativo para representar botones depende totalmente de la decisión de diseño de un motor de renderizado en particular. Sin embargo, para ejecutar en varios sistemas operativos, estos motores prefieren su propio procesamiento para ofrecer el mismo aspecto en todas las plataformas.

  • Gecko, para Firefox
  • Trident, para Internet Explorer
  • Presto, para Opera
  • KHTML, para Konqueror
  • WebKit, por Safari de Apple y el navegador web de Google Chrome.

Ref: http://en.wikipedia.org/wiki/Web_browser_engine

+0

Gracias, si puedo ser más específico, por ejemplo, ¿alguno de estos motores usa algunas API GUI? Por ejemplo, para dibujar texto? ¿O incluso eso se maneja completamente por el motor de dibujo? –

1

Do motores de renderizado del navegador useOs API para crear botones, escribir texto, la creación de cajas, etc., o qué hacer todo esto por su cuenta utilizando la API del sistema operativo sólo para realmente mostrar la imagen renderizada en la pantalla?

he implementado algo de un motor de renderizado del navegador (véase, por ejemplo Table of Supported Elements y Supported Properties para obtener una lista de los elementos HTML y propiedades CSS que soporta).

I utilizar las API del sistema (APIs de .NET Framework, que son envolturas delgadas alrededor subyacentes O/S GDI API) a:

  • palabras de la medida (cadenas de texto)
  • palabras pintura
  • Draw líneas y cuadros
  • rectángulos llenan de color sólido

Estos son el tipo de funcionalidad de la API que está implementado por el W Indows GDI.

También hay algunas API de sistema (O/S o .NET) que utilizo, para dibujar botones y cuadros combinados (consulte Rewrite standard controls like edit, combo, etc?).

lástima pues, todo el renderizado de texto, gráficos y así parece bastante difícil de escribir por completo a sí mismo

Sí, la implementación de CSS y todo lo que tarda un tiempo.Has visto cuánto tardaron los equipos de desarrolladores de navegador en implementar: varios años calendario, muchos años-persona.

Cuestiones relacionadas