JavaScript платно: описание, характеристики, примери, отзиви

Платното се състои от маркер за платно, но при позоваване на него се прави препратка към API, който включва набор от функции за чертане на линии, правоъгълници, кръгове, дъги, мащабиране и преобразуване на графични елементи. В случай на платно на уеб страница, това е правоъгълна област за растерно изображение, в което на всяка координата се присвоява цвят. Canvas javascript не създава векторни обекти в стила на други среди, като SVG или Flash, а само растерни като картини. Всъщност можете да качите изображение в Canvas и да го манипулирате с пиксели един по един. Услугата наскоро бе включена в HTML и не се поддържа от стари браузъри. За тях е удобно да предоставят алтернативно съдържание под формата на фиксиран чертеж или обяснителен текст.


Технология Canvas vs. Flash

Canvas javascript (canvas) е стандартен HTML5 елемент, управляван от модерни браузъри. Flash е технологична компания, която изисква инсталирането на приставка. Днес повечето браузъри имат инсталиран Flash plugin, така както преди, има и такива, които не поддържат Canvas. Въпреки това, динамиката на развитието предполага, че ситуацията може да се промени много бързо, тъй като новите платформи вече не работят с "Flash". Въпреки това, повечето графични дизайнери смятат, че работата с Flash е по-лесна и по-бърза, отколкото с webbed, тъй като има усъвършенствана среда за графичен дизайн (Adobe Flash CS6), а процесът на създаване на графики на Canvas javascript е малко по-труден. Ситуацията трябва да се промени с появата на рамки хартия. Но имайте предвид, че новатаУслугата е безплатна и отворена, така че не е нужно да харчите пари за лиценз. Flash е собственост на Adobe. Това се обяснява с факта, че днес с негова помощ все още се създават сложни игри.


Ако искате да използвате графики в множество резолюции, векторната технология „Flash“ е по-ефективна от растерната на Canvas. Но за повечето уеб графики кърпата се зарежда по-бързо. Flash изисква повече ресурси, за да работи, така че на мобилно устройство, JavaScript на Canvas има значително предимство. Платното ви позволява да създавате графики от всякакъв вид, от права линия до интерактивни игри, а също така ви позволява да редактирате изображения, да променяте тона и границите.

Атрибут Атрибут

Canvas е HTML елемент, който ви позволява динамично да създавате графики и скриптови анимации. Неговите приложения имат широк спектър от приложения: игри, интерфейси, графични редактори, динамични ефекти и 3D приложения. Основните предимства на услугата - не изисква допълнителен плъгин, само един браузър, който поддържа javascript html5 Canvas: Safari, Chrome, Firefox, Opera и Internet Explorer. Например, за да нарисувате два правоъгълника с различни цветове, използвайте няколко функции на javascript API. Първо, пространството на платното на страницата е запазено, използвайки HTML етикета, и след това рисувате фигурите. Поставянето на javascript html5 Canvas елемента е показано на снимката.
Незадължително, други, като стил, се поставят, за да посочат атрибутите на таблицата и да определят техния външен вид. След това проверете съвместимостта на браузъра с Canvas, предпишете кода.
С getElementById () получавате елемента на страницата, който еПредава се като параметър Canvas. След това те получават достъп до 2D контекста на платното и изпълняват толкова методи, колкото са необходими в контекста за рисуване на анимационни елементи на javascript.
След това напишете пълния код на изпълнение.

Картина на правоъгълник

