Сведения о вопросе

PIRLO

11:48, 13th August, 2020

Теги

CSS   JavaScript   Canvas   HTML    

Как растянуть изображение на канве *без* сглаживания (в webkit)

Просмотров: 317   Ответов: 2

Надо увеличить изображение в 2, 3, 4 и т.д. раз, причём, чтоб сохранялась пикселизация.

Что пробовал:
1) через css увеличить размер канвы. +) быстро -) есть сглаживание
2) mozImageSmoothingEnabled=false; drawImage(...). +) бысто, без сглаживания -) gecko only
3) getImageData/putImageData и увеличение руками. +) без сглаживания -) очевидно, медленней чем нативные методы.

Использую способ №3, в моём случае (раз-loop-ленные циклы, update по регионам) работает мгновенно.
Но!

В последнее время много говорят о смерти флеша и о безоговорочной победе html5. Так вот, во flash можно выключить сглаживание, а как же великий и могучий html5? Неужели в этом гиганте, убивающем флэш наповал, нельзя сделать такой вот примитив (т.е. чтоб кроссбраузерно)?

p.s. в некоторых местах забыл расставить тэги sarcasm.



  Сведения об ответе

nYU

01:19, 5th August, 2020

В Gecko еще и https://developer.mozilla.org/en/CSS/image-rendering имеется. Там пишут, что в webkit'е сего нема, но, быть может, уже имеется. Нужно проверять. + в svg сие, возможно, имеется.


  Сведения об ответе

ASER

22:54, 21st August, 2020

В вебките появилось webkitImageSmoothingEnabled.


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться