ChatImage

ChatImage

Chimage 是一个 Minecraft 模组,可让你直接在游戏聊天中粘贴、预览和分享图片。

社交

Chimage 是一款 Minecraft 模组,允许你直接在游戏内聊天中粘贴、预览和分享图片。

聊天预览示例图片

目标是在从 1.16.5 开始的每一个 Minecraft 版本上同时支持 Fabric 和 Forge。

如何使用

使用 Chimage 非常简单。有三种方式可以将图片附加到你的聊天消息中:

  1. 剪贴板:在聊天栏打开时,直接按下 CTRL + V。(需在剪贴板中已有图片或图片文件)
  2. 拖放:在聊天打开时,将电脑上的图片文件直接拖入 Minecraft 窗口。
  3. URL 加载:在聊天中输入 !(你的链接),或者直接输入 ! 然后按下 CTRL + V 粘贴图片链接。Chimage 会自动从网络获取图片!

附加图片后,聊天栏上方会出现一个小的预览窗口。你可以在发送前确认图片。

功能列表
  • 剪贴板粘贴:在聊天打开时按 CTRL + V 从剪贴板发送图片。
  • 拖放:在聊天打开时,将电脑上的图片文件直接拖入游戏窗口。
  • URL 加载:通过粘贴链接或输入 !(url) 即时获取图片、GIF 和图库链接(如 Imgur 和 Tenor)。
  • 实时预览:在发送前可预览图片窗口进行确认。
  • 聊天内渲染:直接在聊天框中查看其他玩家发送的图片。
  • 全屏查看器:点击聊天中的任意图片即可全屏查看,并支持缩放。
  • 图片元数据:按住 SHIFT 键悬停在图片上可查看其详细信息。
  • 快速下载:对图片使用 SHIFT + 左键 将其保存到电脑。
  • 快速复制:对图片使用 CTRL + 左键 直接将其复制到剪贴板。
  • 剧透功能:将图片标记为剧透,使其在聊天中保持模糊,直到悬停或点击才显示。
  • 原版兼容性:原版客户端可通过可点击的备选链接查看图片(如果服务器启用了此功能)。
  • 高度可配置:调整最大图片尺寸、渲染限制、行为等。
  • 内置图片编辑器:在发送前可进行绘制、擦除、取色、裁剪和调整大小。
  • Immersive Paintings 集成:将编辑好的图片直接导出到世界中,作为自定义画作或涂鸦!
图片编辑器

Chimage 拥有一个功能强大的内置图片编辑器,允许你在聊天中发送前快速修改图片。

功能包括:

  • 画笔和橡皮擦:直接在图片上绘制或擦除,笔刷大小可自定义。
  • 取色器:功能全面的 RGB/HSL/HSV 及 Alpha 取色器,可选择你需要的精确颜色。
  • 调整大小:放大或缩小图片,可选择锁定宽高比。
  • 裁剪:快速裁剪出图片的重要部分。
  • 撤消 / 重做:操作失误?使用 Ctrl+Z 和 Ctrl+Y 撤消或重做你的操作。
查看编辑器截图

(截图即将推出)

Immersive Paintings 集成

如果你在安装 Chimage 的同时也安装了 Immersive Paintings 模组,图片编辑器内会出现一个新的导出按钮!

这个功能允许你获取任意图片或在编辑器中绘制的任何图画,并将其立即转换为自定义的画作或涂鸦物品。然后你就可以将其放置在你的 Minecraft 世界中的任何地方!

命令
  • /chimage config - 直接在聊天中管理你的客户端和服务器配置。
  • /chimage server - 管理内置 HTTP 服务器的命令(status、start、stop、getActiveFiles、getLatestLog 等)。
  • /chimage access - 管理访问列表(mode、add、remove、list),以精确控制谁被允许发送图片。
  • /chimage debug - 触发测试下载或启用开发者覆盖选项(viewBoundingBoxes、verbose)。
  • /chimage version - 检查模组版本、游戏版本和加载器类型。
服务器兼容性

原版服务器 该模组在原版服务器上被禁用。要上传和分享图片,服务器也必须安装该模组。

原版客户端(基于链接的备选方案) 如果玩家未安装模组连接,他们仍然可以通过基于链接的备选方案“看到”图片!服务器将上传的图片转换为可点击的网络链接,供原版客户端在浏览器中打开。(注意:服务器所有者需要自行配置此功能。)

服务器和 Web 查看器设置

Chimage 包含一个内置的 HTTP 服务器,允许原版客户端或游戏外的用户使用简洁的 UI 直接在浏览器中查看上传的图片!

1. 提取 Web 文件

找到模组 JAR 旁边“补充资源”中附带的 ImageHost.zip。将这个压缩包直接解压到你的 Minecraft 服务器根文件夹(即包含 mods 文件夹、server.properties 等的文件夹)。解压后必须创建一个名为 ImageHost 的文件夹。 示例路径: /path/to/server/ImageHost/index.html

2. 配置设置

打开你的 config/chimage-server.json 文件(或者直接使用游戏内的 Mod Menu -> Chimage -> 托管 标签页)并调整以下设置:

  • "enableClickableLinks": true - 允许模组在聊天中发送网络链接,而不是在玩家没有安装模组时回退到原始数据。
  • "clickableLinkUrlPlaceholder": "http://images.yoursite.com/" - 提供给玩家的基础 URL。请确保包含尾部斜杠!如果你没有域名或反向代理,你也可以使用你的 IP 和端口,例如 "http://1.2.3.4:8080/"。
  • "enableBuiltInHostServer": true - 开启内置 HTTP 服务器。
  • "builtInHostServerPort": 8080 - 服务器运行的端口(如果 8080 已被占用,请修改此值)。

3. 可选:Nginx 反向代理

如果你想使用域名(例如 images.yoursite.com)而不暴露端口,你可以使用 Nginx 将流量反向代理到 Chimage。

server {
    listen 80;
    server_name images.yoursite.com;

    location / {
        proxy_pass http://localhost:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

你可以通过安装 Certbot 并运行 certbot --nginx -d images.yoursite.com 轻松地使用 HTTPS 保护它!(如果你这样做,记得将你的 clickableLinkUrlPlaceholder 改为 "https://images.yoursite.com/")

4. 测试服务器

你可以使用以下命令检查内部 HTTP 服务器是否正在运行,并直接在游戏内进行管理:

  • /chimage server status - 检查 HTTP 服务器是否正在运行并查看其当前运行时间。
  • /chimage server start 或 stop - 手动开启或关闭内置 HTTP 服务器。
  • /chimage server getActiveFiles - 查看当前存储并提供服务的上传图片数量。
  • /chimage server getLatestLog - 直接在聊天中查看最近的 HTTP 服务器访问日志。
  • /chimage server getWebsitePath - 验证服务器提供 HTML 文件的目录。
前沿版本构建

你可以直接从官方网站下载最新的、前沿版本的模组: https://chimage.krwclassic.com/

(警告:这些版本正在积极开发中,可能不稳定!)

计划功能 (待办事项)

1.3.X

  • 文本工具可展开的顶部工具栏,例如文本背景选项
  • 全屏图片/GIF 上的复制/保存按钮
  • 加载 F2 截图作为附件
  • 修复画笔预览不显示准确形状的问题
  • 用绘制的图标替换某些设置中的文本复选框
  • 编辑器使用教程提示(如何移动、快捷键等)
  • 向撤销历史添加自动调整大小
  • 编辑器左下角显示淡淡的 chimage 文字
  • 如果用户是 OP,在世界加入时显示更新可用提示(服务器也会在聊天中通知所有 OP)
  • 冷却时间视觉指示器
  • 添加一个选项来配置绘图工具的鼠标轮询率
  • /msg 支持(可按命令自定义并可切换)
  • 编辑器中更多的原生纹理(用泥土条和石按钮纹理替换顶部工具栏和颜色小部件)
  • 接收时压缩(为减少图形负载,客户端可以强制执行降低的分辨率限制,并在显示前缩小图片,在 shift 提示中显示额外信息)
  • 宽高比按钮(裁剪、扩展和解除比例链接时的调整大小,而不是使用大小滑块)
  • 如果不是 OP,隐藏服务器配置
  • 始终显示的预览(从电脑中选择/新建文件)
  • 混音按钮(修改他人的图片)
  • 多图片支持???1.3.X | 箭头键循环浏览附件(自动循环图片配置)
  • 图库(保存图片和 GIF)
  • 修复基于某些设置(如原版模式)更新旧消息的问题 ~1.16.5

1.4.X

  • 允许对 GIF 使用图片编辑器,但排除绘图工具
  • 图层
  • 视频支持 (1.3.X/1.4.X)
  • 下载进度条
  • 范围版本支持(例如 1.16.x 而非 1.16.5)

未知

  • 制作 Renderium(并切换渲染方式,不再使用大量预处理器块)
  • 完成编写 BaLLib 并切换不使用 Cloth Config(因为 Cloth 各版本间功能不一致)
  • Discord 聊天插件(Discord 和 MC 聊天之间的消息和图片)