免费在线 PNG 裁剪 — 裁剪透明边缘
移除 PNG 图像的透明边框,单张或批量 — 免费、在线、无需注册。
将你的 PNG 文件拖放到此处或点击选择
最多 100 个文件,每个 5MB,总计 60MB
3 次免费转换剩余
使用 PNG 裁剪 API
通过 Easy PNG to Sprites API 将自动 PNG 裁剪集成到您的应用程序中。
上传一个或多个 PNG 文件以自动移除透明边缘,非常适合准备游戏精灵和 UI 资源。
API 亮点
- POST /trim:单个 PNG 或批量 ZIP 输出
- 每个请求最多上传 100 个 PNG 文件
- Alpha 阈值和间距控制
- 每个文件 5MB,总计 60MB
- PNG 输入;PNG(单个)或 ZIP(批量)输出
- 通过 Cloud Run 自动扩展实现快速响应
什么是 PNG 裁剪?
PNG 裁剪是自动裁剪掉 PNG 图像边缘周围透明像素的过程,将画布缩小到仍包含所有不透明(或部分不透明)内容的最小矩形。大多数设计和动画工具 — Photoshop、Aseprite、Spine、游戏引擎导出程序 — 生成带有大型透明边距的 PNG 文件,因为导出画布通常按照画板或序列中最大的帧大小而不是实际精灵来调整大小。
这种额外的透明填充对眼睛是看不见的,但在磁盘和内存中非常真实。它会增加文件大小,在精灵作为纹理上传时浪费 VRAM,并在依赖精灵尺寸进行碰撞、布局或命中测试的游戏引擎中混淆边界框逻辑。裁剪过程通过重新计算每个精灵的真实边界框并仅导出有意义的像素区域,一步解决所有这些问题。
此工具在您的浏览器中为您运行该裁剪过程。上传单个 PNG 或整个批次,设置可选的 alpha 阈值和间距值,然后下载单个裁剪后的 PNG 或裁剪后的文件 ZIP。原始的视觉内容和透明度被完全保留 — 该工具仅移除空边距像素。
为什么裁剪透明边缘?
裁剪最直接的好处是文件大小更小。透明填充仍然占用 PNG 中的像素行和列,虽然压缩可以高效地处理大型透明运行,但完全消除它们会产生明显更小的文件 — 对于导出到超大画布的精灵,通常减少 30-70%。较小的文件加载速度更快,更适合移动内存预算,并通过网络传输速度更快。
第二个好处是准确的边界框。游戏引擎通常使用精灵的 PNG 尺寸作为其默认的碰撞盒、枢纽原点参考和渲染范围。一个 128×128 像素的精灵,但包含中间几乎完全透明画布中间的 40×60 角色,会产生碰撞和对齐错误,因为引擎看到 128×128 的碰撞盒。将 PNG 裁剪到其真实内容意味着您的引擎看到真实精灵大小,下游的一切 — 碰撞、UI 布局、点击目标、工具提示锚定 — 都能正常工作,无需手动偏移。
裁剪还会在您稍后将精灵打包到精灵表时生成更干净的精灵表。Bin-packing 算法只有在每个输入已经紧密时才能最小化最终图集大小。如果每个精灵都带有 20 像素的透明边框,打包程序会在每个单元格中浪费这些像素。先裁剪,后打包,您会获得一个戏剧性的更小、更高效的纹理图集。
Alpha 阈值如何工作
裁剪算法逐像素扫描每个 PNG,以找到包含所有非空像素的最紧边界框。什么算作空的问题由 alpha 阈值参数控制。Alpha 值范围从 0(完全透明)到 255(完全不透明)。对于 0 的阈值,仅完全透明的像素(alpha = 0)被视为空并被裁剪;任何 alpha ≥ 1 的像素都被认为是内容并被保留。
增加阈值使算法更具攻击性。阈值为 10 将 alpha 0-10 的像素视为空 — 当您的 PNG 在您想要删除的边缘处具有淡淡的反锯齿幽灵或几乎看不见的噪音像素时很有用。阈值 30-50 适用于精灵具有柔软褪色阴影或您认为装饰而不是有意义内容的发光边缘时。超过 100 往往会裁剪可见的半透明效果,因此要谨慎使用。
找到边界框后,该工具可选择添加可配置的间距 — 裁剪内容周围 N 像素的透明边框。当您计划将裁剪后的精灵打包到精灵表或在引擎中应用双线性过滤时,间距是有用的,因为它防止精灵边缘处的纹理渗色。1-2 像素的间距对于大多数渲染管线来说通常是足够的。
如何裁剪 PNG 透明边缘
1. 上传 PNG 文件
将一个或多个 PNG 文件拖放到上传区域,或点击打开文件选择器。单文件模式生成裁剪后的 PNG;批处理模式(两个或更多文件)生成包含每个裁剪后的文件的 ZIP,保留原始文件名。您每次最多可以上传 100 个 PNG,每个文件最多 5 MB,合并总数最多 60 MB。
2. 设置 Alpha 阈值和间距
打开「裁剪选项」面板以配置 alpha 阈值(默认 0)和间距(默认 0 像素)。如果您的 PNG 有干净的完全透明边距,请将阈值保持在 0;如果反锯齿或压缩伪影在边缘留下淡淡的幽灵像素,请将其增加到 10-30。如果您计划将输出打包到精灵表或在游戏引擎中使用双线性纹理过滤,则将间距设置为 1-2 像素,否则将其保留在 0。
3. 运行裁剪
点击「裁剪」按钮。服务器计算每个 PNG 的内容边界框,将图像裁剪到该矩形(加上您请求的任何间距),并返回结果。处理速度很快 — 单个文件通常不到一秒,完整的 100 文件批次需要几秒钟 — 因为算法仅读取 alpha 值并执行简单的矩形裁剪。
4. 下载结果
单个文件上传返回一个裁剪后的 PNG,带有预览,以便您可以在下载前检查结果。批处理上传返回包含每个裁剪后的文件的 ZIP,原始文件名从原件保留,方便在资源文件夹中进行放入替换。点击「下载」以保存文件,或「裁剪另一个」以清除工作区并重新开始。
功能
单个和批处理模式
放入一个 PNG 以获得单个裁剪后的 PNG,或放入最多 100 个 PNG 以获得包含每个裁剪后的文件的 ZIP。批处理模式保留原始文件名,以便您可以将提取的文件直接放回资源文件夹以替换原件。
可配置的 Alpha 阈值
使用 0 到 255 的 alpha 阈值精确控制哪些像素算作空。保持在 0 进行严格裁剪,仅移除完全透明的像素,或增加以裁剪反锯齿幽灵、淡淡的阴影和您认为填充而不是内容的压缩伪影。
可选间距保留
在裁剪内容周围添加可配置的像素边框透明间距。当您计划稍后将精灵图集打包或希望在游戏引擎中针对双线性过滤伪影有一个小的安全余量时,这很有用。1-2 像素的间距对于大多数渲染管线是典型的。
完整 Alpha 保留
源 PNG 中的每个 alpha 级别都在输出中完全保留。裁剪操作仅移除空边距像素 — 它从不重新采样、重新压缩或改变精灵的可见内容。半透明边缘、柔软阴影和部分透明覆盖层完全无触及地通过。
无需注册,快速处理
无需注册、无帐户创建、无跟踪。打开页面、上传 PNG、下载结果。裁剪在算法上很简单 — 服务器找到边界框并裁剪 — 即使是大批处理也在几秒内完成。
隐私优先
您的 PNG 文件在服务器上处理后立即被丢弃。没有任何内容被存储、记录或保留。不需要帐户,不使用 cookie 跟踪您的上传。
使用场景
为打包准备游戏精灵
从 Aseprite、Photoshop 或 Spine 导出您的角色和道具精灵,其完整艺术板完好无损,然后运行此工具将每个文件裁剪到其真实内容大小。裁剪后的精灵打包到戏剧性的更小图集 — bin-packing 算法只有在每个输入已经紧密时才能最小化最终图集大小,所以先移除透明边框,再打包,您可以将最终图集大小减少一半或更多。
清理 UI 图标导出
设计应用程序通常以固定画布大小(256×256、512×512)导出图标,无论实际图标尺寸如何。通过裁剪工具运行您的图标导出以获得清晰、正确大小的资源,其中图标填充 PNG。边界框驱动的 UI 系统随后将正确地调整大小和定位图标,而无需在代码中手动填充偏移。
批处理裁剪动画帧
放入从您的动画工具导出的整个动画帧文件夹 — 行走周期、爆炸序列、咒语效果 — 并获得所有帧在一次通过中裁剪的 ZIP。在使用打包布局组装帧到精灵表之前,这是必要的第一步,因为打包布局依赖于紧密的边界框以进行有效打包。
减少精灵表大小
如果您现有的精灵表比应有的更大,在重新打包之前裁剪单个源 PNG 通常会揭示重大节省。在打包前激进地进行裁剪的项目通常会看到 40-60% 的更小图集纹理,这直接转化为更快的资源加载和更低的 VRAM 使用 — 特别是对于移动和 web 版本很有价值。

