当前位置: 首页 > news >正文

或许你想要的画图工具在这里

之前文章发布后,有小伙伴问下面的画怎么画的(偷偷告诉你,其实我是用铅笔+水彩笔画的),哈哈,开玩笑了。其实这些图都是用Excalidraw 画出来的。
在这里插入图片描述
在这里插入图片描述

我们平常不管是工作中,还是在日常写文章,都会接触到不少画图工具。

我们对ProcessOn、draw.io 等这些优秀的画图软件可以说是不陌生了。

自己平常写文章也用它们来画图。可以用来画流程图、思维导图、原型图、组织结构图、网络拓扑图等等。

但是,这些用久了之后吧,感觉画出来的都方方正正的、显得特别正式。当然了,这个要是放到PPT上面用于对产品的讲解、又或是用于述职报告等都是是非常不错的选择。

不过呢,今天呢给你介绍一款非常漂亮小众的手绘画图工具。

听到手绘这个词,你会不会眼前一亮呢。

1 绘图工具比较

我们平常画出来的图大多是这样的
在这里插入图片描述

在这里插入图片描述
但是,今天我们推荐的这款画图软件,它画出来的图是这样的
小人
啊,这 怎么有点丑,重新画几个。下面看起来好看多了,O(∩_∩)O
在这里插入图片描述
在这里插入图片描述
异常处理

这样的风格是不是你喜欢的呢?

2 excalidraw 介绍

Excalidraw 是一款轻量的手绘风格电子白板工具。无论是 Windows / macOS / linux,甚至是手机,打开浏览器就能使用,能简单地画出美观漂亮的流程图、示意图和开发架构图等常用图片。不仅可以画图、还可以作为会议画板使用。

Excalidraw 是一款开源软件,不需要安装、不需要注册就可以免费使用。

GitHub地址:https://github.com/excalidraw/excalidraw
twitter地址:https://twitter.com/excalidraw

目前已经有41.9k star了
在这里插入图片描述
作者呢也在持续更新
在这里插入图片描述

3 excalidraw 使用

excalidraw 可以直接浏览器打开使用其SaaS版本,或者自己部署 又或者集成到自己软件中

excalidraw 地址:https://excalidraw.com/

浏览器输入地址打开即可使用,使用起来也很简单,都不用去学
在这里插入图片描述

3.1 快速绘制基本图形

可以快速绘制 矩形菱形椭圆箭头线文字 等基本图形

绘图

3.1.1 矩形、菱形、椭圆绘制

① 绘制图形

选中矩形(快捷键2)或菱形(快捷键3)或椭圆(快捷键4)–>拖动鼠标即可画出各种大小图形
在这里插入图片描述
在这里插入图片描述
小技巧:选中要绘制的基本图形,按住shift 可以绘制正方形、圆形

② 调整边框颜色
在这里插入图片描述
② 填充背景
在这里插入图片描述
在这里插入图片描述

还可以选择填充效果
在这里插入图片描述
在这里插入图片描述

③ 边框样式
在这里插入图片描述
还可以选择边框线条风格
在这里插入图片描述

3.1.2 曲线、直线绘制

① 线条绘制

选中箭头(快捷键5)或线条(快捷键6)==>点击创建多个点/拖到创建直线
在这里插入图片描述

在这里插入图片描述
拖动上图中的紫色小圆点也可以调整线条幅度

② 选择线条样式
在这里插入图片描述

3.2 图形对齐

选中需要对齐的图形==>选择对齐方式
在这里插入图片描述
上述图形分别左对齐右对齐后效果
在这里插入图片描述

3.4 插入图片

选择插入图片(快捷键9)==> 选择需要插入的图片
在这里插入图片描述
在这里插入图片描述

3.5 橡皮擦删除元素

选中需要擦除的元素==>点击橡皮擦(快捷键0)擦除元素

在这里插入图片描述

3.5 添加个人素材库

上面这些图形还不够用,也可以添加别人绘制好的素材为我所用。

