scanimage(1) SANE Scanner Access Now Easy scanimage(1)

scanimage - اسکن تصویر

scanimage [-d dev] [--format=output-format] [-i profile] [-L] [-f device-format] [-b [format]] [--batch-start=start] [--batch-count=count] [--batch-increment=increment] [--batch-double] [--accept-md5-only] [-p] [-o path] [-n] [-T] [-A] [-h] [-v] [-B size] [-V] [device-specific-options]

دستور scanimage یک رابط خط فرمان برای کنترل دستگاه‌های تصویربرداری مانند اسکنرهای تخت یا دوربین‌ها است. دستگاه از طریق گزینه‌های خط فرمان کنترل می‌شود. پس از پردازش گزینه‌های خط فرمان، scanimage به طور معمول فرایند ثبت تصویر را آغاز می‌کند. داده‌های تصویر در خروجی استاندارد و در یکی از فرمت‌های PNM (شامل PBM برای تصاویر سیاه‌وسفید، PGM برای تصاویر طیف خاکستری، و PPM برای تصاویر رنگی)، فرمت TIFF (سیاه‌وسفید، طیف خاکستری یا رنگی)، فرمت PNG یا فرمت JPEG (سطح فشرده‌سازی ۷۵) نوشته می‌شوند. scanimage از طریق رابط SANE (Scanner Access Now Easy) به دستگاه‌های تصویربرداری دسترسی پیدا می‌کند و بنابراین می‌تواند از هر دستگاهی که برای آن بک‌اند SANE وجود دارد پشتیبانی کند (برای دریافت فهرستی از بک‌اندهای موجود، دستور apropos sane- را امتحان کنید).

برای دریافت فهرست دستگاه‌ها:


scanimage -L

برای اسکن با تنظیمات پیش‌فرض و ذخیره در فایل image.pnm:


scanimage >image.pnm

برای اسکن ۱۰۰ در ۱۰۰ میلی‌متر در فایل image.tiff (ممکن است گزینه‌های -x و -y در تمام دستگاه‌ها در دسترس نباشند):


scanimage -x 100 -y 100 --format=tiff >image.tiff

برای چاپ تمام گزینه‌های در دسترس:


scanimage -h

هنگام اجرای scanimage، دو دسته گزینه در دسترس است.

گزینه‌هایی که توسط خود scanimage ارائه می‌شوند در زیر فهرست شده‌اند. علاوه بر این، هر بک‌اند مجموعه‌ای از گزینه‌های اختصاصی خود را ارائه می‌دهد که این موارد نیز قابل تعیین هستند. توجه داشته باشید که گزینه‌های در دسترس از طرف بک‌اند بسته به دستگاه اسکن انتخاب‌شده ممکن است متفاوت باشند.

اغلب، گزینه‌هایی که عملکرد مشابهی دارند ممکن است در بک‌اندهای مختلف به شیوه‌ای متفاوت پیاده‌سازی شوند. نمونه‌ای از این تفاوت، گزینه‌های --mode Gray و --mode Grayscale است. این تفاوت می‌تواند ناشی از ترجیحات متفاوت نویسندگان بک‌اند باشد. در مواقع دیگر، گزینه‌ها توسط خود دستگاه اسکن تعریف می‌شوند و بنابراین خارج از کنترل کد بک‌اند هستند.

پارامترها از گزینه‌های تک‌کاراکتری با یک فاصله جدا می‌شوند (مانند -d epson) و از گزینه‌های چندکاراکتری با "=" جدا می‌گردند (مانند --device-name=epson).

