Canvas API

<canvas> एलीमेंट HTML पृष्ठ में बिटमैप क्षेत्र को परिभाषित करता है。

Canvas API JavaScript को चित्र को चित्रकार करने की अनुमति देता है。

Canvas API आकृति, रेखाएँ, वक्र, वर्ग, पाठ और छवियाँ, जैसे कि रंग, घुमाव, पारदर्शिता और अन्य पिक्सल ऑपरेशन को दूरबीनी कर सकता है。

Canvas को HTML में जोड़ें

आप <canvas> टैग का उपयोग करके HTML पृष्ठ के किसी भी स्थान पर canvas एलीमेंट जोड़ सकते हैं:

उदाहरण

<canvas id="myCanvas" width="300" height="150"></canvas>

अपने आप प्रयास करें

कैसे Canvas एलीमेंट देखें

आप HTML DOM विधि getElementById() का उपयोग करके <canvas> एलीमेंट देख सकते हैं:

const myCanvas = document.getElementById("myCanvas");

कैनवस पर ड्राइंग करने के लिए, आपको 2D कंटेक्स्ट ऑब्जेक्ट को बनाना होगा:

const ctx = myCanvas.getContext("2d");

नोट

HTML <canvas> एलीमेंट अपने आप ड्राइंग की क्षमता नहीं है।

आपको जनरलेशन के लिए जनरलेशन करना होगा।

getContext() विधि एक ड्राइंग उपकरण (विधि) वाला ऑब्जेक्ट लॉगिंग करती है।

कैनवस पर ड्राइंग

2D कंटेक्स्ट ऑब्जेक्ट को बनाने के बाद, आप कैनवस पर ड्राइंग कर सकते हैं।

नीचे दिए गए fillRect() विधि ने काला चतुर्भुज ड्राइंग किया है। इसका ऊपरी दायाँ कोना 20,20 स्थित है। इस चतुर्भुज की चौड़ाई 150 पिक्सल और ऊंचाई 100 पिक्सल है:

उदाहरण

const myCanvas = document.getElementById("myCanvas");
const ctx = myCanvas.getContext("2d");
ctx.fillRect(20, 20, 150, 100);

अपने आप प्रयास करें

रंग का उपयोग करके

fillStyle गुण ड्राइंग ऑब्जेक्ट के फिल का रंग सेट करता है:

उदाहरण

const myCanvas = document.getElementById("myCanvas");
const ctx = myCanvas.getContext("2d");
ctx.fillStyle = "red";
ctx.fillRect(20, 20, 150, 100);

अपने आप प्रयास करें

आप इसके साथ document.createElement() विधि का उपयोग करके एक नया <canvas> एलीमेंट बना सकते हैं और इसे मौजूदा HTML पृष्ठ में जोड़ सकते हैं:

उदाहरण

const myCanvas = document.createElement("canvas");
document.body.appendChild(myCanvas);
const ctx = myCanvas.getContext("2d");
ctx.fillStyle = "red";
ctx.fillRect(20, 20, 150, 100);

अपने आप प्रयास करें

पथ

कैनवस पर ड्राइंग के लिए सामान्य तरीका है:

  1. पथ शुरू करें - beginPath()
  2. एक बिन्दु पर जाएं - moveTo()
  3. पथ में ड्राइंग - lineTo()
  4. पथ ड्राइंग - stroke()

उदाहरण

const canvas = document.getElementById("myCanvas");
const ctx = canvas.getContext("2d");
ctx.beginPath();
ctx.moveTo(20, 20);
ctx.lineTo(20, 100);
ctx.lineTo(70, 100);
ctx.stroke();

अपने आप प्रयास करें

रंग, स्टाइल और शैडो

गुण वर्णन
fillStyle फिल के रंग, ग्रेडिएंट या पैटर्न को सेट करें या लॉगिंग करें।
strokeStyle लाइन स्टाइल, ग्रेडिएंट या पैटर्न के रंग को सेट करें या लॉगिंग करें।
shadowColor शैडो के रंग को सेट करें या लॉगिंग करें।
shadowBlur शैडो के धुंधलापन का सेट करें या लॉगिंग करें।
shadowOffsetX शेडो को आकृति के बाईं दूरी को सेट या वापस करें。
shadowOffsetY शेडो को आकृति के ऊपरी दूरी को सेट या वापस करें。
तरीका वर्णन
createLinearGradient() लाइनिय ग्रेडिएंट (कैनवस सामग्री के लिए इस्तेमाल) को बनाएं。
createPattern() निर्दिष्ट दिशा में निर्दिष्ट एलिमेंट को बार-बार दोहराएं。
createRadialGradient() रेडियल/वृत्तीय ग्रेडिएंट (कैनवस सामग्री के लिए इस्तेमाल) को बनाएं。
addColorStop() ग्रेडिएंट ऑब्जैक्ट में रंग और स्टॉप स्थान को निर्दिष्ट करें。

लाइन शैली