① 点击右上角的素材库
在这里插入图片描述
②预览我们需要的素材
在这里插入图片描述
③ 添加到素材库
在这里插入图片描述
④绘制火柴人
在这里插入图片描述

3.6 添加文字

点击文字(快捷键8)==>敲入文字
在这里插入图片描述
在这里插入图片描述

3.6 导入表格数据

它还有一个很厉害的功能,就是根据excel中的数据生成柱状图、折线图

① 准备数据
在这里插入图片描述

②粘贴到Excalidraw
在这里插入图片描述
③ 简单表格来了
在这里插入图片描述

3.7 实时协作

可以多个人协同绘制。只需要将链接分享给需要协作的用户即可同时编辑
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.8 保存文件

可以将我们绘制好的图保存到本地为.excalidraw 后缀的文件
在这里插入图片描述
在这里插入图片描述

3.8 导入绘图文件

可以将上一步导出的文件
在这里插入图片描述

3.9 导出成图片

可以将绘制好的导出成图片。导出图片…==>选择文件格式(PNG、SVG)

在这里插入图片描述

在这里插入图片描述

4 本地部署

文章开头我们就说过,Excalidraw是一个开源项目。我们可以将其从GitHubclone 下来,然后进行本地化部署。

既然有SaaS版本可以在线使用,为啥还要进行本地化部署呢?
不知道小伙伴有没有发现,之前我们插入的文字中,英文是手写体,但中文不是,中文就显得格格不入。
在这里插入图片描述
为了解决以上问题我们就可以将代码clone 进行修改,添加字体后编译、部署到Gitee Page 或者GitHub Page
部署都是免费的,由于Gitee 在国内访问速度还是挺快的 ,所以我们选择Gitee Page 部署。
这个是我部署好的地址:https://xiezhr.gitee.io/excalidraw/

这个是其他博主部署到GitHub Page上的,支持中文手写字体 可以放心使用
在这里插入图片描述

由于前端不太熟,本地编译后中文手写字体可以了,但是发布到Gitee Page 后还有点问题。

等后面解决后再出一篇部署相关的,又给自己挖了个坑~ (⊙﹏⊙)
在这里插入图片描述

本次内容到此就结束了,各位小伙伴们,我们下期再见~ (●’◡’●)

相关文章:

或许你想要的画图工具在这里

之前文章发布后,有小伙伴问下面的画怎么画的(偷偷告诉你,其实我是用铅笔水彩笔画的),哈哈,开玩笑了。其实这些图都是用Excalidraw 画出来的。 我们平常不管是工作中,还是在日常写文章&#x…...

2023年功能测试还值得入行吗?

前言 鉴于笔者从13年入行IT行业,经历了只有开发没有测试的阶段,经历了14年只要会基本的功能测试在一线就能薪资过万的阶段,经历了17年只要会一点自动化,会一点性能就能蒙骗过面试官的阶段,更经历了19年所有面试官对于…...

2022-2023山东大学机器学习期末回忆及复习建议

2023年第一次闭卷考试,让我们准备时都很无力,不知道试题究竟是什么难度,是否要掌握手推公式还有一些晦涩的知识点之类的,看到试题才发现其实闭卷也有好处,与往年题相比难度下降了不少。 一、名词解释 1、测试集 2、Boo…...

基于ssm框架实现家庭理财收支系统(源码+数据库+文档)

一、项目简介 本项目是一套基于ssm框架实现家庭理财收支系统,主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的Java学习者。 包含:项目源码、数据库脚本等,该项目附带全部源码可作为毕设使用。 项目都经过严格调试&#xff0c…...

MyBatis - 09 - 自定义映射resultMap

文章目录1 准备工作1.1 建表1.2 创建实体类1.3 引出一个问题方案1方案2方案32.完整代码项目结构EmpMapper接口Emp类SqlSessionUtils工具类EmpMapper.xmljdbc.propertieslog4j.xmlmybatis-config.xmlResultMapTest完整代码在后面 1 准备工作 1.1 建表 t_emp 添加测试数据&…...