دستگاه مورد نظر برای دسترسی را مشخص می‌کند و باید پس از آن نام دستگاه SANE مانند `epson:/dev/sg0' یا `hp:/dev/usbscanner0' بیاید. یک فهرست (بخشی) از دستگاه‌های در دسترس را می‌توان با گزینه --list-devices به دست آورد (به زیر مراجعه کنید). اگر نام دستگاه به صراحت مشخص نشود، scanimage نام دستگاه را از متغیر محیطی SANE_DEFAULT_DEVICE می‌خواند. اگر این متغیر تنظیم نشده باشد، scanimage تلاش خواهد کرد نخستین دستگاه در دسترس را باز کند.
نحوه نوشتن داده‌های تصویر در خروجی استاندارد یا فایل مشخص‌شده با گزینه --output-file را انتخاب می‌کند. مقدار output-format می‌تواند pnm، tiff، png یا jpeg باشد. اگر --format مشخص نشود، به صورت پیش‌فرض PNM نوشته می‌شود.
برای گنجاندن یک نمایه ICC در فایل TIFF استفاده می‌شود.
فهرستی (جزئی) از دستگاه‌های در دسترس را درخواست می‌کند. ممکن است این فهرست کامل نباشد، زیرا برخی دستگاه‌ها ممکن است در دسترس باشند، اما در هیچ‌یک از فایل‌های پیکربندی (که معمولاً در دایرکتوری /etc/sane.d ذخیره می‌شوند) درج نشده باشند. این مورد به‌ویژه هنگام دسترسی به اسکنرها از طریق شبکه رخ می‌دهد. اگر دستگاهی در فایل پیکربندی فهرست نشده باشد، تنها راه دسترسی به آن استفاده از نام کامل دستگاه است. برای اطلاع از نام چنین دستگاه‌هایی ممکن است لازم باشد با مدیر سیستم خود مشورت کنید.
مشابه با --list-devices عمل می‌کند، اما به یک رشته فرمت نیاز دارد. scanimage جای‌نماهای %d %v %m %t %i %n را به ترتیب با نام دستگاه، نام سازنده، نام مدل، نوع اسکنر، شماره نمایه و خط جدید جایگزین می‌کند. دستور
scanimage -f “ scanner number %i device %d is a %t, model %m, produced by %v ”

خروجی مشابه زیر تولید خواهد کرد:

scanner number 0 device sharp:/dev/sg1 is a flatbed scanner, model JX250 SCSI, produced by SHARP

گزینه‌های --batch* قابلیت‌هایی را برای اسکن اسناد با استفاده از فیدر اسناد فراهم می‌کنند.

برای تعیین فرمت نام فایلی که هر صفحه در آن نوشته می‌شود استفاده می‌شود. هر صفحه در یک فایل مجزا نوشته می‌شود. اگر format مشخص نشود، مقدار پیش‌فرض out%d.pnm (یا out%d.tif برای --format tiff، out%d.png برای --format png یا out%d.jpg برای --format jpeg) استفاده خواهد شد. این گزینه با گزینه --output-path ناسازگار است. مقدار format به عنوان یک رشته به سبک printf همراه با یک پارامتر عدد صحیح ارائه می‌شود.
شماره صفحه‌ای را انتخاب می‌کند که نام‌گذاری فایل‌ها از آن آغاز می‌شود. اگر این گزینه داده نشود، شمارنده از ۱ آغاز خواهد شد.
تعداد صفحاتی را که باید برای اسکن تلاش شود مشخص می‌کند. اگر داده نشود، scanimage به اسکن ادامه می‌دهد تا زمانی که اسکنر وضعیتی غیر از OK بازگرداند. همه اسکنرهای دارای فیدر سند هنگام خالی شدن ADF اعلام وضعیت نمی‌کنند. از این گزینه برای دور زدن این مشکل استفاده کنید.
میزانی را تعیین می‌کند که شماره موجود در نام فایل به آن اندازه افزایش می‌یابد. به طور کلی این گزینه زمانی استفاده می‌شود که اسناد دورو را روی یک فیدر سند یک‌رو اسکن می‌کنید. گزینه --batch-double یک دستور ویژه است که برای کمک به این کار ارائه شده است.
به طور خودکار مقدار افزایش را روی ۲ تنظیم می‌کند. معادل --batch-increment=2 است.
پیش از اسکن هر صفحه، فشردن کلید RETURN را درخواست می‌کند. از این گزینه می‌توان برای اسکن چند صفحه بدون فیدر خودکار سند استفاده کرد.
تنها درخواست‌های احراز هویت کاربری را می‌پذیرد که از امنیت MD5 پشتیبانی می‌کنند. دیمن شبکه SANE به نام saned(8) قادر به ارسال چنین درخواست‌هایی است.
درخواست می‌کند که scanimage یک شمارنده پیشرفت را چاپ کند. این شمارنده نشان می‌دهد چه مقدار از داده‌های تصویر فعلی تا کنون دریافت شده است (به درصد).
درخواست می‌کند که scanimage خروجی اسکن را در path مشخص‌شده ذخیره کند. این گزینه با گزینه --batch ناسازگار است. برنامه تلاش می‌کند --format را از روی نام فایل حدس بزند. اگر این کار امکان‌پذیر نباشد، یک پیام خطا چاپ کرده و خارج می‌شود.
درخواست می‌کند که scanimage تنها گزینه‌های ارائه‌شده توسط کاربر را تنظیم کند اما در واقع اسکنی انجام ندهد. از این گزینه می‌توان مثلاً برای خاموش کردن لامپ اسکنر (در صورت پشتیبانی بک‌اند) استفاده کرد.
درخواست می‌کند که scanimage چند آزمایش صحت‌سنجی ساده انجام دهد تا اطمینان حاصل شود که بک‌اند طبق تعریف API SANE کار می‌کند. به‌ویژه تابع sane_read() توسط این آزمایش مورد سنجش قرار می‌گیرد.
درخواست می‌کند که scanimage تمام گزینه‌های در دسترس ارائه‌شده توسط بک‌اند، از جمله گزینه‌های دکمه‌ها را فهرست کند. اطلاعات در خروجی استاندارد چاپ شده و هیچ اسکنی انجام نخواهد شد.
اطلاعات راهنما را درخواست می‌کند. اطلاعات در خروجی استاندارد چاپ شده و هیچ اسکنی انجام نخواهد شد.
میزان جزئیات خروجی scanimage را افزایش می‌دهد. این گزینه را می‌توان به دفعات تکرار کرد که هر بار سطح جزئیات را افزایش می‌دهد.
اندازه بافر ورودی را از مقدار پیش‌فرض ۱ مگابایت به size کیلوبایت تغییر می‌دهد.
درخواست می‌کند که scanimage نام برنامه و بسته، شماره نسخه توزیع SANE که همراه آن آمده و نسخه بک‌اندی که بارگذاری می‌کند را چاپ نماید. در صورتی که اطلاعات بیشتری در مورد شماره نسخه بک‌اندها لازم باشد، می‌توان از متغیر DEBUG برای لایه dll استفاده کرد. مثال: SANE_DEBUG_DLL=3 scanimage -L.

