xscanimage(1)
π xscanimage(1) β the manual, but make it cute π
okay bestie, gather round, because we're talking about xscanimage β it scans an image, that's the whole vibe, and it's genuinely iconic for it. This page lives in the General Commands Manual section (that's the (1), iykyk) π
β¨ NAME β¨
xscanimage β scan an image π¦
πΈ SYNOPSIS πΈ
xscanimage [--version|-V] [--help|-h] [--display d] [--no-xshm] [--sync]
[devicename]
π DESCRIPTION π
so xscanimage is literally a whole graphical user-interface that lets you control an image acquisition device β think a flatbed scanner, or a camera, whatever you've got plugged in. It lets you preview images and scan individual images, and you can either run it straight from the command-line or invoke it through The GIMP image manipulation program. Two moods, both slay.
If you go the command-line route, xscanimage acts as a stand-alone program and saves whatever it acquires in a suitable PNM format:
- PBM for black-and-white images
- PGM for grayscale images
- PPM for color images
If you go the GIMP route instead, the images get passed directly to The GIMP for further processing. no middleman, no fuss π
xscanimage accesses image acquisition devices through the SANE (Scanner Access Now Easy) interface. Heads up though β the list of available devices depends entirely on your installed hardware and configuration, so it's giving very "results may vary" energy.
When you invoke it without an explicit devicename argument, xscanimage presents a dialog listing of all known and available devices. If the environment variable SANE_DEFAULT_DEVICE is set to the devicename, that device gets preselected in the dialog. Cute, right?
But if you want to access an available device that is not known to the system, you have to specify the devicename explicitly. The format of devicename is:
backendname:devicefile
e.g. umax:/dev/sga. periodt π
π§ RUNNING UNDER THE GIMP π§
okay so to run xscanimage under gimp(1), you literally just copy it to one of the gimp(1) plug-ins directories. And if you're trying to conserve disk-space β very mindful, very demure β you can create a symlink instead. π«Ά
For example, for gimp-1.0.x the command is:
ln -s @BINDIR@/xscanimage ~/.gimp/plug-ins/
and for gimp-1.2.x the command is:
ln -s @BINDIR@/xscanimage ~/.gimp/plug-ins/
wait, bestie, hold on β the gimp-1.2.x one is actually:
ln -s @BINDIR@/xscanimage ~/.gimp-1.2/plug-ins/
β¨ that adds a symlink for the xscanimage binary to the user's plug-ins directory. After creating this symlink, xscanimage will be queried by gimp(1) the next time it's invoked. And from then on, xscanimage can be invoked through the "File->Acquire->Xscanimage->Device dialog..." menu entry. main character menu entry fr fr π
You'll also find that the "File->Acquire->Xscanimage" menu contains short-cuts to the SANE devices that were available at the time xscanimage was queried. For example, the first PNM pseudo-device is typically available as the short-cut "File->Acquire->Xscanimage->pnm:0". iconic.
β οΈ Note:gimp(1)caches these short-cuts in~/.gimp/pluginrc. So when the list of available devices changes (e.g., a new scanner is installed), it is typically desirable to rebuild this cache.
To do that, you've got two options:
touch(1)thexscanimagebinary, e.g.touch @BINDIR@/xscanimage- delete the plug-ins cache, e.g.
rm ~/.gimp/plug-ins
Either way, invoking gimp(1) afterwards will cause the pluginrc to be rebuilt. π
π OPTIONS π
--version,-Vβ if this is given,xscanimagewill output its version number. that's it, that's the whole job.--help,-hβ prints a short summary of options. a lil snack of information π--displayβ selects the X11 display used to present the graphical user-interface (seeX(1)for details).--no-xshmβ requests not to use shared memory images. Shared memory images usually enhance performance but cause problems with some buggy X11 servers. Unless your X11 server literally dies when running this program, there is no need or advantage to specify this flag. so likeβ¦ only use it if things are dire bestie π--syncβ requests a synchronous connection with the X11 server. > This is for debugging purposes only. no cap.
π ENVIRONMENT π
SANE_DEFAULT_DEVICEβ the default device-name.
Example:
SANE_DEFAULT_DEVICE="hp:/dev/scanner"
SANE_DEBUG_XSCANIMAGEβ this environment variable controls the debug level ofxscanimage. Higher debug levels increase the verbosity of the output. (yes, the original page spells it "Descsription" and honestly? we respect the typo, it stays π)0β print fatal errors1β print errors2β print warnings3β print information messages4β print everything
Example:
SANE_DEBUG_XSCANIMAGE=3
π FILES π
$HOME/.sane/xscanimage/xscanimage.rcβ this file holds the user preferences. Normally, this file should not be manipulated directly. Instead, the user should customize the program through the"Preferences"dialog. hands off the rc file bestie π$HOME/.sane/xscanimage/devicename.rcβ for each device, there is one rc-file that holds the saved settings for that particular device. Normally, this file should not be manipulated directly either. Instead, the user should use thexscanimageinterface to select appropriate values and then save the device settings using the"Preferences->Save Device Settings"menubar entry.$HOME/.sane/preview-devicename.ppmβ after acquiring a preview,xscanimagenormally saves the preview image in this device-specific file. Thus, next time the program is started up, the program can present the old preview image. This feature can be turned off through the"Preferences->Preview Options..."dialog.@DATADIR@/sane-style.rcβ this system-wide file controls the aspects of the user-interface such as colors and fonts. It is a GTK style file and provides fine control over the visual aspects of the user-interface. β¨ aesthetic β¨$HOME/.sane/sane-style.rcβ this file serves the same purpose as the system-wide style file. If present, it takes precedence over the system wide style file. she's the understudy who goes on and steals the show π
π SEE ALSO π
sane(7), gimp(1), xcam(1), scanimage(1), scanadf(1), sane-scsi(5), sane-dll(5), sane-net(5), sane-"backendname"(5)
π AUTHOR π
Tristan Tarrant, Andreas Beck, David Mosberger, and Henning Meier-Geinitz
and that's the whole page bestie!! this manual is from 1 Feb 2003 and it belongs to the xscanimage(1) era of things β a true vintage queen π°οΈπ go forth and scan something gorgeous, you've got this π¦β¨π
π¦ where this page comes from
- debian bookworm: sane 1.0.14-17 Β· GPL-2.0-or-later WITH sane exception
- ubuntu jammy: sane 1.0.14-16 Β· GPL-2.0-or-later WITH sane exception
- ubuntu noble: sane 1.0.14-18 Β· GPL-2.0-or-later WITH sane exception
- ubuntu questing: sane 1.0.14-18ubuntu1
- ubuntu resolute: sane 1.0.14-18.1 Β· GPL-2.0-or-later WITH sane exception
- ubuntu stonking: sane 1.0.14-18.1 Β· GPL-2.0-or-later WITH sane exception
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms