ໂອກາດ Canvas DOM HTML
ຫຼັກ <canvas> ກໍານົດບໍລິເວນບັນບາງຕົວຊີ້ໃນ HTML Page.
API Canvas ອະນຸຍາດ JavaScript ຂຽນຮູບຮ່າງໃສ່ canvas.
API Canvas ສາມາດຂຽນຮູບຮ່າງ, ສາຍ, ວົງ, ບໍລິເວນ, ຂໍ້ຄວາມ, ພາບ, ສີ, ການແປງວົງວຽນ, ຄວາມແປງສະຫຼາດ, ແລະ ການປະຕິບັດພາບສີຫຼາຍອີກ.
ເພີ່ມ Canvas ໃສ່ HTML
ທ່ານສາມາດໃຊ້ອັບຍັດ <canvas> ເພື່ອເພີ່ມ canvas element ໃນລະດັບໃດໜຶ່ງຂອງ HTML Page:
ຕົວຢ່າງ
<canvas id="myCanvas" width="300" height="150"></canvas>
ວິທີເຂົ້າຫາ Canvas Element
ທ່ານສາມາດໃຊ້ວິທີ HTML DOM getElementById() ເພື່ອເຂົ້າຫາຫຼັກ <canvas> ຢູ່ທີ່:
const myCanvas = document.getElementById("myCanvas");
ສຳລັບທີ່ຈະທຳນາຍທີ່ແຜ່ນໄຟແບບ, ທ່ານຕ້ອງສ້າງ context object 2D:
const ctx = myCanvas.getContext("2d");
ບັນທຶກ
HTML <canvas> element ບໍ່ມີພະຍາຍາມທຳນາຍ.
ທ່ານຕ້ອງນຳໃຊ້ JavaScript ເພື່ອທຳນາຍທີ່ພິມບັນຫາ.
ຄຳສັ່ງ getContext() ສົ່ງຄືນລະບົບວົງວອກທີ່ມີຊັບພະຍາຍາມວົງວອກ (ຄຳສັ່ງ).
ການທຳນາຍທີ່ແຜ່ນໄຟແບບ
ຫຼັງຈາກທີ່ຂຽນວົງ 2D context object, ທ່ານສາມາດທຳນາຍທີ່ແຜ່ນໄຟແບບ:
ວິທີການ 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);
ຫົວໜ້າ
ວິທີການທີ່ມັກການທຳນາຍທີ່ພົບໃນແຜ່ນໄຟແບບ.
- ການເລີ່ມວົງ - beginPath()
- ການຫົວໄປຫາຈຸດ - moveTo()
- ການຂຽນວົງວອກໃນວົງ - lineTo()
- ການຂຽນວົງວອກ - 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() | ການກັບຄືນຈຸດທີ່ມີຂອງຈຸດທີ່ມີການສະໝອງຕາມການກຳນົດຂອງພາຍໃນຫົວແຜນງານ. |
ການປ່ຽນແປງ
ກົນລະຍຸດ | ການອະທິບາຍ |
---|---|
scale() | ການໃຊ້ມູນຂອງການຕັ້ງສະຖານະປະຈຳຈຸດທີ່ມີ. |
rotate() | ການສະແດງການສະໝອງປະຈຳຈຸດທີ່ມີ. |
translate() | ການທີ່ທົດລອງການຕັ້ງສະຖານະ (0,0) ໃນແຜນງານ. |
transform() | ການປ່ຽນແປງການປ່ຽນແປງຂອງການສະແດງສະໝອງ. |
setTransform() | ການທີ່ທົດລອງການປ່ຽນແປງປະຈຳຄຳທີ່ມີການຕັ້ງສະຖານະຫຼັກອອກແບບສະຖານະສະໝອງ. transform(). |
ຄຳຂຽນ
ຂໍ້ມູນ | ການອະທິບາຍ |
---|---|
font | ການຕັ້ງສະຖານະຫຼັກວັດຖຸຂອງຄຳຂຽນ. |
textAlign | ການຕັ້ງສະຖານະຫຼັກການຕັ້ງວັດຖຸຂອງຄຳຂຽນ. |
textBaseline | 设置或返回绘制文本时使用的当前文本基线。 |
ກົນລະຍຸດ | ການອະທິບາຍ |
---|---|
textBaseline | ການດຳເນີນຂອງຄຳເວົ້າທີ່ມີການລະບຸ. |
fillText() | ການດຳເນີນຂອງຄຳເວົ້າທີ່ບໍ່ມີການລະບຸ. |
strokeText() | ການດຳເນີນຂອງຄວາມທີ່ຂະຫຍາຍຄວາມຂອງຄຳເວົ້າ. |
measureText()
ກົນລະຍຸດ | ການອະທິບາຍ |
---|---|
ການດຳເນີນພາບ | drawImage() |
ການດຳເນີນກັບພາບຖີນ
ຂໍ້ມູນ | ການອະທິບາຍ |
---|---|
width | ກັບຄືນຄວາມຫຼາຍຂອງ ImageData. |
height | ກັບຄືນຄວາມຫຼາຍຂອງ ImageData. |
data | ກັບຄືນອຸບັດຕິເຫດທີ່ສະແດງໃສ່ເບັນຂອງ ImageData. |
ກົນລະຍຸດ | ການອະທິບາຍ |
---|---|
createImageData() | ສ້າງເອົາ ImageData ທີ່ບໍ່ມີສິນລະພາບ. |
getImageData() | ກັບຄືນ ImageData ທີ່ສະແດງໃສ່ເບັນ, ທີ່ສະແດງຄືນຂໍ້ມູນພາບທີ່ມີຢູ່ໃນບັນດາບໍລິໂສມັດທີ່ກຳນົດ. |
putImageData() | ການຈອດຄືນຂໍ້ມູນພາບຂອງຂອງ ImageData ທີ່ສະແດງໃສ່ເບັນ. |
ການປະສົມ
ຂໍ້ມູນ | ການອະທິບາຍ |
---|---|
globalAlpha | ການປ່ຽນແປງ ຫຼື ການກັບຄືນຄວາມສະເປພາບຂອງການດຳເນີນຄວາມລັບທີ່ປະຈຸບັນ. |
globalCompositeOperation | ການປ່ຽນແປງ ຫຼື ການກັບຄືນຄວາມປົກກະຕິທີ່ຈະນຳມາສະແດງພາບໃຫມ່ສຳລັບພາບແບບທີ່ມີຢູ່. |
ອື່ນໆ
ກົນລະຍຸດ | ການອະທິບາຍ |
---|---|
save() | ບັນທຶກສະຖານະຂອງພາຍໃນທີ່ປະຈຸບັນ. |
restore() | ກັບຄືນສະຖານະຂອງອຸບັດຕິເຫດບັນດາຂອງການບັນທຶກສະຖານະຂອງພາຍໃນ. |
createEvent() | |
getContext() | |
toDataURL() |
ອຸບັດຕິເຫດທີ່ປົກກະຕິ ແລະ ຂໍ້ມູນທີ່ປົກກະຕິ
canvas ບັນດາປະກອບເຂົ້າຊົມກັນສະໜອງບັນດາອຸບັດຕິເຫດທີ່ປົກກະຕິຂໍ້ມູນແລະອຸບັດຕິເຫດ.