5

Я был очень удивлен, увидев, что сглаживание изображений в Internet Explorer 8 кажется значительно лучше, чем в Chrome и Firefox. На приведенном ниже снимке экрана показана главная страница google.com от 17 марта для Chrome и Explorer, расположенная рядом. Обратите внимание, что версия Chrome имеет очевидные лестницы слева от изображения и эффекты растеризации вверху:

Chrome и Explorer бок о бок - главная страница google.com 17 марта

Итак, мой вопрос:

Можно ли настроить сглаживание масштабирования изображения в Chrome (и / или Firefox) в соответствии с Internet Explorer?

Не было никакой разницы между 64-битной и 32-битной версиями Explorer. И не было никакой разницы между Chrome и Firefox. (Использование последних версий всех на 64-битной машине с Windows 7.)

Дополнительный вопрос (и мой реальный интерес): What benefits, if any, does Nvidia Optimus provide? Но мои тесты еще недостаточно продвинуты, чтобы поставить этот вопрос. Но первые результаты кажутся отрицательными. (Изменить: было любезно предложено, чтобы этот дополнительный вопрос не был связан и должен быть удален. Но я думаю, что это обеспечивает мотивацию этого иначе пушистого вопроса.)

1 ответ1

6

Глядя на исходный файл для изменения размера и фильтрации изображения в Chromium, выясняется, что фильтр, используемый для масштабирования изображений, является фильтром Ланцоша с радиусом 3. (см. функцию ResizeMethodToAlgorithmMethod , я думаю, что используется выбор по умолчанию, так как комментарии, кажется, лучше подходят для уменьшения масштаба). Ядро свертки определено в функции EvalLanczos в самом верху файла и не имеет никаких условий для каких-либо изменений после компиляции.

Если я не читаю код очень неправильно (см. Конструктор ResizeFilter), фильтр (и масштабирование) применяются одновременно по одному в одном направлении. Снимки экрана, похоже, указывают на то, что фильтрация IE является двухмерной и взвешивается по радиусу, а не по максимальному расстоянию по горизонтали / вертикали. (Это может быть ложное руководство, хотя.)

Я думаю, вы могли бы как-то определить, какой тип фильтрации IE выполняет, и переопределить его, либо просто заменив фильтр Ланцоша, либо (более причудливо) обновите остальную часть источника для вызова вашего фильтра. Последнее было бы необходимо, если вы не можете обойти проблему одномерности в одно время. Я бы не рекомендовал это делать, если только вы не испытываете особые чувства по поводу того, как ваш браузер улучшает изображения.

PS: масштабирование в Opera также соответствует вашему скриншоту Chrome.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .