画板

一个基于 canvas 的画板

家住魔仙堡 提交于 2020-03-07 20:03:28
虽然我自己的定位是做后端的,但技术主管强调要搞全栈,因此工作中也要写一些前端页面。一个产品经理找我写个画板,他更不会管我的技术定位了。目标是做个画板,具有以下功能: 可以更改画笔颜色、粗细,能擦除绘图 撤销绘图 设置画板背景色 将画板保存成图片 demo见: drawing_board 。最后的效果长这样: 所有的实现以及遇到的问题,都可以在网上找到。这里做一个总结。 画笔粗细、颜色 粗细通过 ctx.lineWidth 设置;颜色要设置 ctx.strokeStyle 和 ctx.fillStyle 这两个参数才行。 橡皮功能 ctx.globalCompositeOperation 的默认值是 "source-over" ,这时可以正常绘制图形。将其改成 "destination-out" ,这时画笔可将绘制的线条擦除。橡皮其他部分与画笔的逻辑一样,因此代码可以复用。更改 lineWidth 便可调节橡皮大小。有的实现中直接将画笔的颜色改成画板的背景色,以此达到“擦除”的效果。但画板默认是透明的,这种错误实现会导致在输出的图片有问题。 撤回功能 想要撤回就要记住历史状态。将每次画下的图形数据粗暴地存储在一个数组中,撤销时将数组最后一个元素设置为 canvas 的图形数据即可。注意这里每次记录的都是完整的数据,而不是像 git 一样记录每次的修改,因此不能无限制地记录绘画历史

画板软件的区别

心已入冬 提交于 2020-03-03 07:58:48
1、Cadence Allegro 目前大公司用的比较多,Cadence公司Layout有两套PCB画图软件,一套是自己的PCB工具Allergo,另外一套就是OrCAD,Allergo优势是画高速多层板效率比较高,上手难度稍大, 因为软件非常昂贵,每年授权费用大概需要几十万(功能可以定制,功能多少决定价格),所以只有大公司用得起,例如上市公司,所以市场占有率并不是很高 2、MentorGraphics PADs(Power PCB) Mentor 公司推出的画图软件之一,授权价格较低,小公司以及中等规模公司也比较常用,上手比Cadence Allergo容易一些,缺点是库管理比较麻烦,软件容易崩溃,3D功能比较弱 Mentor.Graphics.Expedition.Enterprise和Cadence Allegro功能差不多,外企大公司用的较多,授权费用较高,在中国几乎不使用 3、Altium Designer(Protel升级版) ————Protel 最早由Protel开发组工程师设计开发这一款PCB画图软件,风靡一时,被大多PCB设计者认可,在之后糅合了其他公司先进的仿真技术、以及信号完整性分析等功能,继续发行了Protel 99 版本,但当时还没有过多的鼠标操作;不过到目前为止还是有很多工程师,以及PCB加工厂在使用, ————Altium Designer

巧用canvas实现画板功能,使用画笔在图片上涂画,橡皮擦可擦除涂画,并保存

家住魔仙堡 提交于 2020-01-13 03:26:05
canvas 是HTML5的元素,使用JavaScript 在网页上绘制图像。 canvas 拥有多种绘制路径、矩形、圆形、字符以及添加图像的方法。 而如果想实现画笔在画板涂画画笔在图片上涂画,橡皮擦可擦除涂画,就需要两个canvas画布配合。 原理就是两个一样大小的canvas画布重叠放置,并且都绘制这个图画,这样只在上面的canvas涂画、擦除,擦除时把下层canvas内容替换上层的canvas内容,达到模仿橡皮擦效果。 下面就是具体实现代码: 1、先准备画布和工具: <canvas id="canvas1" width="600" height="500"></canvas> <canvas id="canvas2" width="600" height="500"></canvas> <div class="tooltip-pen"> <b> <i class="ico ico-pen" title="铅笔" onclick="changeTools('pen');"></i> <i class="ico ico-eraser" title="橡皮檫" onclick="changeTools('eraser');"></i> <i class="ico ico-save" title="保存" onclick="downloadImg();"></i> </b> <

Mac版几何画板正式上线

牧云@^-^@ 提交于 2019-12-23 07:37:48
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 对于喜欢使用几何画板的朋友一定知道几何画板只支持windows,然而,今天开始,Mac也可以安装了。   虽然全球市场上应用于数学、物理的绘图工具多如牛毛,但是几何画板仍然因其生动的演示功能牢牢地抓住用户的心,并不断吸引更多的使用者。之前,几何画板只能应用于Windows系统,使得成千上万的果粉望洋兴叹,现在只需点击 几何画板下载 就可以免费下载几何画板Mac简体中文版。下面我们来一一揭开几何画板 Mac简体中文版的神秘面纱。   一、几何画板Mac版界面介绍 几何画板工具箱位于界面的左侧,从上到下依次为:选择或拖动对象工具、绘制点工具、绘制圆工具、绘制线段工具、绘制多边形工具、文本标签工具、标记工具、信息工具、自定义工具。几何画板菜单栏功能强大、操作灵活,主要包括文件菜单、编辑和显示菜单、构造和变换菜单、度量和数据菜单、绘图菜单、窗口菜单、帮助菜单。   二、几何画板Mac版的特色   1.便捷的交流工具:每个绘制结果都可以被用户按自己的意图修改并保存起来,因而它特别适合用来进行几何交流、研究和讨论。人们由此把它称之为“动态黑板”,它还是教师布置作业、学生完成作业的理想工具。   2.优秀的演示工具:它完全符合CAI演示的要求,能准确地、动态地表达几何问题。一旦与大屏幕投影仪等设备配合,演示效果更完美。另外

用canvas画布画一个画板

旧街凉风 提交于 2019-12-18 20:54:05
  前段时间,在对H5的回顾中突然对canvas有了感觉,闲来无事便对其进行了一些捯饬。这不,上周我还做了一个好玩的画板呢,废话不多说,直接上代码(PS:翠花,上代码~): HTML部分: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Canvas 制作画板</title> <style> h1{ text-align: center; margin: 0 auto; -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } .drawBox{ width: 830px; height: auto; margin: auto; background: #999; border-radius: 10px; } #myCanvas{ padding: 0; background: #fff; display: block; cursor: pointer; border-radius: 10px; border: 15px solid #999; }

屏幕绘画 V1.1 - 一念

徘徊边缘 提交于 2019-12-09 15:04:11
屏幕绘画 V1.1 - 一念 注释:该程序用VB6.0编写,如果疑问在下方留言。 1.打开程序界面 2.打开程序后第二个界面。点击红黄两只笔图按钮,开始绘画。 3.默认是画随意线条,你可以点击黑色笔选择笔粗和画图样式及添加文字。可以选择颜色,保存图片,画板。。。 4.看视频也可以绘制。 5.PPT全屏也可以绘制。 来源: CSDN 作者: polloo2012 链接: https://blog.csdn.net/polloo2012/article/details/103456688

概念画板

。_饼干妹妹 提交于 2019-12-02 11:48:14
概念画板 概念画板是一个让我们可以尽情思考、计划和创作的灵活空间。在无限大的画布上使用倾斜 + 压感绘制平面图、记笔记和涂鸦、绘制故事板、产品草图和设计平面图,然后分享给朋友、客户和其他APP。 概念画板的矢量天性意味着每一笔都可调整。钢笔、铅笔、水彩......如果画错了,只需使用微移、切割和选取工具修复调整即可。 概念画板用户来自各行各业,其中有来自Disney、Playstation、飞利浦、惠普、Apple、Google、Unity和照明娱乐等公司的顶级设计师,他们使用概念画板让想法成真。加入我们吧! 概念画板拥有: • 超逼真响应压感、倾斜和速度的笔刷 • 无限大画布,伴有多种纸张类型和网格任君挑选 • 工具转轮或工具栏让您可个性化配置常用笔刷和预设 • 自定义画廊、画布、工具、手势,和一切。 • 美轮美奂的Copic色轮 • 可编辑矢量绘图:移动,整理,按工具、颜色、笔宽、缩放、平滑度、不透明度进行编辑;转换或微移塑造线条 • 使用drag + drop将图片拖至画布 • 无限量、可调整不透明度的图层 • 复制内容,方便迭代 • 跨设备创建、储存和分享矢量素材库 • 创建您专属的矢量笔刷 • 图形辅助线、比例和测量现实世界维度的测量工具 • 导出图片+PDF,并创建画板大小以适应打印、作品集、团队+客户反馈,还有APP间分享(包含 AutoCAD和Adobe) •

【原创升级】时序图画板TIMING 2.0操作习惯优化版

血红的双手。 提交于 2019-12-02 09:25:18
作为一个硬件专业学生,平时总得画点时序图什么的。如果不想使用破解的TIMEGEN,可以考虑使用这款时序图画板。本着对RCDATA数据研究的目的,你是可以免费使用这款软件的。 时序图画板TIMING是一款简单实用的绘制时序图的工具。相比于TIMEGEN,其最大好处就是即使是试用版,其也可以体验到完整功能,而且没有时间限制。站长修改了它的操作逻辑,使得你即使不看使用说明,也知道应该按照什么顺序操作了。 ■软件截图 ■修改内容 修改了操作逻辑!操作逻辑更加合理了。 变相解决了打开软件时报错的问题。 修改了启动图。 破解收费系统,屏蔽收费链接。 ■重要须知 请勿将此软件用于商用目的,如果必须使用,请与公司的法务部门联系。 ■下载地址: 蓝奏云 来源: https://blog.csdn.net/gzming2009/article/details/102750361

canvas

送分小仙女□ 提交于 2019-11-30 12:07:43
<canvas id="myCanvas" width=200 height=100 style="border:solid 1px #000"></canvas> <script> var c = document.getElementById("myCanvas"); var ctx = c.getContext("2d"); ctx.fillStyle = "#ff0000"; ctx.fillRect(0,0,50,50); </script> 属性里width 和 height 设置画板和画纸的宽高 css里的宽高只设置画板的宽高,画纸的宽高还是默认的300*150,所以会导致压缩 来源: https://www.cnblogs.com/fullmetalcoder/p/11583840.html