canvas学习之坐标的变化和文本的应用
2015-10-24 13:30
246 查看
canvas的默认坐标是位于左上角的 ,因此,若用坐标变化的话,可以把canvas的坐标移下来,常用的有 平移变化 translate 参数为x轴和y轴的变化,还有rotate 参数是旋转几度注意是弧度,还有scale 参数是x轴的缩放和y轴的缩放,
![](http://img.blog.csdn.net/20151024133339493?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
还有一种变化矩阵的方法,trandform是一种累加的效果,而settransform是会把前面一种变化情况给删除掉
![](http://img.blog.csdn.net/20151024133654476?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
利用transform和settransform可以实现错切的效果
其都接受6个参数 具体百度
文本的绘制可以用stroketext和filltext来做
![](http://img.blog.csdn.net/20151024134415988?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
字体的各个属性
![](http://img.blog.csdn.net/20151024134803838?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
![](http://img.blog.csdn.net/20151024134550811?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
文本的定位
![](http://img.blog.csdn.net/20151024135202968?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
![](http://img.blog.csdn.net/20151024135245756?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
一些基本的代码
![](http://img.blog.csdn.net/20151024135319310?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
记住这些文本的属性都是context自带的,因此针对的都是context这个上下文环境来进行绘制
measureText的用法
![](http://img.blog.csdn.net/20151024135834729?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
![](http://img.blog.csdn.net/20151024135955691?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
![](http://img.blog.csdn.net/20151024140144984?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
以上便是简单的总结
context.translate(canvas.width,0); context.scale(-1,1);
context.rotate(Math.PI*(angle/180));
还有一种变化矩阵的方法,trandform是一种累加的效果,而settransform是会把前面一种变化情况给删除掉
利用transform和settransform可以实现错切的效果
其都接受6个参数 具体百度
文本的绘制可以用stroketext和filltext来做
字体的各个属性
文本的定位
一些基本的代码
记住这些文本的属性都是context自带的,因此针对的都是context这个上下文环境来进行绘制
measureText的用法
以上便是简单的总结
相关文章推荐
- leetcode先刷_Climbing Stairs
- 较复杂时序逻辑电路设计实践一
- Leetcode116: Two Sum
- Android编码规范02
- 图像处理 腐蚀 膨胀 细化
- MyEclipse快捷键大全
- 课后作业加密
- Android网络框架Volley(实战篇)
- 最小生成树
- Joomla - Error-Based SQL Injection
- HDU 1180 诡异楼梯
- 前端Javascript书籍分享
- linux中文手册
- 20135231 —— 第六周任务总结报告
- 第八周 项目二-建立链串算法库
- 读《大道至简》第四章有感
- 简单工厂模式
- MongoDB 学习笔记三 JAVA调用MongoDB
- Hibernate-映射关系- 基于主键映射的1<->1映射
- struts.valueStack (Action 中属性存放的原理)