Skip to content

Releases: Youyigedx/JuanLink

Release list

v0.2.0

Choose a tag to compare

@Youyigedx Youyigedx released this 25 Sep 01:25

v0.2.0 — 今天是中秋,团聚的日子。

画布模块经审计重构(详见 docs/audit-canvas.md):补足 DrawBox 引擎已有但未暴露的能力,并修复三处缺陷。

新增功能

  • 画布背景色:可更换并随协作同步(CanvasMeta 操作),双端外观一致
  • 上下文样式栏(随工具/选中态切换):
    • 选中编辑:删除 / 复制 / 描边色 / 填充(可无填充)/ 描边样式(实线·虚线·点线)/ 描边开关 / 圆角 / 前移后移
    • 形状工具:描边样式 / 填充 / 描边开关 / 圆角(新建默认)
    • 橡皮大小调节(5–60)
    • 文字工具:默认字号 / 字体 / 对齐
  • 文本编辑对话框增强:字号 / 对齐(左中右)/ 字体(默认·衬线·等宽)随提交同步
  • 画布缩放控件(右下角):缩小 / 放大 / 适应画布 / 100%
  • 辅助网格开关(本地会话装饰,不进导出)
  • 复制选中元素(偏移一份并选中副本,随协作同步)

修复

  • 颜色序列化精度:toHexString 截断导致的颜色跨端往返漂移(1/255 色差)
  • 清空画布不再重置背景色与工具样式(保留会话设置),且可单步撤销
  • Undo/Redo 意图防御:避免与跨端撤销历史混淆

测试

  • core + desktop 全部通过;新增 7 项画布能力链路测试(背景同步与撤销 / 远端背景应用 / 复制 / 清空保留背景 / 文本样式 / Undo 防御 / 空选中复制)

平台

  • 桌面:Windows / macOS / Linux(Compose Desktop)
  • Android(含 CameraX 扫码加入)
  • iOS:工程骨架占位,UI 层未实现

跨网连接需自配 TURN 服务器(应用内配置引导有说明);仓库默认仅随附公开测试 fallback,通常不可用。

Full Changelog: v0.1.0...v0.2.0

Full Changelog: v0.2.0...v0.2.0

v0.1.0

Choose a tag to compare

@Youyigedx Youyigedx released this 08 Sep 06:21

v0.1.0 — 首个公开版本

Juan LinK(婵娟):跨平台点对点协作绘图。二维码配对即连,无需账号、无中心服务器;同步帧经 X25519 + AES-256-GCM 端到端加密。

功能

  • 实时笔画同步:Lamport 全序合并,双端画布状态一致
  • 全工具绘画:画笔 / 直线 / 矩形 / 圆形 / 三角形 / 箭头 / 文字 / 橡皮(DrawBox 渲染引擎)
  • 画布操控:缩放 / 平移 / 图层前移后移 / 撤销重做
  • 二维码 / 配对码加入,图片导入双端同步
  • 断线保护:自动重连 + 断线期间操作补同步;会话不会被自动关闭,可手动断开
  • 历史快照:手动 / 定时快照,侧栏回顾每一版

网络

  • 同网段:局域网 TCP 直连
  • 跨网(对称 NAT / 蜂窝 CGNAT):可配置 TURN 中继兜底,首次启动含强制配置引导(可跳过,仅局域网直连)

平台

  • 桌面:Windows / macOS / Linux(Compose Desktop)
  • Android(含 CameraX 扫码加入)
  • iOS:工程骨架占位,UI 层未实现

跨网连接需自配 TURN 服务器(应用内配置引导有说明);仓库默认仅随附公开测试 fallback,通常不可用。

构建

依赖 JDK 21 与 Android SDK(构建安卓端时)。详见 README「构建」。