Можно ли передать строку base64 для определения значка внутри Manifest.json?

#html #dom #progressive-web-apps #w3c

#HTML #дом #progressive-веб-приложения #w3c

Вопрос:

Вот так:

 {
  "theme_color": "#2196f3",
  "icon": "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",
  "background_color": "#2196f3",
  "display": "browser",
  "scope": "/",
  "start_url": "/"
}
 

Также…
И если это сработает, будут ли какие-либо ограничения?
Какой браузер / платформа может не принять это?

Ответ №1:

Нет, я не верю, что это так.

Свойство icon также должно быть массивом объектов, содержащих src , type , и sizes , например:

 "icons": [
  {
    "src": "/images/icons-192.png",
    "type": "image/png",
    "sizes": "192x192"
  },
  {
    "src": "/images/icons-512.png",
    "type": "image/png",
    "sizes": "512x512"
  }
],
 

Дополнительную информацию см. в разделе Добавление манифеста веб-приложения в web.dev.

Ответ №2:

Да, ты можешь. Как уже было сказано, свойство ‘icons’ представляет собой массив, а в свойстве ‘src’ вы можете задать строку base64 в формате изображения данных png:

 "icons": [
  {
    "src": "data:image/png;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",
    "type": "image/png",
    "sizes": "192x192"
  },
  {
    "src": "data:image/png;base64,XXXXXXXX.......",
    "type": "image/png",
    "sizes": "512x512"
  }
],