ctx.save();
ctx.translate(50,50);
ctx.beginPath();
ctx.strokeRect(10,10,20,20);
ctx.closePath();
ctx.restore();
Ч¹ûͼΪ£º
±¾À´Õâ¸ö¾ØÐÎÓ¦¸Ã»æÖÆÔÚ×óÉϽǣ¬¾¹ýͼÐα任°ÑÆäÏòx,yÁ½¸ö·½Ïò¸÷Æ«ÒÆÁË50ÏñËØ£¨PS£ºÐèҪעÒâµÄÊÇͼÐα任µÄº¯Êýµ÷Óã¬ÒªÔÚ»æÖƺ¯Êý֮ǰִÐУ©
2¡¢rotate
context.rotate(rot);
¸Ã·½·¨ÊÇÓÃÀ´ÉèÖÃͼƬµÄÐýת½Ç¶È£¬ÆäÖÐrotÓ¦¸ÃÊÇ»¡¶È£¬Èô´«ÈëµÄÊǽǶȵϰÐèҪת»»£¬Èç80£¬ÐèҪЩΪMath.PI*80/180
ctx.save(); ctx.rotate(20*Math.PI/180); ctx.beginPath(); ctx.fillRect(100,100,50,50); ctx.closePath(); ctx.restore();
Ч¹ûͼΪ£º
3¡¢scale
context.scale(x,y)
¸Ã·½·¨ÊÇÓÃÀ´½øÐÐͼÏñËõ·ÅµÄ£¬ÆäÖÐxΪˮƽ·½ÏòËõ·ÅµÄ±ÈÀý£¬yÊÇ´¹Ö±·½ÏòËõ·ÅµÄ±ÈÀý
£¨PS£º ¸Ãº¯Êý´æÔÚÒ»¸öÎÊÌ⣬¾ÍÊÇÔÚËõ·Åʱ£¬Í¼ÏñµÄ×óÉϽǵÄÎ»ÒÆÒ²»á·¢ÉúͬÑù±ÈÀýµÄ¸Ä±ä²¢ÇÒͼÏñµÄ±ß¿òÏßÒ²»á·¢ÉúͬÑùµÄ¸Ä±ä£©
ctx.save(); ctx.scale(0.5,0.5); ctx.beginPath(); ctx.fillRect(100,100,200,200); ctx.closePath(); ctx.restore();
¾ÍÊǽ«Õý·½ÐεÄxºÍy·½Ïò¾ùËõ·Åµ½Ò»°ëµÄ´óС
4¡¢transform
context.transform(a,b,c,d,e,f);
Ê×Ïȸ÷½·¨ÊÇÉÏÊö·½·¨µÄ×ܺͣ¬ÒòΪ¸Ã·½·¨ÊÇͨ¹ýµ¥Î»¾ØÕóµÄ·½Ê½¶ÔͼÏñ½øÐиı䣬ͼÏñÔÚ±¾ÖÊÉϾÍÊÇÐí¶àÓÉ0,1µÄ¾ØÕó×éºÏ¶ø³É£¬Èçϱí¸ñ
a c e
b d f
0 0 1
d´ú±í´¹Ö±Ëõ·Å£¬Ä¬ÈÏΪ1£»e´ú±íË®Æ½Î»ÒÆ£¬Ä¬ÈÏΪ0£»f´ú±í´¹Ö±Î»ÒÆ£¬Ä¬ÈÏΪ0£»
ËùÒÔÓÃtransfromº¯Êý¿ÉÒÔʵÏÖ£¬ÉÏÃæ3ÖÖͼÏñ±ä»»¡£
ËÄ¡¢ÆäËüÔÓÆßÔÓ°Ë
1¡¢ÎÄ×ÖÏÔʾ
ctx.fillText(string,x,y,[maxlen]);
ctx.strokeText(string,x,y,[maxlen]);
ÆäÖеÚÒ»¸öº¯ÊýÊÇÐèҪд³öµÄÎı¾Öµ£¬ÆäÖÐx£¬yÊÇÎı¾µÄ×ø±ê¡£¶ømaxlenÊÇ¿ÉÑ¡²ÎÊý£¬ÉèÖÃÆäÎÄ×ÖµÄ×î´ó³¤¶È¡£
ÆäÎÄ×Ö¿ÉÒÔÉèÖÃÏà¹Ø²ÎÊý
ctx.fontµÄĬÈÏÖµÊÇ"20px sans-serif"
Æä²ÎÊý°üÀ¨context.font = font-style font-variant font-weight
font-size font-familyÆäÖи÷¸ö²ÎÊýÓиö×ÖµÄÖµ
context.textAlign = left center right¸ÃÊôÐÔÊÇÉèÖÃÎÄ×ֵľÓÖС¢¾Ó×ó¡¢¾ÓÓÒ
context.textBaseline = top middle bottom¸ÃÊôÐÔÊÇÉèÖÃÎÄ×ֵĴ¹Ö±¾ÓÉÏ¡¢¾ÓÖС¢¾ÓÏ¡£
ctx.beginPath(); var str = "¹ÅÔ·ã" ctx.strokeStyle = "red"; ctx.fillStyle = "aqua"; ctx.font = "40px Arial"; ctx.textAlign = "center"; ctx.textBaseline = "middle"; ctx.strokeText(str,100,100,200); ctx.fillText(str,100,150,200); ctx.closePath();
Ч¹ûͼΪ£º
2¡¢ÒõÓ°
ÔÚcanvasÖв¢Ã»ÓÐÒ»¸öÕë¶ÔÒõÓ°µÄº¯Êý£¬ËüÊÇͨ¹ý״̬½øÐÐÌí¼Ó£¬ÎÞÂÛÊÇÏßÌõ¡¢¾ØÐΡ¢Ô²»òÕßÊÇÎÄ×Ö¶¼¿ÉÒÔͨ¹ýÒÔϺ¯ÊýÌí¼ÓÒõӰЧ¹û
ctx.shadowColor = "gray"; //ÉèÖÃÒõÓ°±³¾°µÄÑÕÉ«
ctx.shadowOffsetX = 10; //ÉèÖÃÒõÓ°xÖá·½ÏòµÄÍ»³öÏñËØ£¬¸ÃÖµ¿ÉÒÔΪ¸ºÊý
ctx.shadowOffsetY = 10; //Òâ˼ͬÉÏ£¬Ö»²»¹ýÕâ¸öÊÇÕë¶ÔYÖáµÄ
ctx.shadowBlur = 5; //ÉèÖÃÒõÓ°µÄÄ£ºý³Ì¶È£¬0ΪÎÞÄ£ºý£¬ÖµÔ½´óÄ£ºýÔ½ÖØ
¡¡