همان‌طور که ممکن است تصور کنید، بخش عمده‌ای از قدرت scanimage ناشی از این واقعیت است که می‌تواند هر بک‌اند SANE را کنترل کند. بنابراین، مجموعه دقیق گزینه‌های خط فرمان به قابلیت‌های دستگاه انتخاب‌شده بستگی دارد. برای مشاهده گزینه‌های یک دستگاه با نام dev، دستور scanimage را از طریق یک خط فرمان به شکل زیر فراخوانی کنید:

scanimage --help --device-name dev

مستندات مربوط به گزینه‌های اختصاصی دستگاه که توسط --help چاپ می‌شوند، به بهترین شکل با چند مثال توضیح داده می‌شوند:

-l 0..218mm [0]

موقعیت x بالا-چپ ناحیه اسکن.

توضیحات بالا نشان می‌دهد که گزینه -l مقداری در محدوده ۰ تا ۲۱۸ میلی‌متر را انتظار دارد. مقدار داخل براکت نشان می‌دهد که مقدار فعلی گزینه ۰ میلی‌متر است. اکثر بک‌اندها گزینه‌های هندسی مشابهی را برای موقعیت y بالا-چپ (-t)، عرض (-x) و ارتفاع ناحیه اسکن (-y) ارائه می‌دهند.

--brightness -100..100% [0]

روشنایی تصویر ثبت‌شده را کنترل می‌کند.

توضیحات بالا نشان می‌دهد که گزینه --brightness مقداری در محدوده ۱۰۰- تا ۱۰۰ درصد را انتظار دارد. مقدار داخل براکت نشان می‌دهد که مقدار فعلی گزینه ۰ درصد است.

--default-enhancements

تنظیم مقادیر پیش‌فرض برای کنترل‌های بهبود تصویر.

توضیحات بالا نشان می‌دهد که گزینه --default-enhancements هیچ مقداری دریافت نمی‌کند. باید آن را دارای تأثیری فوری در نقطه‌ای از خط فرمان دانست که در آن ظاهر می‌شود. برای مثال، از آنجا که این گزینه تنظیمات --brightness را بازنشانی می‌کند، جفت گزینه --brightness 50 --default-enhancements عملاً بی‌اثر خواهد بود.

--mode Lineart|Gray|Color [Gray]

حالت اسکن را انتخاب می‌کند (مانند lineart یا color).

توضیحات بالا نشان می‌دهد که گزینه --mode آرگومانی را می‌پذیرد که باید یکی از رشته‌های Lineart، Gray یا Color باشد. مقدار داخل براکت نشان می‌دهد که گزینه در حال حاضر روی Gray تنظیم شده است. برای راحتی، تا زمانی که نام‌ها یکتا باقی بمانند، کوتاه‌سازی مقادیر رشته‌ای مجاز است. همچنین بزرگ یا کوچک بودن حروف اهمیتی ندارد. برای مثال، تنظیم گزینه به صورت --mode col یکسان با --mode Color است.

--custom-gamma[=(yes|no)] [inactive]

