Skip to content

itkdm/packmd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PackMD

PackMD Logo

扫描 Markdown 图片引用,复制为本地 assets 并重写链接,支持多文件与可选备份

GitHub GitHub release License

🌐 在线演示 | 📖 使用文档 | 🐛 问题反馈 | 💬 讨论


📖 简介

PackMD 是一款强大的 uTools 插件,专为 Markdown 文档的图片资源管理而设计。它可以批量扫描 Markdown 文件中的图片引用,自动将图片复制到统一的资源目录(如 assets),并智能重写图片链接为相对路径。

✨ 核心特性

  • 🚀 批量处理 - 支持一次选择多个 Markdown 文件或文件夹,高效处理大量文件
  • 📦 资源归档 - 自动将图片复制到统一的资源目录,保持项目结构整洁
  • 🔗 路径重写 - 智能识别图片路径,自动重写为相对路径,确保文档可移植性
  • 智能去重 - 自动检测重复图片,复用已存在的文件,节省存储空间
  • 💾 可选备份 - 处理前可选择备份原文件,确保数据安全
  • 🎨 多种命名 - 支持 7 种图片命名方式,满足不同需求
  • 🌍 多语言支持 - 支持中文和英文界面

🎯 适用场景

  • 📝 整理 Markdown 文档中的图片资源
  • 🔄 迁移 Markdown 文件到新位置
  • 📚 统一管理文档项目的图片资源
  • 🗂️ 重构文档项目结构
  • 📦 打包 Markdown 文档用于分发

🚀 快速开始

安装

  1. 确保已安装 uTools
  2. 下载最新版本的 PackMD 插件
  3. 在 uTools 中导入插件

使用方法

  1. 选择目标

    • 点击"选择文件"或"选择文件夹"按钮
    • 选择一个或多个 Markdown 文件或包含 Markdown 文件的文件夹
  2. 配置选项

    • 设置资源目录名称(默认为 assets
    • 选择图片命名方式
    • 根据需要开启备份和删除旧图片选项
  3. 开始处理

    • 点击"开始处理"按钮
    • 插件会自动扫描图片、复制文件、重写链接
  4. 查看结果

    • 处理完成后查看统计信息
    • 包括处理的文件数、发现的图片数、复制数量等

📋 功能详情

图片命名方式

PackMD 支持以下 7 种图片命名方式:

命名方式 说明 示例
保留原文件名 保持图片原始文件名不变 image.jpg
递增序号 按顺序命名 1.jpg, 2.png
前缀+序号 使用前缀和序号 img-1.jpg, img-2.png
固定名称 使用固定名称+序号 cover-1.jpg
哈希命名 使用文件内容哈希值 a1b2c3d4.jpg
日期时间 使用日期时间戳 20260101120000.jpg
UUID 使用 UUID 唯一标识 550e8400-e29b-41d4-a716-446655440000.jpg

处理选项

  • 备份原文件 - 处理前备份原始 Markdown 文件
  • 删除旧图片 - 处理完成后删除原始位置的图片文件
  • 跳过外部链接 - 自动跳过 HTTP/HTTPS 等外部图片链接
  • 跳过缺失文件 - 自动跳过不存在的图片文件

📸 截图

💡 更多截图和使用演示,请访问 在线演示页面

功能特性

  • 🚀 批量处理多个 Markdown 文件
  • 📦 自动归档图片到 assets 目录
  • 🔗 智能重写图片路径
  • ✨ 智能去重,节省存储空间

🛠️ 技术栈

  • 前端框架: 原生 HTML/CSS/JavaScript
  • 运行环境: uTools 插件系统
  • 文件处理: Node.js fs 模块
  • 图片识别: 正则表达式匹配 Markdown 图片语法

📁 项目结构

packmd/
├── packmd/              # 插件主目录
│   ├── index.html      # 主界面
│   ├── index.js        # 前端逻辑
│   ├── index.css       # 样式文件
│   ├── preload.js      # 核心处理逻辑
│   ├── plugin.json     # 插件配置
│   └── logo.png        # 插件图标
├── site/               # GitHub Pages 展示页面
│   ├── index.html      # 展示页面
│   ├── sitemap.xml     # 网站地图
│   └── robots.txt      # 爬虫规则
├── .github/
│   └── workflows/      # GitHub Actions 工作流
└── README.md           # 项目说明文档

🤝 贡献指南

我们欢迎所有形式的贡献!

如何贡献

  1. Fork 本仓库
  2. 创建特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 开启 Pull Request

贡献类型

  • 🐛 Bug 报告 - 发现问题请提交 Issue
  • 💡 功能建议 - 有好的想法请提交 Feature Request
  • 📝 文档改进 - 帮助改进文档和示例
  • 🔧 代码贡献 - 提交代码修复或新功能

📄 许可证

本项目采用 MIT License 许可证。


👤 作者

布吉岛


🙏 致谢

感谢所有为这个项目做出贡献的开发者和用户!

特别感谢:

  • uTools - 提供优秀的插件平台
  • 所有使用和反馈的用户

📞 联系方式


⭐ Star History

如果这个项目对你有帮助,请考虑给它一个 Star ⭐!


Made with ❤️ by 布吉岛

© 2026 PackMD. All rights reserved.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors