Можностей, предоставляемых веб-разработчикам



Pdf көрінісі
бет192/232
Дата06.01.2022
өлшемі5,47 Mb.
#12231
1   ...   188   189   190   191   192   193   194   195   ...   232
Байланысты:
[Bryus Louson, Remi SHarp] Izuchaem HTML5. Bibliot(z-lib.org)

ОТ ГРАДУСОВ К РАДИАНАМ
Все методы arc, bezier и quadratic работают с радианами, поэтому тем из вас, кто привык де-
лать вычисления в градусах, придется преобразовывать их в радианы  Вот как это сделать на 
JavaScript:
var radians = degrees * Math PI / 180;
Во время рисования вы будете часто передавать методам значение в 360 градусов, что соот-
ветствует Math PI * 2, и 180 градусов, то есть Math PI 


Холст  •  169
В этом примере я создаю изображение на лету с помощью 
document.createElement
, и толь-
ко когда срабатывает событие 
onload
, я продолжаю строить узор для заливки. Перед тем 
как что-то делать с изображением, нужно обязательно дождаться завершения загрузки 
данных.
Когда изображение загружено, я могу определить стиль заполнения 
fillStyle
 с помощью 
метода 
createPattern
. В вызове метода — 
createPattern(this,
 
'repeat')
 — 
this
 отно-
сится к изображению, которое заставило сработать событие загрузки, однако в качестве 
источника можно указать, например, любой другой холст. Строка 
'repeat'
 соответствует 
синтаксису 
background-repeat
 в CSS; 
repeat-x

repeat-y
 и 
no-repeat
 тоже будут работать 
в этом методе.
Если вы измените размер элемента 
canvas
 в коде CSS, то при этом он просто растянется. 
Фактически с пикселами ничего не случится — задействуется только узел DOM, как видно 
на рис. 5.9. Если нарисовать что-то на холсте и поменять свойства 
height
 и 
width
 элемента 
canvas
 (скажем, вас не устраивает размер по умолчанию 300×150 пикселов), содержимое 
холста будет стерто, а состояние стилей заливки, обводки, толщины линии и т. п. сбросится. 
Фактически это обнуление холста — трюк или проблема, в зависимости от того, как на это 
посмотреть.


Достарыңызбен бөлісу:
1   ...   188   189   190   191   192   193   194   195   ...   232




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет