Canvas绘制基础

这篇博客介绍了如何使用Canvas进行基础绘图,包括绘制像素点、线条、圆形和弧形。通过示例代码展示了drawPoint、drawLine、drawCircle以及drawArc的方法用法,并提供了相关参数的详细解释。
摘要由CSDN通过智能技术生成

  //绘制像素点

  canvas.drawPoint(float x, float y, Paint paint);
  canvas.drawPoints(float[] pts, Paint paint);
  canvas.drawPoints(f float[] pts, int offset, int count, paint paint);

/**

x:像素点横坐标

y:像素点纵坐标

pts:多个像素点的坐标,元素个数必须是偶数,两个一组为一个像素点的横纵坐标

paint:用来设置像素点的大小,颜色等属性

offset:drawPoints可以取pts数组中的一部分连续元素作为像素点的坐标,通过该参数指定第一个要获取的元素位置,若要获取从第三个元素开始,则设置为2

count:要获得数组的元素个数,必为偶数

**/

for example:

protected void onDraw(Canvas canvas) {
  super.onDraw(canvas);
  float[] pts = {1,2,3,4,5,6,7,8};
  int offset = 4;
  int count = pts.length-4;
  Paint paint = new Paint();
  paint.setColor(Color.BLUE);
  canvas.drawPoints(pts, offset, count, paint);
 }

//绘制线条和绘制像素点基本相同 像素点是两个float作为一组,而线条是四个float一组;

//绘制圆形

canvas.drawCircle(x, y, 20, paint); 横纵坐标ÿ

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Canvas是HTML5中提供的一种绘图API,用于在网页上动态创建图形、动画等。虽然它通常用于游戏、可视化效果和数据可视化,但理论上你可以利用Canvas来模拟绘制发票,虽然这并不是它的主要用途,也不是一个直接的功能。由于Canvas主要处理的是像素级别的绘图,对于复杂格式的发票(如包含表格、文字排版等),可能需要结合其他技术,例如使用SVG或专门的发票生成库。 以下是一个简化的步骤来用Canvas在JavaScript中绘制基本的发票结构: 1. 初始化Canvas元素: ```javascript var canvas = document.getElementById('invoice-canvas'); var ctx = canvas.getContext('2d'); ``` 2. 设置背景、边框等样式: ```javascript ctx.fillStyle = '#f5f5f5'; ctx.fillRect(0, 0, canvas.width, canvas.height); ctx.strokeStyle = '#000'; ctx.lineWidth = 1; ``` 3. 绘制文本: ```javascript ctx.font = '16px Arial'; ctx.fillText('发票抬头', 50, 50); ctx.fillText('日期:', 50, 80); // ... 写入其他字段,如商品信息、金额等 ``` 4. 绘制表格或条形图(用于显示价格列表): ```javascript // 使用`ctx.beginPath()`, `ctx.moveTo()`, `ctx.lineTo()`, `ctx.stroke()`等方法 ``` 5. 添加自定义样式,比如发票印章或二维码: ```javascript // 如果有需要,可以使用第三方库(如qrcode.js)生成并绘制二维码 ``` 请注意,由于Canvas的局限性,这只是一个基础示例,实际的发票生成会涉及到更复杂的布局和排版,可能需要借助专业的打印控件或者第三方库来完成。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值