VIPSTHUMBNAIL(1)

πŸ“¦
version 8.18.7 Β· 3 versions
, in alpine 3.24, arch rolling, fedora 43, fedora 44, nixpkgs unstable, ubuntu resolute, ubuntu stonking

πŸ’– VIPSTHUMBNAIL(1) πŸ’–

okay so bestie, welcome to the General Commands Manual glow-up of vipsthumbnail β€” she makes thumbnails of image files and she is, frankly, iconic πŸ’…


✨ NAME ✨

vipsthumbnail β€” make thumbnails of image files πŸŽ€


🌸 SYNOPSIS 🌸

vipsthumbnail [flags] imagefile1 imagefile2 ...

πŸ¦‹ DESCRIPTION πŸ¦‹

vipsthumbnail(1) goes through every imagefile one at a time, like a lil assembly line of slay ✨. Each image gets shrunk down so it fits inside a 128 by 128 pixel square, and then that shrunk lil baby gets written out to a brand new file named tn_imagefile.jpg. No cap, this program is typically faster and uses less memory than those other image thumbnail programs. main character energy fr fr πŸ‘‘

For example:

$ vipsthumbnail fred.png jim.tif

will read the image files fred.png and jim.tif, and write thumbnails out to the files tn_fred.jpg and tn_jim.jpg. two for two, we ate πŸ”₯

$ vipsthumbnail --size=64 -o thumbnails/%s.png fred.jpg

will read the image file fred.jpg and write a 64 x 64 pixel thumbnail to the file thumbnails/fred.png. obsessed 🫢


πŸ’… OPTIONS πŸ’…

  • -s N, --size=N β€” set the output thumbnail size to N x N pixels. 🌈

You can use "MxN" to specify a rectangular bounding box. The image is shrunk so that it just fits within this area β€” and plot twist, images which are smaller than this get expanded 😭.

Use "xN" or "Mx" to just resize on one axis. one-axis girlies rise πŸ™ˆ

Append "<" to only resize if the input image is smaller than the target, and append ">" to only resize if the input image is larger than the target.

  • --path=FORMAT β€” set the output path format. Three substitutions get performed, like lil magic tricks ✨: %s is replaced by the input basename with any suffix removed, %d is replaced by the input dirname, and %c is replaced by the current working directory.

The default value is %d/tn_%s.jpg, meaning JPEG output, to the same directory as the input file, with tn_ prepended. You can add format options too β€” for example %c/%s/tn_%s.jpg[Q=20] will write JPEG images to a tree within the current directory with Q set to 20. it's giving organized πŸŽ€

  • -e PROFILE, --eprofile=PROFILE β€” export thumbnails with this ICC profile. Images are only colour-transformed if there is both an output and an input profile available. The input profile can either be embedded in the input image, or supplied with the --iprofile option. πŸ’œ
  • -i PROFILE, --iprofile=PROFILE β€” import images with this ICC profile, if no profile is embedded in the image. Images are only colour-transformed if there is both an output and an input profile available. The output profile should be supplied with the --oprofile option. 🌸
  • -c, --crop β€” crop the output image down. The image is shrunk so as to completely fill the bounding box in both axes, then any excess gets cropped off. bye bye extra pixels πŸ’€βœ‚οΈ
  • -d, --delete β€” delete the output profile from the image. This can save a small amount of space. tiny file, big vibes πŸ“
  • -t, --rotate β€” auto-rotate images using EXIF orientation tags. she knows which way is up, periodt 🧚
  • -a, --linear β€” shrink images in linear light colour space. This can be much slower, so maybe go grab a snack while she cooks 😭

⭐ RETURN VALUE ⭐

returns 0 on success and non-zero on error. Error can mean one or more conversions failed. πŸ’”


πŸ‘‘ SEE ALSO πŸ‘‘

vipsheader(1)


lowkey important: that return value thing is real β€” non-zero means something flopped, so check it if you're scripting bestie 🫢

and that's the whole page, no notes. this one's from the General Commands Manual, dated 13 May 2010 β€” vintage but still serving, and yes she is still that girl πŸ’–βœ¨πŸŽ€πŸ¦‹