गुण वर्णन
lineCap लाइन के छोर की शैली को सेट या वापस करें。
lineJoin दो लाइनों के आपस में अंगुल के रूप में बनाए गए कोण के रूप को सेट या वापस करें。
lineWidth वर्तमान लाइन चौड़ाई को सेट या वापस करें。
miterLimit अधिकतम मिटर लंबाई को सेट या वापस करें。

वर्ग

तरीका वर्णन
rect() वर्ग को बनाएं。
fillRect() भरे वर्ग को चित्रित करें。
strokeRect() वर्ग को चित्रित करें (भरने के बिना)。
clearRect() दिये गये वर्ग के अंदर निर्दिष्ट पिक्सल को मिटाएं。

पथ

तरीका वर्णन
fill() वर्तमान ग्राफ़िक (पथ) को भरें。
stroke() वास्तव में आपके द्वारा परिभाषित पथ को चित्रित करें。
beginPath() पथ शुरू करें या वर्तमान पथ को पुन:सेट करें。
moveTo() पथ को कैनवस में निर्दिष्ट स्थान पर ले जाएं बिना रेखा बनाएं。
closePath() वर्तमान बिन्दु से आरंभ वापस आने वाला पथ बनाएं。
lineTo() नया बिन्दु जोड़ें और उससे कैनवस में अंतिम निर्दिष्ट बिन्दु तक रेखा बनाएं。
clip() मूल कैनवस से किसी भी आकार का और आकृति का क्षेत्र को काटें。
quadraticCurveTo() दो बेजियर कर्व को बनाएं。
bezierCurveTo() तीन बेजियर कर्व को बनाएं。
arc() वृत्ताकार/कर्व (वृत्त या वृत्त के एक हिस्से के लिए इस्तेमाल) को बनाएं。
arcTo() दो चित्रण रेखाओं के बीच वृत्ताकार/कर्व को बनाएं。
isPointInPath() यदि निर्दिष्ट स्थान वर्तमान पथ में है, तो true वापस करें अन्यथा false वापस करें。

ट्रांसफॉर्म

तरीका वर्णन
scale() वर्तमान ग्राफ़िक को विस्तार या कमी करें。
rotate() वर्तमान ग्राफ़िक को घुमाएं。
translate() कैनवस पर (0,0) स्थान को नया मान दें。
transform() चित्रकारी के वर्तमान ट्रांसफॉर्म को प्रतिस्थापित करें。
setTransform() वर्तमान ट्रांसफॉर्म को एकक गणात्मक के रूप में पुन:सेट करें। फिर चलाएं transform().

टेक्स्ट

गुण वर्णन
font सेट या वापस करें टेक्स्ट सामग्री के वर्तमान फ़ॉन्ट गुण。
textAlign सेट या वापस करें टेक्स्ट सामग्री के वर्तमान जमानत तरीका。
textBaseline टेक्स्ट चित्रण के दौरान इस्तेमाल किए जाने वाले वर्तमान टेक्स्ट बेस लाइन को सेट करता या वापस करता है。
तरीका वर्णन
fillText() कैनवस पर 'भराई' टेक्स्ट को चित्रित करता है。
strokeText() कैनवस पर टेक्स्ट (भराई नहीं) को चित्रित करता है。
measureText() निर्दिष्ट टेक्स्ट चौड़ाई वाला ऑब्जैक्ट वापस करता है。

इमेज़ चित्रण

तरीका वर्णन
drawImage() कैनवस पर इमेज, कैनवस या वीडियो को चित्रित करता है。

पिक्सल संचालन

गुण वर्णन
width ImageData ऑब्जैक्ट की चौड़ाई वापस करता है。
height ImageData ऑब्जैक्ट की ऊंचाई वापस करता है。
data संदर्भित ImageData ऑब्जैक्ट के इमेज़ डाटा वाला ऑब्जैक्ट वापस करता है。
तरीका वर्णन
createImageData() नए खाली ImageData ऑब्जैक्ट का निर्माण करता है。
getImageData() ImageData ऑब्जैक्ट वापस करता है जो कैनवस पर निर्दिष्ट चक्राकार के आकार के रंग डाटा की प्रतिकृति है。
putImageData() इमेज़ डाटा (संदर्भित ImageData ऑब्जैक्ट से) को कैनवस पर वापस लाता है。

संयोजन

गुण वर्णन
globalAlpha चित्रण के वर्तमान alpha या पारदर्शीता मान को सेट करता या वापस करता है。
globalCompositeOperation नए इमेज को मौजूदा इमेज पर कैसे चित्रित करने को सेट करता या वापस करता है。

अन्य

तरीका वर्णन
save() वर्तमान कंटेक्स्ट की स्थिति को सहेजता है。
restore() पहले सहेजे गए पथ की स्थिति और गुण वापस देता है。
createEvent()
getContext()
toDataURL()

सामान्य गुण और इवेंट

कैनवस ऑब्जैक्ट सामान्यगुणऔरइवेंट.

संबंधित पृष्ठ

HTML शिक्षण:HTML5 कैनवस

HTML इमेज़ शिक्षण:HTML कैनवस शिक्षण

HTML संदर्भ दस्तावेज़:HTML <canvas> टैग