تعیین می‌کند که آیا باید از جدول گامای داخلی استفاده شود یا جدول گامای سفارشی.

توضیحات بالا نشان می‌دهد که گزینه --custom-gamma یا هیچ مقداری دریافت نمی‌کند، یا رشته "yes" و یا رشته "no" را می‌پذیرد. مشخص کردن این گزینه بدون مقدار معادل تعیین "yes" است. مقدار داخل براکت نشان می‌دهد که این گزینه در حال حاضر فعال نیست؛ به این معنی که تلاش برای تنظیم این گزینه منجر به یک پیام خطا خواهد شد. مجموعه گزینه‌های در دسترس معمولاً به تنظیمات سایر گزینه‌ها بستگی دارد. برای مثال، جدول --custom-gamma ممکن است تنها زمانی فعال باشد که حالت اسکن طیف خاکستری یا رنگی درخواست شده باشد.

توجه داشته باشید که گزینه --help تنها پس از پردازش تمام گزینه‌های دیگر پردازش می‌شود. این امر مشاهده تنظیمات گزینه‌ها برای یک حالت خاص را با مشخص کردن گزینه‌های مربوط به آن حالت همراه با گزینه --help امکان‌پذیر می‌سازد. برای مثال، خط فرمان:

scanimage --help --mode color

تنظیمات گزینه‌هایی را که هنگام انتخاب حالت رنگی فعال هستند چاپ می‌کند.

--gamma-table 0..255,...

جدول اصلاح گاما. در حالت رنگی این گزینه به طور همزمان و به طور یکسان بر کانال‌های قرمز، سبز و آبی تأثیر می‌گذارد (یعنی یک جدول گامای شدت روشنایی است).

توضیحات بالا نشان می‌دهد که گزینه --gamma-table صفر یا چند مقدار در محدوده ۰ تا ۲۵۵ را انتظار دارد. برای مثال، یک مقدار معتبر برای این گزینه "3,4,5,6,7,8,9,10,11,12" خواهد بود. از آنجا که تعیین بردارهای طولانی به این شکل دشوار است، می‌توان همان را به فرم مختصر "[0]3-[9]12" بیان کرد. این بدان معناست که نخستین عنصر بردار روی ۳، عنصر نهم روی ۱۲ تنظیم می‌شود و مقادیر بین آن‌ها به صورت خطی درون‌یابی می‌شوند. البته امکان تعیین چندین قطعه خطی از این دست وجود دارد. برای مثال، "[0]3-[2]3-[6]7,[7]10-[9]6" معادل "3,3,3,4,5,6,7,10,8,6" است. برنامه gamma4scanimage می‌تواند برای تولید چنین جداول گامایی استفاده شود (برای جزئیات به gamma4scanimage(1) مراجعه کنید).

--filename <string> [/tmp/input.ppm]

نام فایل تصویری که باید بارگذاری شود.

توضیحات بالا نمونه‌ای از گزینه‌ای است که یک مقدار رشته‌ای دلخواه را می‌پذیرد (که در اینجا نام فایل است). مجدداً، مقدار داخل براکت نشان می‌دهد که گزینه در حال حاضر روی نام فایل /tmp/input.ppm تنظیم شده است.

نام پیش‌فرض دستگاه.

/etc/sane.d
این دایرکتوری شامل فایل‌های پیکربندی مختلف است. برای جزئیات، لطفاً به صفحات راهنمای فهرست‌شده در زیر مراجعه کنید.
~/.sane/pass
این فایل حاوی خطوطی به شکل زیر است:
user:password:resource

scanimage از این اطلاعات برای پاسخ‌گویی خودکار به درخواست‌های احراز هویت کاربری استفاده می‌کند. این فایل باید دارای مجوزهای 0600 یا محدودتر باشد. شما باید از این فایل در کنار گزینه --accept-md5-only استفاده کنید تا از حملات سمت سرور جلوگیری شود. مقدار resource می‌تواند شامل هر کاراکتری باشد اما به ۱۲۷ کاراکتر محدود شده است.

sane(7), gamma4scanimage(1), xscanimage(1), xcam(1), xsane(1), scanadf(1), sane-dll(5), sane-net(5), sane-"backendname"(5)

David Mosberger, Andreas Beck, Gordon Matzigkeit, Caskey Dickson, and many others. For questions and comments contact the sane-devel mailinglist (see http://www.sane-project.org/mailing-lists.html).

برای گزینه‌های برداری، خروجی راهنما در حال حاضر هیچ نشانه‌ای از تعداد عناصر یک مقدار برداری ندارد.

10 Jul 2008