Я хотел бы получить доступ к файлам с определенным разрешением в мультиразрешении .ico из javascript (или HTML, если на то пошло) - PullRequest
3 голосов
/ 05 мая 2010

Я создал замечательный мультиразрешение favicon.ico, содержащее значки с разрешением 16x16, 32x32 и 48x48. Они загружают все как в браузерах или когда сайт сохраняется на рабочем столе.

Однако это же изображение также используется на веб-сайте (в частности, в виде значка на панели инструментов). В настоящее время значок 16x16 также сохраняется в виде png для отображения на самой веб-странице.

Это кажется мне ненужной избыточностью. Я хотел бы отобразить сам файл favicon.ico на странице и удалить png.

Однако простой выбор файла ico приводит к отображению файла с наибольшим разрешением в контейнере .ico (проверено только в Ghrome для Mac).

Можно ли выбрать отдельный значок в контейнере .ico? Было бы здорово, если бы у него был синтаксис типа <img src="favicon.ico:16"/>.

Если это не поддерживается большинством браузеров, возможно, будет возможно проанализировать файл .ico с помощью javascript и выбрать правильный фрагмент данных для отображения? Я не очень хочу этого делать, но мне хотелось бы узнать, возможно ли это.

Спасибо.

1 Ответ

0 голосов
/ 05 мая 2010

Я не думаю, что есть способ сделать это в javascript, вам лучше всего разорвать его в php или на другом сервере, тогда вы можете кодировать в base 64 и включить закодированный текст img tag.

Но я считаю, что это немного излишне и полезно только в том случае, если изображение может сильно измениться. Затем вы должны учитывать стоимость обработки страницы, хотя вы могли бы разработать решение для кэширования.

Итак ... Я бы просто придерживался png на данный момент - это небольшой, но приемлемый уровень избыточности.

M

...