免费在线图像调整器
将图片调整到精确的像素尺寸。保持宽高比或设置自定义宽度和高度。不会上传到任何服务器。
支持 JPEG、PNG、WebP · 最多 20 MB
如何调整图片大小
- 在上方选择或拖放图片文件。
- 选择预设尺寸或以像素为单位输入自定义宽度和高度。
- 切换锁定图标以保持或忽略原始宽高比。
- 点击"调整图片大小"在浏览器中处理图片。
- 立即下载调整后的图片。
「调整大小」到底对你的像素做了什么
调整图像大小与裁剪它或压缩它并不是同一种操作。裁剪丢弃边缘的像素,把剩余部分原样保留。压缩保留每一个像素,但把它们编码得更紧凑。调整大小则字面意义上改变了像素数量:一张 4000x3000 的源图像重新缩放到 1920x1440,必须丢弃大部分像素,并挑选新的像素,以四分之一的分辨率表达同一场景。决定写入哪些新像素的数学操作被称为重采样,重新缩放的质量几乎完全取决于运行的是哪种重采样算法。
常用的四种重采样算法是:最近邻(取最近的那一个源像素,硬边缘得到保留,放大时呈块状,是像素艺术的唯一正确选择)、双线性(对周围 4 个源像素做线性混合,速度快但效果平平)、双三次(Keys 1981 三次核函数作用于周围 16 个像素,几十年来一直是 Photoshop 的默认)以及 Lanczos(用 Lanczos 核窗化的 sinc 函数,输出最锐利,硬边附近有轻微振铃,这是 ImageMagick 和 Sharp 在缩小时默认使用的)。本工具把 Canvas API 的 imageSmoothingQuality 设为 「high」,桌面端 Chrome 和 Firefox 将其解释为 Lanczos 类核,Safari 解释为双三次类核。由浏览器决定;JavaScript 可以请求「high」,但无法选择确切的滤波器。
缩小和放大并不是对称的问题。缩小以受控的方式丢弃信息;重采样器决定保留哪些细节,好的算法会保住源图像的可见结构。放大会增加从未被采样过的像素,而信息论(奈奎斯特-香农采样定理)说,你无法恢复原始信号里没有的频率。一个经典重采样器最多只能在已知样本之间平滑地插值,结果永远显得发软。要做真正的放大,现代的替代方案是 AI 超分辨率(Real-ESRGAN、waifu2x、Adobe Super Resolution、Topaz Gigapixel),它用在数百万张相似图像上训练过的神经网络幻觉出合理的细节。这里并不是这样。本工具做的是诚实的插值。
这个工具的底层原理
整条管线就是 HTML5 Canvas 2D API。没有加载任何外部库。当你拖入一张图像时,浏览器的 File API 把字节交给一个新的 HTMLImageElement;浏览器内置的 JPEG、PNG 或 WebP 解码器将比特流转换为像素缓冲区。宽高比根据自然宽高计算得出。一个新的 <canvas> 元素以你设定的目标尺寸在内存中创建,ctx.drawImage(image, 0, 0, 目标宽, 目标高) 把源图缩放绘制到目标。由于目标和源的尺寸不同,浏览器调用其重采样核来计算每一个新像素。
在调用 drawImage 之前,工具会设置 ctx.imageSmoothingEnabled = true 以及 ctx.imageSmoothingQuality = 「high」。第一个标志打开平滑(关闭最近邻);第二个提示浏览器使用其质量最高的滤波器。WHATWG canvas 规范把具体滤波器留给实现自行决定。Chrome 和 Firefox 在桌面端 「high」 下使用 Lanczos 类核;Safari 使用双三次类核;移动端构建在内存压力下可能降级到双线性。这些对 JavaScript 都不可见。绘制之后,canvas.toBlob(mimeType, 质量) 把画布按所选输出格式序列化为 Blob:PNG(无损 DEFLATE,质量参数被忽略)、JPEG(有损 DCT,质量 0.92)或 WebP(有损或无损,质量 0.92)。Blob 成为可下载的对象 URL。
没有字节离开标签页。图像在你的浏览器中被解码,在你的浏览器中被重采样,在你的浏览器中被重新编码。下载到的文件在本地生成,由浏览器的常规下载机制保存到你的设备上。唯一的网络流量是页面的初次加载和体积很小的 image-resizer.js 脚本(几千字节)。在页面加载完成后把浏览器切到飞行模式,调整大小工具仍然能处理你选择的任何本地图像。在一次调整大小过程中打开开发者工具的网络标签:零个携带图像数据的请求。整套架构是刻意精简的,因为 Canvas API 已经足够强大胜任这项工作;引入一个库只会增加字节和复杂度,并不会改变输出。
图像重采样简史
- 光学放大机,前数字时代。 在数字摄影出现之前,「放大」一张照片意味着把底片通过一台光学放大机投射到一张感光纸上。镜头连续地、无量化地完成重采样,但要受镜头本身的光学极限限制。最早的商用放大机可追溯到 1860 年代。直到图像以像素栅格而非连续乳剂的形式存在之后,重采样作为一种数学操作才成为一个有意义的问题。
- 双三次插值,1973-1981。 Robert G. Rifman 于 1973 年在 TRW Defense and Space Systems 发表了一种基于双三次样条的图像重采样算法,是为卫星图像缩放编写的。规范化的表述出自 1981 年的 R. G. Keys,发表于 IEEE Transactions on Acoustics, Speech, and Signal Processing 上的「Cubic Convolution Interpolation for Digital Image Processing」。今天任何图像库说「双三次」时,指的都是在 4x4 邻域上求值的 Keys 三次核函数。
- Mitchell-Netravali 滤波器,1988。 Don P. Mitchell 与 Arun N. Netravali 在 SIGGRAPH '88 上发表了「Reconstruction Filters in Computer Graphics」,提出了由两个系数 B 与 C 调节的参数化三次滤波器族。规范的「Mitchell」滤波器(B=C=1/3)以牺牲一点锐度换来非常低的振铃,已成为 libvips 等高端图像库中缩小操作的标准默认。
- ImageMagick 可选滤波器,1990 年代。 John Cristy 在 1987 年最初编写、1990 年公开发布了 ImageMagick,并把可选的重采样滤波器作为头等特性。到 1990 年代中期,摄影师和桌面排版专业人士就可以在同一张源图上对比 Lanczos、Mitchell、Catmull-Rom、Hermite 和高斯,并按用例选择。ImageMagick 的
-filter Lanczos至今仍是生产管线中的常见用法。 - HTML5 Canvas 调整大小,2008-2017。 WHATWG canvas 规范在 2008 年标准化了带隐式缩放的
drawImage(),这里使用的 9 参数形式从那时起就出现在每一款浏览器中。imageSmoothingQuality属性(low / medium / high)则较晚出现:Chrome 54 在 2016 年、Firefox 51 在 2017 年、Safari 11.1 在 2018 年。在此之前,浏览器端的调整大小在所有实现中实际上只是双线性,即便工具明确请求「高质量」也是如此。 - AI 超分辨率,2018-2021。 ESRGAN(Wang 等,2018)证明生成对抗网络能为放大照片合成可信的细节。Real-ESRGAN(Wang 等,2021)让该技术在真实世界输入上变得实用;waifu2x(nagadomi,2015)则更早地为动漫艺术调校了一个基于 CNN 的变体。Adobe Camera Raw 在 2021 年加入了 Super Resolution。这些工具并不取代缩小用的经典重采样;它们针对的是你确实想要被幻觉出来的细节、而非平滑插值的场景。
常见图片尺寸
- 1920 x 1080 · Full HD,网页背景和 YouTube 缩略图的标准尺寸。
- 1080 x 1080 · Instagram 信息流帖子(方形格式)。
- 1080 x 1350 · Instagram 竖版帖子(在信息流中占用更多屏幕空间)。
- 1280 x 720 · HD,适合博客标题和演示。
- 800 x 600 · 经典的网页图片尺寸,适合电子邮件简报。
- 400 x 400 · 头像和个人资料图片。
- 16 x 16 / 32 x 32 · 网站的 Favicon 尺寸。
现实世界的调整大小工作流
- 面向各社交平台的尺寸。 每个社交平台对动态、Stories、横幅和缩略图都有偏好尺寸。以错误尺寸上传,意味着平台会替你裁剪或加黑边,而且往往做得很糟。2026 年的常见目标:Instagram 动态 1080x1080(正方形)或 1080x1350(竖版,目前互动最高的静态图格式,因为它在手机动态中占据约多 25% 的纵向屏幕空间),Instagram Stories 和 Reels 1080x1920,YouTube 缩略图 1280x720,Twitter/X 卡片 1200x675,Facebook 和 LinkedIn 链接预览(Open Graph)1200x630,Pinterest 标准 Pin 1000x1500,TikTok 1080x1920。上传前先调整一次尺寸可以保证你想要的结果;上传原图则把决定权交给了平台。
- 网页优化与 Core Web Vitals。 Lighthouse 的「Properly size images」审计会让任何自然尺寸远大于展示尺寸的图像不通过。一张展示宽 1200 像素却以 4000 像素提供的英雄图浪费带宽,并直接拖累 Largest Contentful Paint,这是最显眼的 Core Web Vital。修复方法是把源图调整到大约展示尺寸,或为 Retina 屏幕调到 2x,并通过现代的
srcset属性把不同尺寸提供给不同视口。仅把一张英雄图从 4000 调到 1920 像素,文件体积通常就能减 60 到 80%,LCP 分数会直接跟上。 - 电子邮件附件。 Gmail、Outlook 和 Apple Mail 都把附件限制在每条消息 25 MB。一文件夹满分辨率的手机照片,仅五六张就能触顶。把长边调到 1920 像素,通常能把每张照片压到 1 MB 以下,同时在任何笔记本或手机屏幕上仍可清晰查看。1920 像素下的 20 张照片可以舒服地塞进一条消息;同样的 20 张满分辨率照片则需要三四封邮件或一个云分享链接。
- 个人头像与显示图。 大多数社交平台要求 400x400 到 800x800 像素的头像,并以圆形显示。上传前在本地调整大小可以让你控制方形裁剪(结合本工具的 Image Cropper)和精确的像素数,而不必让平台任意裁切。Retina 屏幕的经验法则是按展示尺寸的两倍上传,因此 200 像素的头像至少要有 400x400 的源图。
- Favicon 与应用图标生成。 现代浏览器需要 16x16(浏览器标签)和 32x32(高 DPI 标签),Apple Touch 图标需要 180x180,Windows 磁贴需要 270x270,渐进式 Web 应用清单通常包含 192x192 和 512x512。把一张设计良好的方形源图(通常是无细节的 512x512 PNG)调整到上述每一个目标,是为所有平台生成清晰图标的规范工作流。
- 印刷准备。 4x6 英寸的照片打印在 300 DPI 下需要 1200x1800 像素的源分辨率。16x20 英寸的海报需要 4800x6000。8x10 英寸打印在 240 DPI(报纸质量)下需要 1920x2400。把源图调整到适合目标印刷尺寸的正确像素数,意味着印刷店无需替你做自动重采样,从而避免不可预测的滤波器选择和未知的质量设置。把调整后的像素数搭配打印对话框中正确的 DPI 元数据,最终结果就能与你在屏幕上看到的一致。
常见陷阱及其含义
- 放大永远是糊的。 一张 200 像素宽的缩略图放大到 1920 像素,无论使用哪种浏览器或哪种质量设置,都会显得发软。经典插值(双三次、Lanczos、Mitchell)只能在已知样本之间做平滑过渡;无法凭空发明缺失的细节。信息论上的上限由源图的奈奎斯特频率决定。要获得真正锐利的放大输出,请把源图交给超分辨率工具(Real-ESRGAN、Topaz Gigapixel AI、Camera Raw 中的 Adobe Super Resolution)处理,它会用在数百万张相似图像上训练过的神经网络幻觉出合理的细节。
- 解锁宽高比会让照片被拉伸。 锁定图标关闭、宽高不匹配时,输出会在数学上被压扁或拉伸。本工具默认是锁定的;解锁是一个刻意的动作。如果你需要适配某个目标宽高比而非源图的自然比例,正确的工作流是先裁剪(使用 Image Cropper)再调整裁剪结果的大小。这样既保持比例正确,又不让主体变形。
- 像素艺术会被平滑掉。 本工具默认开启平滑,会毁掉 8 位精灵图、像素栅格图标和任何以彩色单元间的硬边为精髓的图形。使用任何平滑滤波器(双线性、双三次、Lanczos)重采样都会把这些硬边变成渐变。对像素艺术,正确答案是最近邻调整大小,它保留每一条硬边。在浏览器一侧,给展示用图像在 CSS 中设置
image-rendering: pixelated。要真正按新尺寸导出,请使用桌面工具:ImageMagick 的-filter Point、GIMP 的「无」插值,或 Aseprite 等专业像素艺术编辑器。 - 反复调整大小会让 JPEG 和 WebP 退化。 每一次经由画布的往返都会以质量 0.92 重新编码 JPEG 或 WebP。第一次几乎看不出;第三或第四次就会在平面区域引入可见伪影,并让细节变得柔软。永远从你手头最高分辨率的母版调整大小,不要从昨天导出的副本开始。如果你要迭代(先试 1920,再试 1600,再试 1280),每次都回到原始源图,不要把多次调整大小串起来。
- 打印 DPI 与像素尺寸不是一回事。 很多人期望「DPI」或「分辨率」字段控制打印尺寸。本工具只按像素数调整大小。JPEG 或 PNG 内嵌的 DPI 标签是给打印机的指导性元数据,告诉它在纸上每英寸渲染多少像素。像素尺寸和 DPI 互相独立:一张 1920x1080 的图像在任何 DPI 设置下都还是 1920x1080 像素。要控制打印尺寸,还需要在打印对话框或桌面照片工具(预览的打印面板、Photoshop 的图像大小对话框关闭「重新采样」)里设置正确的 DPI。
- 非常大的图像可能让移动浏览器标签崩溃。 把图像解码到画布所需的 RAM 与其尺寸成正比:一张 2400 万像素的照片(6000x4000 像素)仅 RGBA 源像素缓冲区就要约 96 MB,再加上一份目标画布缓冲区,再加上 JPEG 或 WebP 编码器的工作空间。浏览器可用 1 到 2 GB RAM 的移动设备可能在编码完成之前就被操作系统终止标签页。非常大的照片请在桌面浏览器中调整大小,或分阶段缩小(先 50%,再 50%),让每一步都能装进可用内存。
隐私:图像永远不离开你的设备
每一个基于云的图像调整大小服务(iLoveIMG、ResizeImage.net、ResizePixel、BeFunky、Fotor、Pixlr 的调整大小端点,以及成打的「在线调整图像大小」服务)都会把你的文件上传到运营方的服务器、运行他们的调整大小算法,再把更小的图像作为下载返还给你。隐私影响并不轻微,因为照片经常包含可识别内容:人脸、背景中可见的地址、内部界面或机密文档的截图、儿童照片、私人场所拍摄的照片、含个人信息的文件扫描件。大多数运营方会发布隐私政策,承诺在一两个小时内删除上传内容并在传输中加密,较大的运营方持有 ISO/IEC 27001 认证。他们有很强的商业动机遵守这些政策。但「一小时内删除」并不等于「从未被看到」。在那一小时里,图像内容存在于运营方的基础设施中,对任何具备相应权限的进程或人员可访问,并按适用的留存政策出现在日志和备份中。
这个调整大小工具从不上传任何东西。整条管线(选择文件、解码图像、画布调整大小、编码、下载)都在你的浏览器标签内运行,使用 JavaScript 和 HTML5 Canvas API。没有上传、没有携带图像数据的网络请求、没有日志记录。你可以在调整大小之前打开浏览器开发者工具的网络标签来核实:没有携带图像内容的请求被触发。唯一的网络流量是页面的初次加载和一段很小的 image-resizer.js 脚本。在页面加载完成后把浏览器切到飞行模式,工具依然能在你选择的任意本地文件上工作,这是最强的经验证据,证明没有任何东西被上传。对含有任何敏感内容的照片(人脸、地点、内部截图、身份证件),浏览器侧的取舍显然是值得的。
什么时候用另一个工具更合适
- 对数百个文件进行批量自动化处理。 在 Node.js 中使用
sharp(基于 libvips 的规范服务端图像库),在命令行使用 ImageMagick 或 GraphicsMagick,或在 Python 中使用 Pillow。这些工具能处理成千上万的文件而不受浏览器内存限制,并把每一种重采样核作为显式选项暴露出来,还能从 CI 任务、部署钩子或 cron 作业中运行。 - 用 AI 超分辨率做真正的放大。 要获得真正能添加细节的锐利放大,请使用神经网络放大器。Real-ESRGAN(开源,通过 ChaiNNer 或命令行本地运行)、waifu2x(开源,有免费网页演示)、Topaz Gigapixel AI(商业桌面软件),或 Camera Raw 或 Lightroom 中的 Adobe Super Resolution。这些模型幻觉出合理的细节,而不是恢复原本不存在的细节;它们在人脸和自然纹理上呈现出锐利的效果,因为模型在训练时见过许多类似的图像。
- 保留硬边缘的像素艺术调整大小。 使用显式提供最近邻重采样的工具:ImageMagick 的
-filter Point、GIMP 把插值设为「无」,或 Aseprite 等专业像素艺术编辑器。本工具始终在做平滑,因为 Canvas API 的imageSmoothingEnabled标志是开启的;关闭它会降低其他所有用例的质量,所以这份权衡偏向照片而不是精灵图。 - 需要 DPI 控制的印刷质量工作流。 Adobe Photoshop、Affinity Photo 或 Lightroom 把像素尺寸和 DPI 作为独立设置暴露出来,支持色彩管理工作流(ICC 配置文件保留、屏幕软打样、CMYK 输出),并保留无损的调整大小历史。浏览器侧的画布调整大小无法保证以上任何一点,因为画布在 sRGB 中工作,在重新编码时可能丢弃嵌入的色彩配置文件。
常见问题
调整大小会降低图片质量吗?
缩小可以很好地保持质量。放大(使图片大于原始尺寸)会导致一些模糊,因为必须插值新像素。为获得最佳效果,请从您拥有的最高分辨率的源图像开始。
"锁定宽高比"有什么作用?
锁定时,更改宽度会自动调整高度(反之亦然),以保持图片的原始比例。如果您需要将图片拉伸或压缩到精确尺寸,请解锁它。
我的图片会上传到服务器吗?
不会。所有大小调整都在您的浏览器中使用 HTML5 Canvas API 本地进行。您的图片永远不会离开您的设备。
我可以更改输出格式吗?
可以。无论原始格式如何,您都可以将调整大小后的图片输出为 JPEG、PNG 或 WebP。这对于在调整大小的同时转换格式很有用。
更多常见问题
DPI、PPI 和像素尺寸有什么区别?
像素尺寸(以像素表示的宽 × 高)描述图像实际包含的内容。PPI(每英寸像素数)描述这些像素在屏幕上的密度,是显示硬件的属性,不是文件的属性。DPI(每英寸点数)描述图像被打印时每英寸纸上落下多少打印机输出点。JPEG 或 PNG 中嵌入的 DPI 标签是给打印机的建议性元数据;它不会改变像素数据。1920x1080 的图像在任意 DPI 设置下都是 1920x1080 像素。要缩小一次打印的物理尺寸,要么减少像素数(用本工具),要么在发送打印前提高 DPI 元数据(在桌面工具的打印对话框,或 Photoshop 的图像大小对话框关闭「重新采样」)。
为什么我的放大图像看起来是糊的?
因为信息论说它必须如此。经典重采样(双三次、Lanczos、Mitchell)只能在已知源像素之间平滑插值;它无法发明从未被采样过的细节。奈奎斯特-香农采样定理设下了硬上限:源图像素栅格速率一半以上的频率在数学上无法恢复。把 200 像素的源图放大到 1920 像素永远会显得发软,因为新像素中有 90% 是插值得到的。要获得锐利的放大,请使用超分辨率模型(Real-ESRGAN、Topaz Gigapixel、Adobe Super Resolution),它通过在数百万张相似图像上训练过的神经网络合成合理的细节。
我是否应该为 Retina 或 HiDPI 屏幕调整大小?
是的。iPhone 和 MacBook 的 Retina 屏幕以及 Windows 的 HiDPI 屏幕以 2x 或 3x 的逻辑 CSS 像素密度渲染。一张在 Retina 屏幕上以 1200 个逻辑像素宽展示的英雄图,实际上绘制出 2400 个物理像素。通过 HTML 的 srcset 属性(现代响应式图像的标准)提供 2x 源图,浏览器会为每个访客的设备选择正确的版本。对于没有 srcset 的单一头像或英雄图,直接调整到展示尺寸的 2x:图像在 Retina 上会很清晰,在非 Retina 上略大,付出的代价是一点带宽,但避免了把小尺寸图像拉伸到高密度像素上时更显眼得多的模糊。
这个工具能离线工作吗?
可以。HTML5 Canvas API 是浏览器自身的一部分,不是一个被下载的库,因此没有单独的运行时需要缓存。页面按常规方式加载;打开之后,调整大小工具完全运行在浏览器内置代码之上,作用于你选择的任意本地文件。你可以在打开页面之后切到飞行模式并调整一张本地图像来验证。下载得到的结果在本地生成,由浏览器的常规下载机制保存,同样没有任何网络参与。
我应该在调整大小之前裁剪,还是之后?
先裁剪,再调整大小。裁剪通过丢弃不需要的边缘像素来设定宽高比(YouTube 的 16:9、Instagram 动态的 1:1、Stories 的 9:16、Open Graph 的 1.91:1)。调整大小再为选定的宽高比设定像素数。反过来也行,但浪费工作,你会重采样比所需更多的像素,然后在裁剪时再扔掉一部分。对本工具,请先用 Image Cropper 设定宽高比,再用本 Image Resizer 设定精确的目标尺寸。许多平台专用工作流(YouTube 缩略图 1280x720、Instagram 动态 1080x1080)会把两个步骤合在一起做;用两个专门工具按顺序做出来的结果,比想用一个被拉伸过的宽高比一次完成更干净。
是否有桌面或命令行版本的替代品?
有几个。批量自动化用 Node.js 的 sharp,它是规范的服务端库(基于 libvips)。ImageMagick(magick input.jpg -resize 1920x1080 output.jpg)和 GraphicsMagick 可以在任何 shell 中运行,处理超大文件不在话下。Python 的 Pillow(Image.open(p).resize((1920, 1080), Image.LANCZOS))是数据科学工作流的默认。要做像本工具这样的一次性交互式工作,但需要按核显式控制以及更多输出格式(包括 AVIF),推荐的浏览器替代是 Squoosh(Google Chrome Labs,同样完全运行在客户端)。Photoshop、Affinity Photo 以及 macOS 上的预览(工具 → 调整大小)覆盖桌面 GUI 用例。