如何停止为在线二维码生成服务付费
每次设计师或排版师需要为落地页或印刷材料生成一个整洁的二维码时,同样的流程就开始了。你打开搜索到的第一个生成器,花五分钟调整颜色,上传 logo,点击下载按钮,然后网站突然要求注册、付费订阅,或者生成一个通过他们缓慢服务器重定向的动态码。听起来很熟悉?
我最近发现了一个名为 mini-qr 的开源项目,由开发者 lyqht 创建。这是一个轻量级网页应用,完全满足你的需求:快速生成精美的矢量码,无水印、无追踪器、无订阅。
为什么这个项目非常实用
大多数开源生成器输出的都是格式单调的黑白方块。Mini QR 做得更出色,提供了可视化样式编辑器,可以精确控制生成结果。
这个工具可以完成以下功能:
- 样式化模块和边框。可以更改圆点的形状、定位图案(角标),圆角处理,以及配置带有自定义文字的外边框。
- 在中心插入 logo。应用会自动管理纠错级别,即使中心被遮挡,扫描器仍能可靠读取码。
- 适用于不同任务的数据模板。无需手动拼接
WIFI:S:MyNet;T:WPA;P:secret;;这样的原始字符串。界面提供了现成的表单,可处理 Wi-Fi 凭证、vCard 联系人、日历事件、地理位置、链接,甚至 EPC 二维码支付(SEPA)。 - 导出为任意格式。结果可导出为用于印刷的干净 SVG、光栅 PNG/JPG,或直接在终端中输出 ASCII/Unicode 字符。
批量导出功能值得特别一提。你可以为应用提供一个包含链接或联系人列表的 CSV 表格,它会生成一整套风格一致的图片压缩包。对于会议胸牌或仓库库存标签,这能节省数小时的重复工作。
内置扫描器和本地处理
除了生成器,应用还包含一个扫描器。它可以直接通过 WebRTC 从网络摄像头获取视频流,或解析上传的图片。
如果二维码包含结构化数据(例如 Wi-Fi 密码或联系人),扫描器会识别类型并显示快捷操作按钮。这里不会向第三方后端发送任何请求:所有解析和渲染都在浏览器客户端完成。你的数据不会外传。
应用还支持 PWA,可以作为独立图标安装在你的电脑或手机上,无需持续网络连接即可使用。
技术实现
项目采用的技术栈看起来现代而简洁:
- Vue 3 配合 TypeScript
- 使用 Vite 构建
- 基于 shadcn-vue 和 Tailwind CSS 的组件
- 通过 Crowdin 支持 30+ 种语言本地化
- 通过 Storybook 进行组件测试
作者认真对待无障碍设计:界面满足基本 WCAG A 标准,支持浅色、深色和系统配色主题,并正确处理复杂的 UTF-8 字符(阿拉伯文字、CJK 字符、emoji)。
内部渲染库可以在项目的公开 Storybook 中独立测试,这使得将类似组件集成到你自己的前端服务中变得更加容易。
本地运行
如果你不想使用 Vercel 上的公开演示,或者想在公司内网中部署生成器并使用自己的品牌预设,项目可以很方便地在本地启动。
克隆仓库并安装依赖:
git clone https://github.com/lyqht/mini-qr.git
cd mini-qr
pnpm install
pnpm dev
对于生产环境,项目被打包为 Docker 容器,或使用 pnpm build 命令构建为静态文件夹,之后可以通过 Nginx 或 Caddy 等任何 Web 服务器托管。
项目采用 GPL-3.0 许可证。这意味着代码开放 fork 和自托管,但你无法在修改时闭源。
适用人群
Mini QR 同时满足两个需求。
首先,它是一个便捷的日常工作任务工具:打印办公室厨房的访客 Wi-Fi 密码、为演示文稿准备 SVG 二维码,或为会议参会者胸牌格式化链接。
其次,它是一个高质量 Vue 3 和 Tailwind 应用的优秀范例。在这里你可以看到如何为专业图形组件组织 Storybook 工作流程、如何设置便捷的文件导出,以及如何为 pull request 自动化预览。
如果你经常处理二维码,可以试试演示版或收藏这个项目。它干净利落地解决了问题,没有多余的干扰。
相关项目