智能合并 · 批量处理 · 自动统计 · 一键打印 · 文件复制
🎉 V3.5.8 新功能:支持文件一键复制,轻松实现同一发票多份打印!
发票打印助手是一款专为中小企业、财务人员和会计师设计的现代化Web应用,基于 Next.js 框架开发。
- 🔒 数据安全:所有数据在浏览器本地处理,无需上传服务器
- 💰 节省成本:智能合并为A4双联格式,节省50%纸张成本
- ⚡ 高效处理:支持批量上传,自动识别提取发票关键信息
- 🌐 局域网部署:支持内网环境运行,无需数据库
- 📱 响应式设计:完美适配桌面端和移动端设备
|
|
|
|
|
|
- ✅ 增值税专用发票
- ✅ 增值税普通发票
- ✅ 电子发票(全电发票)
- ✅ 其他各类电子发票
解决了长期以来的痛点:同一发票需要打印多份的问题!
|
|
1. 上传发票.pdf
↓
2. 点击蓝色"复制"按钮
↓
3. 自动生成"发票_副本1.pdf"(MD5已改变)
↓
4. 继续点击可生成更多副本
↓
5. 下载合并文件 → 所有文件合并为一个 PDF
3.5.8/
├── 📄 index.html # 应用首页
├── 📄 main.html # 功能主页面
├── ⚙️ server.js # Node.js HTTP服务器
├── 🚀 启动服务器.bat # Windows服务器启动脚本
├── 🌐 打开浏览器.bat # 浏览器自动打开脚本
├── 📋 manifest.json # PWA应用配置
└── 📂 static/ # 静态资源目录
├── 🎨 css/ # 样式文件
├── 💻 js/ # JavaScript文件
├── 🔤 font/ # 字体文件
└── 🖼️ picture/ # 图片资源
| 🚀 | Next.js静态导出 无需数据库,纯前端应用 |
| ⚛️ | React生态 完整的React应用,支持客户端渲染 |
| 🏠 | 本地化部署 支持局域网访问,数据不出本地 |
| 📦 | 资源本地化 字体资源已本地化,不依赖CDN |
| 📱 | 响应式设计 适配各种设备,移动端友好 |
# 1️⃣ 启动服务器
双击运行 "启动服务器.bat"
# 2️⃣ 打开应用
双击运行 "打开浏览器.bat"# 1️⃣ 确保已安装Node.js环境
# 2️⃣ 启动服务器
node server.js
# 3️⃣ 浏览器访问
http://localhost:8000| 页面 | 地址 | 说明 |
|---|---|---|
| 🏠 首页 | http://localhost:8000/index.html |
应用欢迎页面 |
| ⚙️ 功能页 | http://localhost:8000/main.html |
主要功能界面 |
| 操作系统 | Windows 7 / 10 / 11 |
| 浏览器 | Chrome / Firefox / Edge(现代浏览器) |
| 运行环境 | Node.js 12.0+ |
| 磁盘空间 | ≥ 50MB |
✨ 新功能(V3.5.8):现在支持文件复制功能,轻松实现同一发票多份打印!
-
上传发票文件
- 上传 PDF 格式的发票文件到系统
-
点击复制按钮
- 在文件列表中,每个原始文件旁边都有一个蓝色的"复制"按钮
- 点击即可创建该文件的副本
-
自动合并打印
- 副本文件会自动添加到文件列表
- 所有文件(包括原始文件和副本)会一起合并
- 实现在 A4 纸上同时打印多份的效果
✅ 一键复制 - 点击蓝色"复制"按钮即可创建副本
✅ 智能去重 - 通过修改文件内容绕过 MD5 验证
✅ 自动合并 - 副本自动参与合并和打印流程
✅ 清晰区分 - 副本文件名带"_副本X"后缀,且不显示复制按钮
✅ 无限复制 - 可以创建多个副本,实现多份打印
上传: 发票.pdf
↓
点击复制
↓
生成: 发票.pdf(原件,有复制按钮)
发票_副本1.pdf(副本,无复制按钮)
↓
再次点击复制
↓
生成: 发票.pdf
发票_副本1.pdf
发票_副本2.pdf
↓
下载合并文件 → 3个文件合并为1个PDF
💡 提示:副本文件会在文件末尾添加约 40-50 字节的唯一标识,不影响 PDF 显示效果。
点击展开解决方案 👉
-
检查浏览器控制台
- 按
F12打开开发者工具 - 查看 Console 标签是否有错误信息
- 按
-
确认资源文件
- 检查
static/目录下的文件是否完整 - 确保 CSS、JS、字体文件都存在
- 检查
-
检查端口占用
- 确保端口
8000未被其他程序占用 - 可使用
netstat -ano | findstr 8000查看
- 确保端口
点击展开解决方案 👉
-
检查Node.js安装
node -v # 查看Node.js版本 -
检查防火墙设置
- 确认防火墙未阻止端口
8000 - 必要时添加防火墙例外规则
- 确认防火墙未阻止端口
-
更换端口号
- 打开
server.js文件 - 修改
PORT变量为其他端口(如3000、8080)
- 打开
点击展开解决方案 👉
-
检查PDF质量
- 确保PDF文件清晰、未加密
- 避免扫描件或低分辨率文件
-
检查发票格式
- 仅支持标准电子发票格式
- 手工发票或特殊格式可能无法识别
重要提示
- 🔐 这是一个静态Web应用,数据存储在浏览器本地
- 📝 HTML文件压缩在一行是Next.js的正常导出格式
- ⏳ 页面需要完整加载JavaScript才能正常显示功能
- 🌐 建议在局域网内使用固定IP地址访问
- 💾 定期清理浏览器缓存,避免数据累积过多
| 项目 | 信息 |
|---|---|
| 版本号 | V3.5.8 |
| 构建类型 | 网络发布版 |
| 更新日期 | 2025年10月 |
| 框架版本 | Next.js 13+ |
demo地址:https://fpzs.lc.mba/
-
📋 文件复制功能
- 为每个原始文件添加蓝色"复制"按钮
- 一键创建文件副本,绕过 MD5 去重限制
- 支持同一发票打印多份,自动参与合并流程
- 副本文件名自动添加"_副本X"后缀便于区分
-
🖨️ 打印反馈增强
- 点击打印/下载按钮显示处理中动画提示
- 自动尝试触发浏览器打印对话框
- 操作完成后显示成功提示
- 智能识别原始文件和副本文件
- 副本文件不显示复制按钮(避免混淆)
- 自动排除设置区域,避免误添加按钮
- 通过修改文件内容实现 MD5 值变化
- 添加详细的调试日志便于问题排查
- 解决同文件无法重复上传的问题
- 优化按钮插入位置,更加精确
- 改善用户操作反馈体验
如遇技术问题,请依次检查:
-
✅ 网络连接是否正常
- 确保本地网络畅通
- 局域网环境配置正确
-
✅ 浏览器兼容性
- 使用最新版本的现代浏览器
- 启用JavaScript支持
-
✅ 资源文件完整性
- 检查所有静态资源文件是否完整
- 确认文件未被杀毒软件误删
-
✅ 系统环境
- Node.js版本符合要求
- 操作系统权限正常
本项目采用 MIT 许可证。
感谢使用发票打印助手!如果这个项目对您有帮助,欢迎⭐Star支持!
Made with ❤️ by 发票打印助手团队