Un tema es un tipo especial de extensión que cambia la apariencia del navegador. Los temas son empaquetadas como extensiones normales, pero no contienen código JavaScript ni HTML.
Los temas se cargan a Chrome Web Store con el mismo procedimiento que una extensión. Durante la carga, deberás seleccionar una categoría. Encontrarás una lista de categorías de temas en la documentación de Chrome Web Store en Prácticas recomendadas.
Puedes encontrar y probar muchos temas en Chrome Web Store.
Manifiesto
Este es un archivo manifest.json
de ejemplo para un tema:
{
"manifest_version": 3,
"version": "2.6",
"name": "camo theme",
"theme": {
"images" : {
"theme_frame" : "images/theme_frame_camo.png",
"theme_frame_overlay" : "images/theme_frame_stripe.png",
"theme_toolbar" : "images/theme_toolbar_camo.png",
"theme_ntp_background" : "images/theme_ntp_background_norepeat.png",
"theme_ntp_attribution" : "images/attribution.png"
},
"colors" : {
"frame" : [71, 105, 91],
"toolbar" : [207, 221, 192],
"ntp_text" : [20, 40, 0],
"ntp_link" : [36, 70, 0],
"ntp_section" : [207, 221, 192],
"button_background" : [255, 255, 255]
},
"tints" : {
"buttons" : [0.33, 0.5, 0.47]
},
"properties" : {
"ntp_background_alignment" : "bottom"
}
}
}
colores
Los colores están en formato RGB. Para encontrar las cadenas que puedes usar dentro de los “colores” consulta, consulta
kOverwritableColorTable
imágenes
Los recursos de imagen usan rutas relativas a la raíz de la extensión. Puedes anular cualquiera de las imágenes
especificadas por las cadenas en kPersistingImages
. Todas las imágenes deben almacenarse en formato PNG
formato o no se procesarán correctamente.
properties
Este campo te permite especificar propiedades como alineación o repetición de fondo y una
logotipo alternativo. Para ver las propiedades y los valores que pueden tener, consulta kDisplayProperties
.
tintes
Puedes especificar los tonos que se aplicarán a partes de la IU, como los botones, el marco y el
en segundo plano. Google Chrome admite tonos, no imágenes, porque las imágenes no funcionan en todas las plataformas
y son frágiles cuando se agregan botones nuevos. Para encontrar las cadenas que puedes usar dentro del
“tonos” consulta kTintTable
.
Los tonos están en formato tono, saturación y luminosidad (HSL), con números de punto flotante en el intervalo 0 - 1.0:
- Tono es un valor absoluto, donde 0 y 1 son rojos.
- La saturación es relativa a la imagen proporcionada actualmente. 0.5 es sin cambios, 0 es totalmente desaturada, y 1 es saturación completa.
- La luz también es relativa, con 0.5 que indica sin cambios, 0 que todos los píxeles son negros y 1 que todos los píxeles son negros. píxeles en blanco.
Como alternativa, puedes usar -1.0
para cualquiera de los valores HSL a fin de especificar no change.