apngasm(1)

πŸ’– apngasm(1) β€” like, the manual page, but make it make sense πŸ’–

okay bestie, welcome to the apngasm page from the User Commands section of your manual ✨ this is the lil tool that takes your sad lonely individual PNGs and glues them into one iconic animated PNG. no cap.


🌸 NAME 🌸

apngasm β€” assemble individual PNG files int to animated PNG file.

(yeah babe the manpage says "int to", we're keeping it, it's part of the lore πŸ™ˆ)


πŸ¦‹ SYNOPSIS πŸ¦‹

apngasm output.png frame001.png [options]

apngasm output.png frame*.png   [options]

two ways, same energy: name the frames one by one, or let the shell glob go feral with frame*.png πŸ’…


✨ DESCRIPTION ✨

Assemble individual PNG files into animated PNG file. that's the whole gig. you feed it frames, it feeds you an animation 🫢

real talk though: some optimizations used in APNG Assembler might re-sort the palette, or change the color type from RGBA and RGB modes down to RGB and indexed modes. those optimizations are only ever performed when they're lossless β€” but if you do NOT want your palette or your colortype getting touched, look at the options below to turn them off. protect your vibes.

now a lil lore drop πŸ“– : the Animated Portable Network Graphics (APNG) file format is an extension to the Portable Network Graphics (PNG) specification. it lets you have animated PNG files that work similarly to animated GIF files, while retaining backward compatibility with non-animated PNG files, and adding support for 8-bit transparency and 24-bit images. it's giving glow-up. it's giving range. ✨


πŸŽ€ OPTIONS πŸŽ€

  • /kp β€” Keep the original palette and do not optimize for created APNG. your palette, untouched, periodt πŸ’…
  • /kc β€” Keep the original color type. don't let anyone switch up your colors 🎨

🌈 EXAMPLES 🌈

[Example 1] πŸ“

With following files, to have 3/4 seconds delay between the frames:

frame01.png
frame02.png
frame03.png
apngasm output.png frame01.png 3 4

You can control individual frame by creating control files, like for "frame02.txt":

delay=25/100

[Example 2] 🧚

The same as above, but the with frame00.png, which is "invisible". Notice the use of option /f:

frame00.png - invisible
frame01.png
frame02.png
frame03.png
apngasm output.png frame00.png 3 4 /f

That way APNG supported browsers and image viewers will show frame01-frame02-frame03 animation, while IE and Chrome will display static frame00.png image. sneaky but make it fashion πŸ’…

[Example 3] 🌸

This way you'll get 1/10 sec delay:

apngasm output.png frame01.png

πŸ’œ ENVIRONMENT πŸ’œ

None.

(yeah, literally none. no environment variables. empty. the void. but make it cute 🫢)


πŸ¦‹ FILES πŸ¦‹

None.


⭐ STANDARDS ⭐

APNG Specification: https://wiki.mozilla.org/APNG_Specification


πŸ‘‘ SEE ALSO πŸ‘‘

apng2gif(1) gifsicle(1) gifview(1) optipng(1) pngcheck(1) pngcrush pnginfo(1) pngnq(1) pngquant(1)

(the whole PNG/GIF friend group showed up, we love a supportive squad 🫢)


πŸ’– AUTHORS πŸ’–

Program was written by Max Stepi <maxst@users.sourceforge.net>

This manual page was written by Jari Aalto <jari.aalto@cante.net>. Released under license GNU GPL version 2 or (at your option) any later version. For more information about license, visit <http://www.gnu.org/copyleft/gpl.html>.

This manual page was updated by xiao sheng wen <atzlinux@sina.com> on Apr 2023.


okay that's the whole page bestie, you're officially an APNG assembler girlie now πŸ’…βœ¨ this was apngasm, manual page for version 2026-02-03, straight out of the User Commands corner of the manual. go make something animated πŸ¦‹πŸŽ€πŸ”₯

πŸ“¦ where this page comes from