Scriptable image processing system. sips is used to query or modify raster image files (JPG/GIF/PNG) and ColorSync ICC profiles. Image processing options include flip, rotate, change image format/width/height. Its functionality can also be used through the "Image Events" AppleScript suite.
Syntax
sips [image-query-functions] imagefile ...
sips [profile-query-functions] profile ...
sips [image-modification-functions] imagefile ...
[--out result-file-or-dir]
sips [profile-modification-functions] profile ...
[--out result-file-or-dir]
sips [-h, --help]
sips [-H, --helpProperties]
Functions
Profile query functions:
-g key
--getProperty key
Output the property value for key to stdout.
-X tag tagFile
--extractTag tag tagFile
Write a profile tag element to tagFile.
-v
--verify
Verify any profile problems and log output to stdout.
Image query functions:
-g key
--getProperty key
Output the property value for key to stdout.
-x profile
--extractProfile profile
Get the embedded profile from image and write it to profile.
Profile modification functions:
-s key value
--setProperty key value
Set a property value for key to value.
-d key
--deleteProperty key
Remove a property value for key.
--deleteTag tag
Remove the tag element from a profile.
--copyTag srcTag dstTag
Copy the srcTag element of a profile to dstTag.
--loadTag tag tagFile
Set the tag element of a profile to the contents of tagFile.
--repair
Repair any profile problems and log output to stdout.
Image modification functions:
-s key value
--setProperty key value
Set a property value for key to value.
-d key
--deleteProperty key
Remove a property value for key.
-e profile
--embedProfile profile
Embed profile in image.
-E profile
--embedProfileIfNone profile
Embed profile in image only if image doesn’t have a profile.
-m profile
--matchTo profile
Colour match image to profile.
-M profile intent
--matchToWithIntent profile intent
Colour match image to profile with rendering intent:
perceptual | relative | saturation | absolute.
--deleteColorManagementProperties
Delete colour management properties in TIFF, PNG, and EXIF dictionaries.
-r degreesCW
--rotate degreesCW
Rotate the image by the specified degrees.
-f horizontal|vertical
--flip horizontal|vertical
Flip the image either vertically left to right, or horizontally top to bottom.
-c pixelsH pixelsW
--cropToHeightWidth pixelsH pixelsW
Crop image to fit specified size.
-p pixelsH pixelsW
--padToHeightWidth pixelsH pixelsW
Pad image with pixels to fit specified size.
--padColor hexcolor
Use this colour when padding. White=FFFFFF, Red=FF0000,
Default=Black=000000
-z pixelsH pixelsW
--resampleHeightWidth pixelsH pixelsW
Resample image at specified size. Image apsect ratio may be altered.
--resampleWidth pixelsW
Resample image to specified width.
--resampleHeight pixelsH
Resample image to specified height.
-Z pixelsWH
--resampleHeightWidthMax pixelsWH
Resample image so height and width aren’t greater than specified size.
-i
--addIcon
Add a Finder icon to image file.
Options
The commands --getProperty, --setProperty, and --deleteProperty can use one of
the following keys as a parameter:
Special property keys:
all binary data
allxml binary data
Image property keys:
dpiHeight float
dpiWidth float
pixelHeight integer (read-only)
pixelWidth integer (read-only)
typeIdentifier string (read-only)
format string [ jpeg | tiff | png | gif | jp2 | pict | bmp | qtif | psd | sgi | tga ]
formatOptions string default | [ low | normal | high | best percent] | [ lzw | packbits ]
space string (read-only)
samplesPerPixel integer (read-only)
bitsPerSample integer (read-only)
creation string (read-only)
make string
model string
software string (read-only)
description string
copyright string
artist string
profile binary data
hasAlpha boolean (read-only)
Profile property keys:
description utf8 string
size integer (read-only)
cmm string
version string
class string (read-only)
space string (read-only)
pcs string (read-only)
creation string
platform string
quality string [ normal | draft | best ]
deviceManufacturer string
deviceModel integer
deviceAttributes0 integer
deviceAttributes1 integer
renderingIntent string [ perceptual | relative | saturation | absolute ]
creator string
copyright string
md5 string (read-only)
Your personal ICC profiles are stored in the folder:
HDname/users/username/Library/Colorsync/Profiles
or ~/Library/Colorsync/ProfilesThere are also system wide copies under:
HDname/Library/Colorsync/Profiles
Press the Option/Alt key to reveal the library folder in Apple finder.
Convert a jpeg image into a .png image:
$ sips -s format png oldpic.jpg --out newpic.png
Convert a folder filled with .jpgs to .pngs:
$ for fi in *.jpg; do sips -s format png $fi --out $fi.png; done
Convert a folder filled with raw .RAF images . to .jpgs:
$ for f in *.RAF; do sips -s format jpeg $f --out $f.jpg; done
Resize an image to 600 pixels wide by 300 pixels tall:
$ sips -z 300 600 original.jpg --out new.jpg
Resize the largest side of an image, preserving the aspect ratio:
$ sips -z 600 original.jpg --out new.jpg
Get the size of an image (dots per inch):
$ sips -g dpiHeight -g dpiWidth mini.jpg
/Users/simon/Pictures/mini.jpg
dpiHeight: 72.000
dpiWidth: 72.000
“Genius is the ability to see things invisible, to manipulate things intangible, to paint things that have no features” ~ Joseph Joubert
Local man page: sips - Command line help page on your local machine.
Make JPEG droplet - A simple GUI for sips that converts files to jpg (with source code).
screencapture - Capture screen image to file or disk.
textutil - Manipulate text files in various formats (Doc,html,rtf).
imagemagick - An alternative tool for image manipulation (sips is usually faster).