Resize a GIF Online

Scale an animated GIF to a smaller width in your browser without freezing it into a still. The palette is rebuilt from the scaled frames so the colours hold up.

  • 免費
  • 無需註冊
  • 無水印
  • 在瀏覽器裏運行

GIF Resizer

轉換器是編譯成 WebAssembly 的 ffmpeg。你選第一個文件時它會下載一次(約 30 MB),之後就留在瀏覽器緩存裏。

GIF 仍然是動圖。色板會按縮放後的畫面重新生成,因爲縮放會產生原來那 256 種顏色裏沒有的顏色。

文件在你自己的瀏覽器裏處理,不會上傳。引擎本身有 30 MB,只在第一次使用時下載,之後都從瀏覽器緩存裏取。

GIF Resizer 怎麼用

  1. 1Pick the width you want, then drop your .gif onto the box above or click to browse.
  2. 2The engine fetches itself once, about 30 MB of WebAssembly, then scales every frame.
  3. 3Watch the resized GIF play in the page, then download it or try another width.

Why a GIF needs its own resizer

A general image resizer will not do this job, which is why a dedicated gif resizer exists at all.

Open an animated GIF in most image editors and you get its first frame. Scale it, save it, and the animation is gone. That is not a bug in those tools; they are built around a single raster image, and a GIF is a sequence with its own timing attached.

Being able to resize a GIF properly means scaling every frame, keeping the delay between them, and writing them back as one looping file. That is what this page does, and it is the entire reason it exists as something separate from the ordinary image resizer.

The palette problem nobody mentions

Each frame of a GIF is an indexed image: the pixels are not colours but numbers pointing into a table of at most 256 entries. When you resample that image, the interpolation between two neighbouring pixels produces a colour that sits between their two palette entries, and that colour has nowhere to go.

The fix is to rebuild the palette from the scaled frames rather than reusing the original. That is why a colour control appears on a resize tool, which looks odd until you know why. Leave it at the default and the result tracks the source closely; drop it to 64 or 32 when you want the file smaller and the content is flat graphics rather than photographic.

Picking a width

GIF file size follows the pixel count closely, so width is the strongest lever you have. Halving it cuts the area to a quarter and typically takes the file down by a similar factor. For a chat message or a documentation page, 480 pixels is usually plenty; 320 is fine for an inline example; 800 is worth it only when fine detail actually matters.

None of this is guesswork you have to do twice: to resize an animated gif here, pick a width, look at the result playing in the page, and change it if it is wrong.

Everything runs in your browser. Files up to 500 MB are accepted, nothing is sent to a server, and the engine is fetched once on first use and cached afterwards.

常見問題

Will my GIF still be animated afterwards?
Yes. Every frame is scaled and written back into a single looping GIF, with the original frame timing intact. This is the thing most image editors get wrong when you open a GIF in them, because they load the first frame and throw the rest away.
Can I make a GIF bigger?
Not here, and the reason is honest rather than technical: enlarging a GIF cannot add detail that was never captured, so you would get a larger file that looks softer. If the animation exists as a video somewhere, re-export the GIF from that source at the size you need instead.
Why does the height not have its own control?
Because the aspect ratio is kept automatically. Setting both dimensions independently would let you stretch an animation, which is almost never what anyone wants and is impossible to undo afterwards without the original.
Does resizing also make the file smaller?
Usually, substantially. GIF size scales with the pixel count more than with anything else, so halving the width tends to quarter the area and cut the file dramatically. Reducing the colour count as well is the other big lever, and there is a separate GIF compressor here for that.
Why does the colour setting appear on a resize tool?
Because scaling a GIF is not the same operation as scaling a photo. Every frame is drawn from a palette of at most 256 colours, and resampling produces in-between colours that are not in that palette. So the palette has to be built again from the scaled frames, and how many entries it gets is a real choice.

更多免費工具