За да начертаете прост сив правоъгълник 450 x 350 пиксела, който покрива цялото платно, напишете кода.
Ширината и височината на данните определят размера на повърхността. Позицията, заемана от тази уеб страница, се определя от мястото, където е написан HTML елементът. Примери за javascript платно могат да бъдат поставени в таблица или в плаващ контейнер. Ако платформата не поддържа стила, ще се появи текстът „Вашият браузър не поддържа Canvas“. След това поставете маркер с улавянето на картина, която създава платно. За да можете да препращате към конкретен елемент в javascript кода, е удобно да му дадете идентификатор, като id = miCanvas. Когато даден елемент е създаден, изпълнете JS кода, който прави чертежите. Това трябва да стане след създаването на платното. Един от начините да направите това е да използвате свойството onload. След като страницата е заредена, функцията drawCanvas () се изпълнява. Първото нещо, което трябва да направите, е да получите възела DOM, като използвате инструкциите: var canvas = document.getElementById ('miCanvas') и прехвърлете като параметър елемента на елемента canvas. Тогава те получават JavaScript контекст обект Canvas text: var context = canvas.getContext ('2d').
Има два възможни контекста: 2d за рисуване в две измерения и webgl за изображение в три измерения. С обекта на контекста можете да приложите всички функции и свойства, свързани с него.

Координатна система

Координатният произход е точката (00), стойностите на X координатите отиват надясно, а координатите на Y - надолу, за разлика от традиционните координатни системи. Местоположението на обекта се извършва по отношение на произхода, например правоъгълникът е в позицията (9070). Canvas canvas е с ширина 450 и 350 във височина за линията: context.fillRect (00450 350). Ще бъде начертана пълна фигура с горен десен ъгъл в точката (00), ширина 450 и височина 350, т.е. тя ще поеме цялото платно на примера. За да начертаете правоъгълник без запълване, приложите: strokeRect (x, y, ширина, височина). Canvas няма определени функции за рисуване на полигони, включително триъгълници и петоъгълници (с изключение на правоъгълника). Методът на работа с платно е да се рисуват фигури или пътеки. За да създадете форма, първоначално инициализирайте beginPath (), след това поставете курсора в началната точка, използвайки moveTo (x, y). Ще се създаде форма с различни възможности за образа. Линиите, дъгите и кривите могат да се изпълняват с помощта на: stroke (), който извлича отворена или затворена форма без пълнене. Ако сравните последната точка от първата, формулярът ще бъде затворен. Fill () изготвя затворена форма за запълване. Ако е била отворена, функцията създава права линия от последната до началната точка, за да я завърши.

Инструмент за права линия

