拼长图
在浏览器本地把多张图片按选择顺序拼成一张长图:竖向或横向拼接、间距与底色可调,拼前就能算出成图尺寸,拼完一键下载。图片全程不离开你的设备。
聊天记录、比分截图、教程步骤,发一张长图永远比连发十张清爽。多张图按顺序拼起来,横竖两个方向、间距底色都能调,宽窄不一的图自动对齐居中,不拉伸不变形;拼之前成图多大就先算出来,尺寸合适再下载。
口径提醒:竖拼成图宽度取各图最宽值,较窄的图居中摆放、两侧以底色补齐(横拼同理按高度对齐),任何一张都不会拉伸变形;间距指相邻两图之间的空隙(0~200 像素),白底适合聊天截图、深色底适合照片;GIF 只保留第一帧,建议单次 10 张以内。
这个工具解决你的问题了吗?
提交后会把工具名、你的输入与当前结果发送到服务器;请勿填写身份证号、手机号等隐私信息。
AI 助手 会结合你当前的输入与结果回答
追问会再次把当前输入与结果发送到服务器;请勿填写隐私信息。
使用步骤
- 按顺序选中多张图片。
- 选竖拼或横拼,调间距与底色。
- 点「开始拼接」,看成图尺寸。
- 下载保存;顺序错了重选文件。
计算原理与示例
怎么拼长图
点「选择图片」一次选中多张(或用内置示例先试),选好竖拼或横拼与间距,点「开始拼接」,结果区给出成图尺寸,点下载保存。
宽度不一样怎么办
竖拼时成图宽度取各图最宽值,较窄的图在画布内居中摆放、两侧以底色补齐;横拼同理按高度对齐,不会拉伸变形任何一张。
顺序由什么决定
按你在文件选择框里的先后顺序拼接。想调顺序就重新选一遍文件;文件名有序号时建议按序号依次点选。
间距和底色怎么用
间距是相邻两张图之间的空隙(0~200 像素);底色会补在窄图两侧与间隙处,白底适合聊天记录截图,深色底适合照片拼图。
代码示例
JavaScript 竖拼长图
// 先算总尺寸再画:有一张算错尺寸,整张图就会错位或留黑边
async function mergeVertical(files, gap = 0, bg = '#ffffff') {
const imgs = await Promise.all(files.map(createImageBitmap));
const width = Math.max(...imgs.map((i) => i.width));
const height = imgs.reduce((s, i) => s + i.height, 0) + gap * (imgs.length - 1);
const canvas = document.createElement('canvas');
canvas.width = width;
canvas.height = height;
const ctx = canvas.getContext('2d');
ctx.fillStyle = bg; // 宽度不一致时补底色,避免透明/黑边
ctx.fillRect(0, 0, width, height);
let y = 0;
for (const img of imgs) {
ctx.drawImage(img, (width - img.width) / 2, y); // 居中,宽度不一时不歪
y += img.height + gap;
}
return canvas;
}
Python Pillow 拼图
from PIL import Image
imgs = [Image.open(p) for p in ['a.jpg', 'b.jpg', 'c.jpg']]
width = max(i.width for i in imgs)
height = sum(i.height for i in imgs)
canvas = Image.new('RGB', (width, height), 'white')
y = 0
for img in imgs:
canvas.paste(img, ((width - img.width) // 2, y))
y += img.height
canvas.save('merged.jpg', quality=92)
常见问题
拼接时图片会上传吗?
不会。解码、摆位、合成全部在浏览器内存里完成,聊天截图、订单截图这类隐私内容不出本机,断网状态也不影响已打开的页面使用。
一次最多拼几张?
建议不超过 10 张、单张不超过 30 MB。竖拼的成图高度会随张数累加,过长的话部分查看器加载会慢;超过 10 张分两次拼好再拼一次即可。
拼出来的图会不会模糊?
不会。拼接是原像素摆位,不缩放不重采样,清晰度与原图一致;成图尺寸等于各图尺寸之和(竖拼看高度、横拼看宽度)。
为什么成图两侧有白边?
竖拼时成图宽度取最宽一张,更窄的图居中摆放后两侧就会留出底色。想让成图完全贴合,就选宽度一致的图,或接受底色补齐(可换成黑色等其他底色)。
能拼成九宫格那种网格吗?
当前版本只做单行/单列拼接。3×3 网格排版请用本站的「九宫格切图」反向思路——先排好版截图,或使用系统相册的拼图功能。
动图 GIF 拼接后还有动画吗?
没有了。拼接走静态图合成,GIF 只保留第一帧;要保留动画请维持 GIF 格式或使用视频工具。
HEIC 格式的 iPhone 照片能直接拼吗?
取决于浏览器是否带 HEIC 解码器,多数桌面浏览器不支持。建议先在系统相册导出为 JPG 再来拼接。
延伸阅读
来自本站原创文章,讲清这个工具背后的算法与口径。