思源白板功能对比

前言

白板作为一种自由度极高的笔记方式,能帮助梳理思路以及可视化呈现笔记内容。社区中关于开发白板功能的呼声也不绝于耳。白板功能虽然一直在思源的开发路线图中,但受限于思源目前紧张的开发资源,以及考虑到白板功能的开发难度,该功能的上线应该需要较长的一段时间。

为此,我对比了一下目前思源中的白板工具,分享给需要在过渡期使用白板功能的坛友。

前排叠甲:此对比仅用于帮助需要使用白板功能的用户(尤其是小白)快速了解各白板工具能实现的功能,为纯主观评价。本人十分尊重每一位开发者。另外,本人初入思源笔记不久,许多功能可能还没有体验到或存在误解,欢迎指正。同时,如果各位有其他的白板方案,也欢迎友好讨论。

目前思源的白板工具及功能对比

功能对比

类型 插件
插件 插件 插件 挂件
挂件 挂件 Iframe
名称 思源 Draw.io 插件 Excalidraw Tldraw 白板(预览版) 博思白板 Whiteboard draw.io excalidraw Draw.io 等
文档中嵌入白板 iframe 块插入白板或超链接 超链接 超链接 超链接 嵌入块 lightbox 模式
超链接
块引用
嵌入块
搜索白板内容
内容拖拽
公式输入
思维导图 手绘 手绘 手绘 手绘
素材库 本地导入 按指引

个人评价(纯主观)

  1. Whiteboard(挂件)
    1. 目前和思源集成度最高的一个工具,使用前务必要看文档。
    2. 虽然无法实现和笔记的双向关联,但能在画板中同步显示或悬浮预览笔记内容。
    3. 能实现内容拖动和搜索(但嵌入的笔记内容无法搜索),基本可以满足大部分白板需求。
    4. 显示模式仍有改进空间。比如重新打开文档会自动进入编辑模式,因此每次都要重新进入查看模式和预览模式。
    5. 另外在查看模式下仍有部分功能按钮,虽然无伤大雅,但强迫症看着也挺难受的。
  2. draw.io(挂件)
    1. 具有丰富的绘图素材,支持数学公式
    2. 可能是版本滞后的原因,与网页版本相比缺少部分功能(如导入模板),
    3. 开启 lightbox 模式后要再次编辑需要更改属性值,略显麻烦。
    4. 和思源编辑之间仅能通过超链接关联。
  3. excalidraw(挂件)
    1. 默认是图片形式显示在文档中,能通过浏览器编辑保存。
    2. 绘图会自动铺满挂件,没有留白,好评
  4. 思源 Draw.io 插件(插件)
    1. 相当于在思源中打开 Drawio,并且可以通过嵌入 ifame 块的方式实现在笔记中插入白板,如果你习惯使用 drawio,强烈推荐使用
    2. 和思源笔记之间仅能通过超链接关联。
  5. Excalidraw(插件)
    1. 相当于在思源中打开在线的 Excalidraw
    2. 和思源笔记之间仅能通过超链接关联。
  6. Tldraw 白板(预览版)(插件)
    1. 相当于在思源中打开在线的 Tldraw
    2. 能嵌入思源笔记中的内容块以及悬浮预览,但嵌入文档中的公式无法正常显示
  7. 博思白板(插件)
    1. 相当于在思源中打开在线的博思白板(个人几乎没有体验过这个插件)
    2. 和思源笔记之间仅能通过超链接关联。
  8. Iframe 块中插入 Draw.io 或其他 (集市上了新的 drawio 插件,此方法已没有存在的必要了)
    1. 采用 iframe 块嵌入绘图内容。
    2. 优点是简洁,不需要插件挂件
    3. 缺点是需要联网。drawio 同步编辑内容缺乏较好方案。同步通过 ondrive 授权,但该步骤无法在思源客户端内实现。因此仅能通过浏览器打开思源使用。

一点唠叨

白板功能是我目前使用思源笔记过程中最无法解决的问题,集市中虽然有诸如 whitebord 这类可以实现笔记联动的挂件,但我个人觉得 exclidraw 使用起来还是挺费劲的,如果 drawio 也能实现嵌入或悬浮显示笔记内容,应该能大大提高我的个人体验。

最近逛社区总感觉思源的官方白板最终会流产,但个人觉得集市中的白板工具与笔记内容多多少少有些割裂,我理想中的白板工具应该是一种内容块,能和笔记实现双链,这样可以更清晰的查看笔记关联,而这些功能也许只有官方的白板才能实现。

但无论如何,都希望思源能越做越好,早日打响知名度。


2024.9.28 更新

whiteboard 挂件查看模式修改

github 中发了个 issue,通过开发大佬的指引,目前 whiteboard 挂件可以实现默认开启查看模式,以及查看模式隐藏所有按钮。详情可以看如下链接。

能否优化查看模式和预览模式 · Issue #31 · BryceAndJuly/Whiteboard (github.com)

1、调整 viewModeEnabled 的初始值,默认开启查看模式。

打开 Whiteboard/assets/index-c894b550.js,搜索:

zoom:{value:1},viewModeEnabled:!1

改成:

zoom:{value:1},viewModeEnabled:!0

2、查看模式 下隐藏【保存】、【刷新】按钮

打开 Whiteboard/assets/index-8a263e3d.css,在末尾加上以下两个样式并保存。

/* 查看模式下,隐藏【保存】、【刷新】按钮 */
div#root:has( .excalidraw.excalidraw-container.excalidraw--view-mode) ~ #refreshBtn {
    display: none;
}
div#root:has( .excalidraw.excalidraw-container.excalidraw--view-mode) ~ #saveBtn{
    display: none;
}

备注:通过快捷键 Alt+R 来关闭 查看模式 时如果没生效,大概因为白板没获得焦点,可以鼠标点一下左下角的【重置缩放】后再按。或者直接鼠标右键菜单来关闭 查看模式

查看模式下,隐藏左下、左上按钮的话,试试这个吧

.excalidraw.excalidraw--view-mode .Stack_vertical {
    display: none;
}

另外,通过记事本修改 js 文件会导致挂件出 bug(修改 css 则不影响),因此非编程小白可以尝试直接替换如下修改后的文件。

v1.3.2 默认开启查看模式以及让查看模式更纯粹.zip

重要提醒:请在测试工作空间测试无误后再使用,避免造成不可预期的损失。

11 月 16 日更新

集市上新了 Drawio 的插件,此插件能通过 iframe 块的方式嵌入白板,如果你习惯使用 drawio 来画白板,强烈强烈推荐大家使用。

  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    23086 引用 • 92914 回帖

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • i1356

    除了专业做白板的,其它的都只能算是半成品,占个坑而已。

    1 回复
  • 其他回帖
  • ONIONLYONE 1

    逻辑是这样的:一个文档就是一个白板,通过嵌入快嵌入到其他文档中,可以在嵌入块里面编辑。如果没有悬浮显示以及在白板中嵌入其他内容块的需求,可以试试 drawio 插件。

  • captha

    如果这个白板画的图只能铺满文档区域,不能和文档其它内容同时共存,那这个白板工具和单独的软件区别不大,便利性打打折扣。

    这能不能添加一个退出编辑的按钮呢?

    让其能和文档其它内容同时显现。这样文字说明不清的事情就可以用画图来辅助说明了

    1 回复
  • ONIONLYONE

    感谢大佬开发,我十分认同你的观点,所以才认为白板这功能还是有官方去做的必要。就最终实现的效果来说,目前的工具实际也能满足绝大部分需求,更多的不便其实还是 exclidraw 等软件本身带来的。

  • 查看全部回帖