Страницы

Поиск по вопросам

суббота, 30 ноября 2019 г.

Как сделать иллюзию того, что линия проходит в букву насквозь через отверстие, а не поверх нее

#css #html5 #svg #canvas #svg_animation




пример того как выглядит, а заголовок то что должно получиться
    


Ответы

Ответ 1



Сложный способ: Можно что-то подобное изобразить на канве, это конечно не буфер глубины, но подход в целом тот же. Тут еще необходимо поработать со смешиванием, для удаления черных пикселей рисуем текст на одной канве а линию на другой объединяем изображения, имитируя буфер глубины let ctx1 = canvas1.getContext('2d'), ctx2 = canvas2.getContext("2d"), w = canvas1.width, h = canvas1.height; requestAnimationFrame(draw) function draw(t) { requestAnimationFrame(draw) drawText(ctx1); drawLine(ctx2, t); composeImages(); } function composeImages(){ let imageData1 = ctx1.getImageData(0, 0, w, h); let imageData2 = ctx2.getImageData(0, 0, w, h); for (let x=0; x

Комментариев нет:

Отправить комментарий