springBoot常见面试题(2023最新)

目录前言1.谈谈你对springBoot的理解2.为什么使用springBoot或springBoot的优点3. springBoot与springCloud 区别4.springBoot的核心配置文件有哪些,作用是什么5.springBoot配置文件有几种类型,区别是什么6.什么是热部署?springBoot怎么实现热…...

YOLOv5全面解析教程⑤:计算mAP用到的Numpy函数详解

作者 | Fengwen、BBuf 本文主要介绍在One-YOLOv5项目中计算mAP用到的一些numpy操作,这些numpy操作使用在utils/metrics.py中。本文是《YOLOv5全面解析教程④:目标检测模型精确度评估》的补充,希望能帮助到小伙伴们。 欢迎Star、试用One-YOLOv…...

Linux入门---基本指令(下)

这里写目录标题cattacmorelessheadtail一个思考题datecalfindwhichaliaswhereisgrepzip/unziptarbcuname快捷键tabCTRL c上下键CTRLrcat 这个指令的功能就是显示文件里面的内容: 我们首先使用下面的指令往一个文件里面循环输入内容: cnt0; while [ $c…...

mysql基础操作1

-- 创建数据库CREATE DATABASE st0203;-- 删除数据库DROP DATABASE st0203;-- 删除表DROP TABLE dept;-- 创建表CREATE TABLE dept(did int PRIMARY KEY auto_increment COMMENT主键(部门编号),deptName VARCHAR(20) NOT NULL COMMENT部门名称,address V…...

nginx-ingress部署+跨命名空间转发

nginx-ingress部署一、环境信息二、k8s环境搭建三、ingress环境搭建3.1 deploy.yaml文件3.2 service-nodeport.yaml文件四、按照业务建立service及ingress4.1 业务信息4.2 建立service4.3 创建ingress五、验证结果一、环境信息 k8s集群版本:1.23.6ingress版本&…...

耗时1个月整理的网络安全学习路线,不信还有比这更详细的

首先咱们聊聊,学习网络安全方向通常会有哪些问题 1、打基础时间太长 学基础花费很长时间,光语言都有几门,有些人会倒在学习linux系统及命令的路上,更多的人会倒在学习语言上; 2、知识点掌握程度不清楚 对于网络安全…...

ChatGPT进阶-提示词中文版

一、ChatGPT简介 ChatGPT 是 OpenAI 开发的人工智能聊天机器人。该聊天机器人基于 GPT-3.5 语言模型,经过训练可以对用户给出的指令做出详细响应。与其他聊天机器人不同,ChatGPT 可以回答后续问题、求解数学方程式、撰写文本、修复和调试代码以及总结文本…...

Linux 进程:进程状态

目录一、进程状态1.简单分类2.详细分类(1)运行态(2)休眠态[1]可中断休眠态[2]不可中断休眠态(3)停止状态(4)死亡状态(5)僵死状态二、特殊进程1.僵尸进程2.孤儿…...

应用程序性能优化方案,web服务五级缓存优化,服务器性能优化...

winfrom 全局异常捕获WPF 全局异常捕获Asp.Net全局异常捕获MVC 全局异常捕获AspNetNetCore 全局异常捕获一级缓存html/css/js 前端缓存二级缓存Asp.Net MVC AspNetCore 客户端缓存设置三级缓存服务端缓存四级redis 数据库缓存服务端缓存五级sqlserver 数据库缓存设置分布式缓存…...

云计算简介

本文为copy他人编写的文档,由于不确认作者名称,故无法标记来源(实际来源是群pdf文档),暂时发文为原创,因为无法贴出原文链接! 云原生的前世今生 随着公有云和私有云的广泛部署,云计…...

两个适配器网络冲突,限制访问特定网址

两个适配器网络冲突,限制访问特定网址说明命令说明说明 因为工作需要,有线网络访问局域网服务器,限制特别策略访问,如禁止远程。此时如果想要远程,在连接手机热点就可以,但由于两个网络的存在优先级。就出…...

电子科技大学 高级计算机系统结构 考试回忆

首先题量不算小,因此没有太多时间把题都记出来,但是叙述一下题的类型希望能帮到以后选了这门课大家,在网上确实没有搜到这门课有关考试的任何资料,所以我也没啥参考全凭记忆和老师的PPT结合。复习的时候老师给了大纲,就…...

【设计模式】18.观察者模式

概述 定义: 又被称为发布-订阅(Publish/Subscribe)模式,它定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态变化时,会通知所有的观察者对象,使他们能…...

软测入门(一)测试理念及基础知识

软测入门理念 软件的分类 按层次划分:系统软件、应用软件按组织划分:商业软件、开源软件按结构划分:单机软件、 软件缺陷 由来 Grace Hopper发明Cobol计算机语言,也是找出电脑程序中第一个bug的女程序员 BugDefect 定义 软…...

2022年“网络安全”赛项山东省菏泽市选拔赛任务书

2022年“网络安全”赛项山东省菏泽市选拔赛任务书 任务书 一、竞赛时间 共计3小时。 二、竞赛阶段 竞赛阶段 任务阶段 竞赛任务 竞赛时间 分值 第一阶段单兵模式系统渗透测试 任务一:Apache安全配置 任务二:数据分析-A 任务三:Windows操作系…...

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?

编辑:陈萍萍的公主一点人工一点智能 未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战,在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…...

装饰模式(Decorator Pattern)重构java邮件发奖系统实战

前言 现在我们有个如下的需求,设计一个邮件发奖的小系统, 需求 1.数据验证 → 2. 敏感信息加密 → 3. 日志记录 → 4. 实际发送邮件 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其…...

C++初阶-list的底层

目录 1.std::list实现的所有代码 2.list的简单介绍 2.1实现list的类 2.2_list_iterator的实现 2.2.1_list_iterator实现的原因和好处 2.2.2_list_iterator实现 2.3_list_node的实现 2.3.1. 避免递归的模板依赖 2.3.2. 内存布局一致性 2.3.3. 类型安全的替代方案 2.3.…...

进程地址空间(比特课总结)

一、进程地址空间 1. 环境变量 1 )⽤户级环境变量与系统级环境变量 全局属性:环境变量具有全局属性,会被⼦进程继承。例如当bash启动⼦进程时,环 境变量会⾃动传递给⼦进程。 本地变量限制:本地变量只在当前进程(ba…...

【机器视觉】单目测距——运动结构恢复

ps:图是随便找的,为了凑个封面 前言 在前面对光流法进行进一步改进,希望将2D光流推广至3D场景流时,发现2D转3D过程中存在尺度歧义问题,需要补全摄像头拍摄图像中缺失的深度信息,否则解空间不收敛&#xf…...

linux arm系统烧录

1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 (忘了有没有这步了 估计有) 刷机程序 和 镜像 就不提供了。要刷的时…...

将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?

Otsu 是一种自动阈值化方法,用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理,能够自动确定一个阈值,将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...

spring:实例工厂方法获取bean

spring处理使用静态工厂方法获取bean实例,也可以通过实例工厂方法获取bean实例。 实例工厂方法步骤如下: 定义实例工厂类(Java代码),定义实例工厂(xml),定义调用实例工厂&#xff…...

HashMap中的put方法执行流程(流程图)

1 put操作整体流程 HashMap 的 put 操作是其最核心的功能之一。在 JDK 1.8 及以后版本中,其主要逻辑封装在 putVal 这个内部方法中。整个过程大致如下: 初始判断与哈希计算: 首先,putVal 方法会检查当前的 table(也就…...

vulnyx Blogger writeup

信息收集 arp-scan nmap 获取userFlag 上web看看 一个默认的页面,gobuster扫一下目录 可以看到扫出的目录中得到了一个有价值的目录/wordpress,说明目标所使用的cms是wordpress,访问http://192.168.43.213/wordpress/然后查看源码能看到 这…...