Използвайте closePath (), за да създадете права линия от последната до началната точка.
Можете да изпълните предишния код, като го копирате и поставите в полето, след което щракнете върху бутона "Покажи писмения код".
] За изобразяване на кривитеИма три основни метода:
  • arcos, дъги.
  • Curvas de Bezier, криви Безие.
  • Curvas cuadr? Ticas, квадратични криви.
  • Амплитудата на дъгата ще премине от началния ъгъл към крайния. Те се измерват в радиани. Ако посоката на въртене има истинска логическа стойност, дъгата върви обратно на часовниковата стрелка. Кривите на Безие са вид линии, които са много често използвани в дизайна и изискват първоначални, крайни, а също и някои контролни точки. Най-добрият начин да се запознаете с кривите на Безие е да ги нарисувате с програми като Illustrator или Inkscape (безплатно). Можете също да използвате симулатор bezierCurveTo (cp1x, cp1y, cp2x, cp2y, x, y), където cp1x, cp1y е координатите на първата контролна точка, cp2x, cp2y е втората, и x и y координатите на крайната точка на кривата. Квадратичните криви са подобни на предишните, но имат само една контролна точка - квадратична крива (cp1x, cp1y, x, y), където cp1x, cp1y са първичните координати, а x и y са крайни.

    Комбиниране на форми и стилове

    За изчертаване на формата инициализирайте функцията beginPath (), поставете курсора (moveTo (x, y)), за да създадете форма. За да я затворите по избор, използвайте closePath (). Draw чрез fill () се изпълнява без запълване и инсулт. Този процес може да се повтори толкова пъти, колкото е необходимо. Процесът е подобен на този при рисуване на молив върху лист хартия. Всеки път, когато завършвате инсулта и счупвате молива от хартията, за да го поставите в новата позиция, подобни действия се извършват с moveTo (x, y).
    С изключение на общата формула за конструиране, има функции за рисуване на правоъгълници (strokeRect (x, y, width, height) и fillRect (x, y, ширина, височина), коитозапочва с moveTo (x, y) и завършва с точка или запълване. В този случай всички необходими функции на изображението се комбинират. Всеки път, когато инициализирате формуляр, Canvas отваря структурата на данните под формата на списък, който се попълва с инструкцията, когато се изпълнят stroke () или fill ().

    Рисуване на линейни градиенти

    Canvas javascript create има функцията createLinearGradient (x_ini, y_ini, x_fin и and_fin). Той дава линеен градиент, използвайки линия, определена от началната точка (x_ini, y_ini) и крайната (x_fin, y_fin). Посоката на тази линия показва движението на градиента. Например, ако искате градиентът да върви във вертикална посока, създайте вертикална линия. Определя първия си цвят. Дължината показва интензивността на градиента. Ако използвате програми като Photoshop, операцията ще бъде същата. За да завършите дефиницията на градиент, задайте цветовете, които го правят, използвайки функцията: addColorStop (позиция, цвят). Параметърът на позицията определя кое място се прилага цветът, посочен от втория параметър. Позицията се изразява с число от нула до едно. За формиране на градиент са необходими поне два различни цвята. Например, ако искате да започне с червено и завърши с бяло:
  • addColorStop (0 "червено");
  • addColorStop (1 "бяло").
  • За да начертае радиалните градиенти, Canvas има функцията: createRadialGradient (x1 y1 r1 x2 y2 r2). Той определя радиален градиент, базиран на два кръга, всеки от които с позицията на своя център (x, y) и радиус (r). Ако центърът на кръговете на двете е един и същ, то ефектът ще бъде еднороден, докато в другия случай ще се създаде ефектът на сферата,зависи от радиуса.

    Работа със снимки

    Canvas може да обработва изображения в най-често срещаните формати (GIF, JPEG, PNG) и има контролни функции - размер на пикселите и ротация. Това ви дава големи възможности за обработка на изображения с кърпа. Можете да приложите изображения като фон, да начертаете миниатюри, да увеличавате и променяте цветовете. Първата стъпка в работата с платно е качването на снимка. Има няколко начина да направите това. Докато не бъде напълно заредена, потребителят няма да може да работи с него. Двата най-често срещани начина за изтегляне:
  • Обектът е вътре в javascript. Използвайки ново изображение, създайте копие на обекта Image, след което му задайте име и започнете да го използвате след зареждане.
  • Изображение на уеб страница. С маркер изтеглете снимка от тялото на сайта и му задайте идентификатор, например име, за да го отворите от използвания document.getElementById.
  • Ако искате тя да се вижда само след обработка, използвайте скритото свойство в маркера. Има и други начини за изтегляне, например, за използване на създадената картина в друг обект. Тя може да бъде изтеглена и чрез данните за метода: url. Когато изтеглянето приключи, можете да рисувате с drawImage, който поддържа няколко формата: drawImage (изображения, x, y). Начертайте изображение върху платното, като поставите горния ляв ъгъл в координатите (x, y). javascript canvas drawimage (изображение, x, y, ширина, височина) ви позволява да промените размера на изображението. Първите три параметъра имат същото значение като впредишния случай. Ширина и височина определят размера (в пиксели), в който ще се показва графиката. Ако оформлението е по-голямо от оригинала, изображението се увеличава, а ако е по-малко - миниатюризацията. Ако искате изображението да не се деформира, трябва да поддържате съотношението ширина и височина на оригиналното изображение. DrawImage (изображение, x1 y1 width1 височина1 x2 y2 width2 height2) мащабира част от картината. С тази функция съдържанието на цветната рамка ще се покаже на платното и ще бъде включено като фон. Тази функция заема част от оригиналното изображение, дефинирана като x1 y1 (ширина 1 височина 1) и черпи тази част в различно положение (x2 y2) и в различна скала (ширина 2 височина 2). В този случай създайте увеличение на областта, защото стойностите на ширина и височина 2 са по-големи от 1.

    Пример за използване на ClearRect

    ClearRect рисува прозрачен правоъгълник върху платното. За разлика от функциите rect, strokeRect или fillRect, които изобразяват цветна форма. Не се бърка с рисуването на бял правоъгълник. Фоновото изображение е настроено на CSS, върху платното се появява черен правоъгълник. Ако е затворен с бял фон, прозрачността ще бъде скрита. Вместо това най-добре е да използвате функцията clearRect, за да нарисувате "чисто" правоъгълник на Canvas javascript в мрежата, като по този начин позволявате на изображенията да блестят.
    Можете също така да почистите платното чрез задаване на ширина или височина - просто ги поставете на платното, като му придадете нова стойност:
  • //canvas.width = 600;
  • canvas.width = canvas.width.
  • ​​Това нулира матрицататрансформация. Canvas javascript clearrect почиства всички пиксели на платно в даден правоъгълник (x, y, w, h) до прозрачно черно. Функцията clearCanvas () може да се използва за фина настройка на чертежа и текста на платното. Тази функция е полезна, когато искате да изтриете целия контекст, за да добавите нови чертежи към празно оформление. Той трябва да го почиства всеки път, когато се движи мишката и се изтегля нова линия. При натискане на бутона "Задаване на номер", на платното се показва случайно число от 1 до 100. Бутонът "Изчистване" премахва целия контекст, така че числата да не се показват един над друг. Това ще се случи, ако отново натиснете бутона "Задаване на номер". Синтаксисът в този случай е: context.clearRect (x, y, w, h). Това е пример за чертежен код в напълнен правоъгълник на Canvas, използвайки fillRect, който трябва да изчисти централната част. FillRect прилага ширината и височината на платното, докато clearRect използва проценти от тези стойности, за да създаде рамка. В този пример се показва единствено методът на Clear Canvas javascript. X, y, ширината и височината на почистения правоъгълник са показани в проценти. Последователност на пречистването:
  • Изтеглете платното и начертайте линии върху него.
  • Call clearRect ().
  • Промяна на размера чрез манипулиране на височината и ширината на мрежата и пикселовите div елементи с съотношение 1: 1.
  • Потребителски рецензии

    и Storyline. Затова е много удобно за дизайнера. Отзивите на потребителите за функционалността на услугата за работа с javascript на Canvasследното:
  • Използва прост редактор на текстов файл, който може лесно да създава текст, вгражда изображения и видеоклипове и да подобрява текста с HTML редактор. Това дава на дизайнера възможността да създава повече от просто текст на страницата.
  • Работи чудесно с доставчици от трети страни, като ги интегрира директно в Canvas. Това свойство ви позволява да използвате допълнителни инструменти като McGraw-Hill Connect, Kaltura, Box Office 365 Google Drive и много други.
  • Платното има каскаден подход към организационния дизайн на нивото на сметката на корена или като част от всеки допълнителен. Всяко под-наследява атрибутите на своите "родители". Управлението на всички тези елементи стана изключително лесно благодарение на използването на SIS-импорт на .csv файлове. Инструкцията постоянно актуализира документацията на услугата.
  • Canvas е система за управление на обучението, която може да се използва от малка организация, която предлага само няколко урока на местно ниво или гигантска организация, която предлага хиляди курсове за стотици хиляди студенти по целия свят.
  • Мащабируемостта на инстанцията Canvas е много мощна. Услугата е интуитивна и добре настроена.
  • Осигурява гъвкава платформа, където потребителят може да споделя опит с други хора. Подходящ за интегриране с много полезни услуги като Drive. Това е доста удобно, защото можете да използвате само необходимите функции.
  • Интегриране с Gmail Drive и може да бъде по-интуитивно.
  • Отлично обслужване на клиентите. Добавени са нови продукти и подобрения.
  • Платното е много гъвкаво, позволявадублира отделните задачи.
  • Canvas се интегрира добре с Crocodoc за онлайн коментар и оценка на произведения, има отлични функции за внос.
  • Една от важните функции, които потребителите биха искали да видят, е възможността да анотират PDF файлове или други документи на уеб платформата Canvas. В момента няма такива функции в уеб версията.

    Свързани публикации