nip2 aims to be about halfway between Excel and Photoshop
Version: 7.10nip2 aims to be about halfway between Excel and Photoshop. You don't directly edit images --- instead, like a spreadsheet, you build relationships between objects.
Operating System: Mac OS X
With nip2 you don't directly edit images; instead, like a spreadsheet, you build relationships between objects.
You enter formula (or select menu items) to describe how to make a new object from some of the objects you already have. nip2 keeps track of these relationships: if you make a change anywhere, nip2 automatically recalculates anything affected by the change.
You can load a 500MB image, rotate it by 12 degrees, and immediately view the transformed image. This is because only the pixels needed to paint the display are actually calculated. You can add a slider, link it to the rotation, and as you drag the slider you can see your 500MB image spinning on the screen.
You can apply a filter to the rotated image, zoom in to check the effect on individual pixels, crop out a small section of the filtered image and save the cropped area to disc. All this happens pretty much instantly, with only a few mouse-clicks. The final save may take a little while (since nip2 does actually have to calculate some pixels then), but it will only calculate the pixels it absolutely has to (it will not rotate the entire 500MB image, for example).
Make your own dialogs
If you do something useful, you can turn it into a reuseable menu button with three mouseclicks.
Add more C operations
You can use any image-processing operation in the VIPS operation database, including operations you have written yourself.
Powerful macro laguage
nip2 includes its own programming language. It's a higher-order lazy pure functional programming language, with classes. nip2 includes an integrated editor, compiler and debugger. Almost all of the menus/buttons/etc. are implemented using this extension language.
Command line and batch modes
Very handy if you need to process a lot of files. You can group objects in nip2 and process them all with one click, or you can use nip2 as a unix interpreter and write scripts which can be run by other programs. We have a website which uses nip2 as the backend to generate images on demand.