Rnote:Star 8.6k,github上的宝藏项目,手绘与手写画图笔记,用它画图做笔记超丝滑,值得尝试!
嗨,大家好,我是小华同学,关注我们获得“最新、最全、最优质”开源项目和高效工作学习方法

Rnote是一款开源的基于矢量的绘图应用,专为学生、教师以及绘图板用户设计。它支持草图绘制、手写笔记以及对文档和图片进行注释。Rnote提供了PDF和图片的导入导出功能、无限画布以及适应不同屏幕尺寸的UI界面。

功能特点
Rnote以其强大的功能和灵活的用户体验著称,以下是它的一些核心特性:
-
自适应UI:专注于手写笔输入,提供流畅的绘图体验。
-
压力感应:支持不同配置的笔触样式,实现压力感应输入。
-
形状工具:创建多种不同的形状。
-
编辑工具:移动、旋转、缩放和修改现有内容。
-
文档布局:提供多种文档扩展布局选项。
-
背景定制:自定义背景颜色、图案和大小。
-
页面格式:自定义页面格式。
-
声音效果:可选的笔触声音。
-
快捷键配置:可重新配置的手写笔按钮快捷键。
-
工作区浏览器:集成的工作区浏览器,快速访问相关文件。
-
拖放与剪贴板支持:支持拖放和剪贴板功能。
-
图片导入:支持PDF、位图和SVG图片导入。
-
文档导出:文档可以导出为SVG、PDF和Xopp格式,文档页面和选择可以导出为SVG、PNG和JPEG格式。
-
文件格式:保存和加载文档使用原生
.rnote文件格式。 -
多文档工作:使用标签在多个文档之间工作。
-
自动保存与打印:支持自动保存和打印功能。
官方网站
Rnote拥有一个项目网站:rnote.flxzt.net
安装指南
Rnote支持多种操作系统,以下是各个平台的安装方法:
Linux
在Flahub上下载官方的Flatpak版本:点击这里。
在Flahub上下载
MacOS
感谢@dehesselle,Rnote现在可以在MacOS上作为应用包使用。查看仓库,最新版本可以在这里下载:点击这里。

下载MacOS应用包
Windows
从最新发布中下载Windows安装程序:点击这里。
下载Windows安装程序
也可以使用Winget安装:
winget install flxzt.rnote
降级
由于文件格式的不稳定性,有时可能需要降级到特定版本。
列出Flahub上所有可用的旧版本:
flatpak remote-info --log flathub com.github.flxzt.rnote
选择所需版本的提交,并使用以下命令降级:
sudo flatpak update --commit=<commit-hash> com.github.flxzt.rnote
降级后,可以使用以下命令固定或取消固定Flahub版本:
$ flatpak mask com.github.flxzt.rnote
$ flatpak mask --remove com.github.flxzt.rnote
要再次更新到最新版本,取消固定并运行flatpak update。
截图预览
以下是Rnote的一些截图,展示了应用的不同功能和界面:











常见问题和已知问题
在使用Rnote时,可能会遇到以下问题:
-
拖放功能不工作:确保Rnote有权访问你拖放文件的位置。可以在Flatseal(Flahub权限管理器)中授权。
-
当前文件位置奇怪:当标题栏中显示的目录类似于
/run/user/1000/../时,Rnote可能没有权限访问该目录。同样,在Flatseal中授权可以解决这个问题。 -
手写笔按钮移动画布/功能不正常:确保已安装并加载了
xf86-input-wacom(X11驱动)、libinput(Wayland)和libwacom。 -
使用手写笔悬停时,某些屏幕区域的其他输入事件被阻止:这可能是手掌拒绝功能,但如果不需要,可以检查是否有左右手系统设置,并确保设置正确。Rnote无法禁用此功能。(讨论见#329)
-
手写笔按钮快捷方式映射不符合预期:在某些设备上,一个手写笔按钮被映射到专用的“橡皮擦”模式。在快捷方式设置中的按钮可能会不一致(次要/上按钮实际上是主要/下按钮,或相反)。要更改映射到此“橡皮擦”模式的工具,请按照以下步骤操作:
-
将手写笔悬停在画布上,并按住被怀疑映射到“橡皮擦”模式的按钮
-
在按住按钮的同时切换到所需的笔样式
-
释放按钮时,它应该切换回之前的笔样式
-
“橡皮擦”模式中的笔样式现在应该被记住
-
字体
Rnote内置了以下字体:
-
Grape Nuts:Grape Nuts是一种简单的手写休闲字体。
-
OpenDyslexic-Regular:OpenDyslexic是一种针对一些常见阅读障碍症状设计的字体。
-
TT2020Base-Regular:TT2020是一款先进的开源超现实主义多语言打字机字体,适用于新的十年。
-
Virgil:Virgil是Excalidraw使用的字体。
同类项目比较
在开源社区中,还有其他一些类似的项目,如Excalidraw、Pizzara等。以下是它们的一些特点:
-
Excalidraw:一款简洁的在线绘图工具,支持手写笔输入,但功能相对单一。
-
Pizzara:一款创新的绘图应用,具有高级形状处理和无限缩放功能,但与Rnote相比,可能在文档注释方面稍显不足。
-
Inkscape:一个强大的矢量图形编辑器,适用于创建和编辑SVG文件。
-
Krita:一个专为概念艺术家、纹理画家、漫画家和插画家设计的开源绘画软件。
-
MyPaint:一个简约的绘画软件,专注于提供流畅的绘图体验。
总的来说,Rnote在功能丰富性、自定义选项和跨平台支持方面具有明显优势。
通过本文的介绍,相信你已经对Rnote有了更深入的了解。如果你是手写笔记和绘图的爱好者,不妨尝试一下这款开源应用,相信它会给你带来不一样的体验。
项目地址
https://github.com/flxzt/rnote
相关文章:
Rnote:Star 8.6k,github上的宝藏项目,手绘与手写画图笔记,用它画图做笔记超丝滑,值得尝试!
嗨,大家好,我是小华同学,关注我们获得“最新、最全、最优质”开源项目和高效工作学习方法 Rnote是一款开源的基于矢量的绘图应用,专为学生、教师以及绘图板用户设计。它支持草图绘制、手写笔记以及对文档和图片进行注释。Rnote提供…...
python如何解析word文件格式(.docx)
python如何解析word文件格式(.docx) .docx文件遵从开源的“Office Open XML标准”,这意味着我们能用python的文本操作对它进行操作(实际上PPT和Excel也是)。而且这并不是重复造轮子,因为市面上操作.docx的…...
「刘一哥GIS」系列专栏《GRASS GIS零基础入门实验教程(配套案例数据)》专栏上线了
「刘一哥GIS」系列专栏《GRASS GIS零基础入门实验教程》全新上线了,欢迎广大GISer朋友关注,一起探索GIS奥秘,分享GIS价值! 本专栏以实战案例的形式,深入浅出地介绍了GRASS GIS的基本使用方法,用一个个实例讲…...
使用nginx搭建通用的图片代理服务器,支持http/https/重定向式图片地址
从http切换至https 许多不同ip的图片地址需要统一进行代理 部分图片地址是重定向地址 nginx配置 主站地址:https://192.168.123.100/ 主站nginx配置 server {listen 443 ssl;server_name localhost;#ssl证书ssl_certificate ../ssl/ca.crt; #私钥文件ssl_ce…...
零基础构建最简单的 Tauri2.0 桌面项目 Star 88.4k!!!
目录 预安装环境 安装nodejs windows下安装 linux下安装 nodejs常遇问题 安装C环境 介绍 下载 安装 安装Rust语言 Tauri官网 安装 vscode 安装 rust 插件 安装 Tauri 插件 运行成果 预安装环境 安装nodejs windows下安装 NodeJs_安装及下载_哔哩哔哩_bilibi…...
智能科技与共情能力加持,哈曼重新定义驾乘体验
2025年1月6日,拉斯维加斯,2025年国际消费电子展——想象一下,当您步入一辆汽车,它不仅能响应您的指令,更能理解您的需求、适应您的偏好,并为您创造一个独特且专属的交互环境。作为汽车科技领域的知名企业和…...
猫贫血吃什么能快速补血?
各位铲屎官们,看到自家猫咪无精打采、小脸苍白,是不是特别心疼?贫血可是猫咪健康的大敌,今天就来给大家支支招,哪些食物和方法能让猫咪快速补血,恢复活力! 一、红肉及内脏类 红肉是补血的“主力…...
微服务拆分
微服务拆分 接下来,我们就一起将黑马商城这个单体项目拆分为微服务项目,并解决其中出现的各种问题。 熟悉黑马商城 首先,我们需要熟悉黑马商城项目的基本结构: 大家可以直接启动该项目,测试效果。不过,…...
Android SystemUI——车载CarSystemUI加载(八)
Android 系统早期的状态栏和导航栏对于手机设备来说那是相当重要的,但是随着手机版本的不断更新,状态栏和导航栏对于手机的重要性在逐渐降低,特别是在快捷手势出现之后,导航栏几乎变得可有可无。但是对于当前如火如荼的车载系统来说,状态栏和导航栏却几乎是必备的,谷歌自…...
2025年编程语言热度分析:Python领跑,Go与Rust崛起
TIOBE Index(TIOBE 编程语言指数)是一个衡量编程语言流行度的排名系统。它通过分析多种搜索引擎、在线编程社区、技术论坛、问答网站(如 Google、Bing、Yahoo、Wikipedia、Stack Overflow)等的搜索和讨论数据,评估不同…...
前缀和 (一维 二维)
前缀和作用: 快速求出原数组中一段数组的和 思路 1.预处理前缀和数组 2.用公式求区间和 公式: 二维前缀和: s [ i ] [ j ] s[ i - 1 ] [ j ] s[ i ] [ j - 1 ] - s [ i - 1 ] [ j - 1]; 题型 一维 二维 题解 一维 #include <iost…...
精选算法合集
一、BFS相关 1.1 最小步骤 给定一个数组,从第一个开始,正好走到数组最后,所使用的最少步骤数。要求: 第一步从第一元素开始,第一步小于<len/2(len为数组的长度)。从第二步开始,…...
HackMyVM-Klim靶机的测试报告
目录 一、测试环境 1、系统环境 2、使用工具/软件 二、测试目的 三、操作过程 1、信息搜集 2、Getshell 3、提权 CVE-2008-0166 四、结论 一、测试环境 1、系统环境 渗透机:kali2021.1(192.168.159.127) 靶 机:debian(192.168.159.27) 注意事…...
C++内存分布
小试牛刀: int globalVar 1; static int staticGlobalVar 1; void Test() {static int staticVar 1;int localVar 1;int num1[10] { 1, 2, 3, 4 };char char2[] "abcd";const char* pChar3 "abcd";int* ptr1 (int*)malloc(sizeof(int)…...
mysql主从复制sql进程中断,报错Tablespace is missing for table ……
一 解决办法 关键执行1.2步,1.1/1.3结合实际环境操作。 1.1 如果从库只读开启了,要先关闭只读 show variables like %read_only%; set global super_read_onlyoff; set global read_onlyoff; 1.2 discart/import tablespace ALTER TABLE 表名 DISC…...
STM32 FreeRTOS 信号量
信号量的简介 reeRTOS中的信号量是一种用于任务间同步和资源管理的机制。信号量可以是二进制的(只能取0或1)也可以是计数型的(可以是任意正整数)。信号量的基本操作包括“获取”和“释放”。 比如动车上的卫生间,一个…...
Codemirror6个人使用心得总结
Codemirror6 包 用法总结 本次用到的 Codemirror6 有关的包如下 语法支持包语法支持包核心插件codemirror/lang-yaml 6.1.1codemirror/lang-less 6.0.2codemirror/autocomplete 6.16.0codemirror/lang-xml 6.1.0codemirror/lang-liquid 6.2.1codemirror/commands 6.5.0codemirr…...
Ruby语言的软件开发工具
Ruby语言的软件开发工具概述 引言 Ruby是一种高效、灵活的动态编程语言,因其简洁的语法和强大的功能而受到开发者的欢迎。在软件开发过程中,使用合适的开发工具可以大幅提高工作效率,提升代码质量。本文将详细介绍一些常用的Ruby开发工具&a…...
OpenHarmony API 设计规范
OpenHarmony API 设计规范 修订记录 版本作者时间更新内容v0.1,试运行版OpenHarmony API SIG2022年11月初版发布 目的 API是软件实现者提供给使用者在编程界面上的定义,API在很大程度上体现了软件实体的能力范围。 同时,API定义的好坏极…...
ESP8266 AP模式 网页配网 arduino ide
ESP8266的AP配网,可以自行配置网络,一个简单的demo,文档最后有所有的代码,已经测试通过. 查看SPIFFS文件管理系统中的文件 账号密码是否存在,如不存在进入AP配网,如存在进入wifi连接模式 // 检查Wi-Fi凭据if (isWiFiConfigured()) {Serial.println("找到Wi-Fi凭据&#…...
利用最小二乘法找圆心和半径
#include <iostream> #include <vector> #include <cmath> #include <Eigen/Dense> // 需安装Eigen库用于矩阵运算 // 定义点结构 struct Point { double x, y; Point(double x_, double y_) : x(x_), y(y_) {} }; // 最小二乘法求圆心和半径 …...
【网络】每天掌握一个Linux命令 - iftop
在Linux系统中,iftop是网络管理的得力助手,能实时监控网络流量、连接情况等,帮助排查网络异常。接下来从多方面详细介绍它。 目录 【网络】每天掌握一个Linux命令 - iftop工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景…...
python打卡day49
知识点回顾: 通道注意力模块复习空间注意力模块CBAM的定义 作业:尝试对今天的模型检查参数数目,并用tensorboard查看训练过程 import torch import torch.nn as nn# 定义通道注意力 class ChannelAttention(nn.Module):def __init__(self,…...
Prompt Tuning、P-Tuning、Prefix Tuning的区别
一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...
Cesium1.95中高性能加载1500个点
一、基本方式: 图标使用.png比.svg性能要好 <template><div id"cesiumContainer"></div><div class"toolbar"><button id"resetButton">重新生成点</button><span id"countDisplay&qu…...
C++ 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...
【RockeMQ】第2节|RocketMQ快速实战以及核⼼概念详解(二)
升级Dledger高可用集群 一、主从架构的不足与Dledger的定位 主从架构缺陷 数据备份依赖Slave节点,但无自动故障转移能力,Master宕机后需人工切换,期间消息可能无法读取。Slave仅存储数据,无法主动升级为Master响应请求ÿ…...
CMake控制VS2022项目文件分组
我们可以通过 CMake 控制源文件的组织结构,使它们在 VS 解决方案资源管理器中以“组”(Filter)的形式进行分类展示。 🎯 目标 通过 CMake 脚本将 .cpp、.h 等源文件分组显示在 Visual Studio 2022 的解决方案资源管理器中。 ✅ 支持的方法汇总(共4种) 方法描述是否推荐…...
优选算法第十二讲:队列 + 宽搜 优先级队列
优选算法第十二讲:队列 宽搜 && 优先级队列 1.N叉树的层序遍历2.二叉树的锯齿型层序遍历3.二叉树最大宽度4.在每个树行中找最大值5.优先级队列 -- 最后一块石头的重量6.数据流中的第K大元素7.前K个高频单词8.数据流的中位数 1.N叉树的层序遍历 2.二叉树的锯…...
PostgreSQL——环境搭建
一、Linux # 安装 PostgreSQL 15 仓库 sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-$(rpm -E %{rhel})-x86_64/pgdg-redhat-repo-latest.noarch.rpm# 安装之前先确认是否已经存在PostgreSQL rpm -qa | grep postgres# 如果存在࿰…...
