photocrop - Perspective-correct photo cropping

Photocrop is a perspective-correct photo cropping tool.

It allows to interactively select and crop a portion of a photo,
resnapping it from the newly selected center.


Photocrop presently requires Povray for full operation, in addition to:
+ Perl 5,
+ SDL and OpenGL and their perl support modules
+ Iamge::Info (libimage-info-perl)


Copyright (c) 2009, 2010, 2012 Michele Bini <>

This program is free software: you can redistribute it and/or modify
it under the terms of the version 3 of the GNU General Public License
as published by the Free Software Foundation.

This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <>.


Usage: $0 OPTIONS* image.jpg\n

  --angle ANGLE
  --viewangle ANGLE     Initial angle of perspective view
  --turn ANGLE          Initial right-side turn
  --tilt ANGLE          Initial up-tilt
  --rotation ANGLE      Initial image rotation
  --viewrotation ANGLE  View rotation

ANGLE: <decimal-number> <deg|rad>

Saving options:
  --savebmp FILE     Output a screenshot to FILE.
  --savepovray FILE  Output a povray scene to FILE of the current view.

Files are saved when the program exits.

Scale detected angles:
  --scaledetectedangle RATIO   Scale detected aperture angle by RATIO
  --scaledetectedanglex RATIO  Same for the X coordinate
  --scaledetectedangley RATIO  Same for the Y coordinate

Diagnostic options:
  --verbose  Verbose operation
  --debug    Debug program

Interface options:
  --screensize WxH  Set window/screen size
  --noscreenresize  Don't allow window resize
  --rungimp         Run gimp on generated file
  --delay MS        Delay frames MS milliseconds
  --fullscreen      Use full screen display
  --[no-]crosshair  [De]Activate a blinking, angle measuring crosshair
  --[no-]buttons    [De]Activate button interface (default: on).

Animation options:
  --notile     Do not tile main texture! (may fail on some systems)
  --texdim S   Use size S for texture tiles (future option)
  --quality N  Set rendering quality (0..10, default 8)

Keyboard input:
(a, z):  Zoom (in, out)
(c, w):  Rotate image (clockwise, counterclockwise)
Arrow keys: tilting
RETURN:  Write output file[s] and exit
ESCAPE:  Abort program

  --scaleup X        Scales up X times the image rendered by povray
  --savepng FILE     Save to file the view rendered with povray
  --savebmp FILE     Save displayed image to file on exit (low quality, not recommended)
  --savepovray FILE  Save to povray file on exit