在线工具箱
发票生成器

在线发票生成器

填写双方信息与行项目自动算税,导出可打印的 PDF 发票。

隐私安全:所有处理均在您的浏览器本地完成,数据绝不上传
发票生成发票设计工具

单据设置

选择单据类型、模板配色与货币。

模板配色


历史单据

暂无历史单据,点击「存入历史」可保留当前单据。

    单据内容

    开票方 / 收款方

    客户 / 收货方

    单据信息

    行项目

    描述数量单价税率%金额

    费用与税率

    备注

    付款信息

    预览与导出

    小计--
    折扣--
    税额--
    运费--
    合计--

    工作原理

    1. 1所有金额以「分」为单位用整数运算:逐行金额 = round(数量 × 单价 × 100),税额逐行取整后再汇总,避免 0.1 + 0.2 这类浮点误差导致分位不一致。
    2. 2合计 = 小计 − 折扣 + 税额 + 运费;折扣按比例时取小计的百分比、按固定额时直接扣减,两者都会夹在 0 与小计之间,不会出现负合计。
    3. 3单据版式用 canvas 逐行绘制:表头、双方信息、行项目表格、汇总与备注都按 A4 比例换算成像素坐标;预览用较低分辨率,导出时用更高分辨率重绘以保证清晰。
    4. 4金额大写把数字按「万 / 亿」分节,再逐位套用元、角、分与拾、佰、仟单位,并处理连续零合并、末尾零省略与负数等边界情况。
    5. 5导出的 PDF 由每页一张本地渲染的 JPEG 封装而成,打印则把同一张高分辨率图片放进打印窗口,全流程不产生任何网络请求。

    常见问题

    数据会上传到服务器吗?

    不会。所有计算、绘制与导出都在浏览器本地完成,页面不发起任何网络请求,断网也能正常使用,公司与客户信息只保存在你自己的设备上。

    导出的 PDF 里中文会乱码或变成方块吗?

    不会。单据是先按 A4 比例用系统字体绘制成图片,再封装进 PDF,因此中文显示与你在页面上看到的一致,不依赖服务器或网络字体。

    刷新或关闭页面后,填好的内容会丢吗?

    当前编辑内容会自动保存在浏览器的 localStorage 草稿中,重新打开会自动恢复;点击「存入历史」还能保留多份单据,随时重新打开编辑。清除浏览器数据后这些本地记录会丢失。

    为什么切换货币后小数位会变?

    不同货币的小数位不同,例如日元(JPY)没有小数位,而人民币、美元保留两位。工具按所选货币的配置来格式化金额,不写死两位小数。

    折扣和税额是怎么计算的?

    行金额逐行四舍五入后相加得到小计;折扣按比例时取小计的百分比,按固定额时直接扣减。税额在「逐项税率」模式下按每行税率分别取整再汇总,在「统一税率」模式下对小计按同一税率计算。

    打印出来有多余的页眉页脚怎么办?

    工具已设置打印样式页边距为 0,若浏览器仍打印出网址、日期等页眉页脚,请在打印对话框的「更多设置」中取消勾选「页眉和页脚」,并选择 A4 纸张、缩放 100%。

    更多在线工具