普通视图

发现新文章,点击刷新页面。
今天 — 2025年1月18日首页

Rnote:Star 8.6k,github上的宝藏项目,手绘与手写画图笔记,用它画图做笔记超丝滑,值得尝试!

2025年1月17日 23:36

嗨,大家好,我是小华同学,关注我们获得“最新、最全、最优质”开源项目和高效工作学习方法

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

image.png

功能特点

Rnote以其强大的功能和灵活的用户体验著称,以下是它的一些核心特性:

  • 自适应UI:专注于手写笔输入,提供流畅的绘图体验。
  • 压力感应:支持不同配置的笔触样式,实现压力感应输入。
  • 形状工具:创建多种不同的形状。
  • 编辑工具:移动、旋转、缩放和修改现有内容。
  • 文档布局:提供多种文档扩展布局选项。
  • 背景定制:自定义背景颜色、图案和大小。
  • 页面格式:自定义页面格式。
  • 声音效果:可选的笔触声音。
  • 快捷键配置:可重新配置的手写笔按钮快捷键。
  • 工作区浏览器:集成的工作区浏览器,快速访问相关文件。
  • 拖放与剪贴板支持:支持拖放和剪贴板功能。
  • 图片导入:支持PDF、位图和SVG图片导入。
  • 文档导出:文档可以导出为SVG、PDF和Xopp格式,文档页面和选择可以导出为SVG、PNG和JPEG格式。
  • 文件格式:保存和加载文档使用原生.rnote文件格式。
  • 多文档工作:使用标签在多个文档之间工作。
  • 自动保存与打印:支持自动保存和打印功能。

官方网站

Rnote拥有一个项目网站:rnote.flxzt.net

安装指南

Rnote支持多种操作系统,以下是各个平台的安装方法:

Linux

在Flahub上下载官方的Flatpak版本:点击这里

在Flahub上下载

在Flahub上下载

MacOS

感谢@dehesselle,Rnote现在可以在MacOS上作为应用包使用。查看仓库,最新版本可以在这里下载:点击这里

下载MacOS应用包

下载MacOS应用包

Windows

从最新发布中下载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的一些截图,展示了应用的不同功能和界面:

image.png

image.png

image.png

image.png

image.png

image.png

image.png

常见问题和已知问题

在使用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
昨天以前首页

Mermaid:Star 74.4K,Github上的宝藏项目,你敢相信Markdown也能画出各式各样的流程图,操作太丝滑啦!

2025年1月16日 14:03

嗨,大家好,我是小华同学,关注我们获得“最新、最全、最优质”开源项目和高效工作学习方法

Mermaid 是一个基于 JavaScript 的图表绘制工具,它使用类似 Markdown 的文本定义语法,通过渲染器将文本转换为精美的图表。它支持多种类型的图表,包括流程图、时序图、甘特图、类图、状态图、饼图、Git 图、条形图和用户旅程图等。

特色优势

  • 简单易学:Mermaid 的语法简单易懂,即使没有编程经验的用户也能快速上手。
  • 高效便捷:通过文本定义图表,可以轻松地创建、修改和版本控制图表。
  • 可集成性强:Mermaid 可以集成到各种应用程序中,例如 Markdown 编辑器、文档工具和代码库等。
  • 丰富的功能:Mermaid 支持多种类型的图表,并提供了丰富的配置选项,可以满足各种需求。

应用场景

  • 文档编写:在技术文档中插入图表,帮助读者理解复杂的概念和流程。
  • 代码注释:在代码中使用 Mermaid 绘制图表,解释代码逻辑和功能。
  • 项目规划:使用甘特图规划项目进度和任务分配。
  • 教学演示:在课件中使用 Mermaid 绘制图表,帮助学生理解知识点。
  • 数据分析:使用饼图、条形图等图表展示数据分析和可视化结果。
  • 技术博客:在技术博客中使用Mermaid生成图表,使文章更加生动,易于理解。
  • 会议记录:在会议记录中使用甘特图来跟踪项目进度。

使用方法

安装 Mermaid

Mermaid 可以通过 npm 安装:

npm install mermaid

在 HTML 中使用 Mermaid

在 HTML 文件中引入 Mermaid 的 JavaScript 库和 CSS 样式文件:

<script src="https://unpkg.com/mermaid/dist/mermaid.min.js"></script>
<link rel="stylesheet" href="https://unpkg.com/mermaid/dist/mermaid.min.css">

在 HTML 文件中添加一个容器元素,并使用 mermaid 标签定义图表:

<div class="mermaid">
    graph LR
    A[Hard] -->|Text| B(Round)
    B --> C{Decision}
    C -->|One| D[Result 1]
    C -->|Two| E[Result 2]
</div>

在 Markdown 中使用 Mermaid

使用Mermaid.js非常简单,你只需要编写类似Markdown的文本,然后Mermaid.js会解析这些文本并生成相应的图表。以下是一些基本的使用方法:

流程图

flowchart LR
    A[Hard] -->|Text| B(Round)
    B --> C{Decision}
    C -->|One| D[Result 1]
    C -->|Two| E[Result 2]

序列图

sequenceDiagram
    Alice->>John: Hello John, how are you?
    loop HealthCheck
        John->>John: Fight against hypochondria
    end
    Note right of John: Rational thoughts!
    John-->>Alice: Great!
    John->>Bob: How about you?
    Bob-->>John: Jolly good!

甘特图

gantt
    section Section
    Completed :done,    des1, 2014-01-06,2014-01-08
    Active        :active,  des2, 2014-01-07, 3d
    Parallel 1   :         des3, after des1, 1d
    Parallel 2   :         des4, after des1, 1d
    Parallel 3   :         des5, after des3, 1d
    Parallel 4   :         des6, after des4, 1d

类图

classDiagram
    Class01 <|-- AveryLongClass : Cool
    <<Interface>> Class01
    Class09 --> C2 : Where am I?
    Class09 --* C3
    Class09 --|> Class07
    Class07 : equals()
    Class07 : Object[] elementData
    Class01 : size()
    Class01 : int chimp
    Class01 : int gorilla
    class Class10 {
        <<service>>
        int id
        size()
    }

状态图

stateDiagram-v2
    [*] --> Still
    Still --> [*]
    Still --> Moving
    Moving --> Still
    Moving --> Crash
    Crash --> [*]

饼图

pie
    "Dogs" : 386
    "Cats" : 85.9
    "Rats" : 15

Git图表

    gitGraph
      commit
      commit
      branch develop
      checkout develop
      commit 
      commit
      checkout main
      merge develop
      commit
      commit

同类项目

  • PlantUML:一个基于 Java 的图表绘制工具,支持多种类型的图表,包括时序图、用例图、类图、活动图、组件图、部署图等。
  • Graphviz:一个开源的图形可视化工具,可以将文本转换为各种格式的图形文件,例如 PNG、SVG、PDF 等。
  • D3.js:一个 JavaScript 库,用于在网页中创建交互式图表和可视化效果。
  • Command Line Interface :Mermaid的命令行接口,允许用户在命令行中快速生成图表。
  • Live Editor :Mermaid的实时编辑器,用户可以实时预览图表的生成过程。
  • HTTP Server :一个HTTP服务器,用于托管Mermaid图表,使得用户可以通过Web访问和编辑图表。

总结

Mermaid 是一个功能强大、简单易用的图表绘制工具,可以帮助你轻松地创建和修改各种类型的图表。它具有丰富的功能、灵活的配置选项和良好的可集成性,可以满足各种应用场景的需求。

项目地址

https://github.com/mermaid-js/mermaid 
❌
❌