I’m scanning old family photos with a Canon LiDE 400 using scanimage but the scanner outputs/scans the whole scanning surface, not only the photo. I’m working in the Linux terminal and I’d rather not install a GUI at this time. If I did, I’d simply use XSane to crop the image. The scanner doesn’t have any length/width markings along its edges, otherwise I’d just input the dimensions of the photo.
Any solutions?
ImageMagic can do this with mogrify. You can add it to your term workflow or batch the images at the end.
mogrify -trim +repage *.pngAdd -fuzz if the background is a bit not so consistently white.
Cool! Thanks so much! :D
If I want to scan a 100mm wide by 50mm tall area at 300 DPI, I use:
scanimage -x 100 -y 150 --resolution 300 --output-file foo.jpgThanks! I did end up setting the X and Y measurements. It’s just too bad that my scanners scanning points do not start exactly in the corner of the scanner. It was a somewhat cheapo scanner, so I guess I got what I paid for.
I ended up writing a wrapper shell script that added a fudge value onto the x and y so I wouldn’t have to do it myself every time. :)
Only that scanimage’s manpages (was suprised to have it installed as a requriment of some GUI app…) talk about
-x <value>and-y <value>parameters, with the caveat that the specific device has to support it.Also:
-l(top-left x position of scanned area), and possibly (if supported)-t(y posiiton)PS: All values in millimeters
PPS: Did a quick test.
At least my scanner worked withscanimage -l 50 -t 50 -x 100 -y 100 > test.pnmto produce a (rounding errors included) 10cmx10cm scanCorrection… no, it does not. The
-toption is ignored. But such things could be probably handled by placing of the original in your use case.Thanks! I ended up just using a ruler to measure the dimensions and setting
-xand-y.




