Xwdtopnm User Manual(0) Xwdtopnm User Manual(0)

xwdtopnm - تبدیل فایل روگرفت پنجره X11 یا X10 به تصویر PNM

xwdtopnm [-verbose] [-headerdump] [xwdfile]

این برنامه بخشی از Netpbm(1) است.

دستور xwdtopnm یک فایل روگرفت پنجره X11 یا X10 را به عنوان ورودی خوانده و یک تصویر PNM در خروجی تولید می‌کند. نوع تصویر خروجی به فایل ورودی بستگی دارد - اگر تصویر ورودی سیاه و سفید باشد، خروجی PBM خواهد بود؛ اگر در مقیاس خاکستری باشد، خروجی PGM است؛ در غیر این صورت خروجی PPM خواهد بود. برنامه مشخص می‌کند که در حال نوشتن کدام نوع است.

با استفاده از این برنامه می‌توانید هر آنچه را که بر روی نمایشگر یک ایستگاه کاری X قابل مشاهده است، به یک تصویر PNM تبدیل کنید. کافی است محتوای مد نظر خود را نمایش دهید، برنامه xwd را برای تصویربرداری از پنجره اجرا کنید، آن را به xwdtopnm ارسال نمایید، و سپس با استفاده از pamcut بخش دلخواه خود را برش دهید.

توجه داشته باشید که یک تصویر XWD با رنگ کاذب (pseudocolor) (که معمولاً از تهیه روگرفت از پنجره‌های رنگ کاذب X به دست می‌آید) دارای مقدار maxval برابر با ۶۵۵۳۵ است؛ این یعنی فایل PNM تولیدشده توسط xwdtopnm نیز دارای maxval برابر با ۶۵۵۳۵ خواهد بود. بسیاری از برنامه‌های پردازش تصویر قدیمی‌تر (که بخشی از بسته Netpbm نبوده و از کتابخانه برنامه‌نویسی Netpbm استفاده نمی‌کنند) نحوه کار با تصاویر PNM با maxval بزرگتر از ۲۵۵ را پشتیبانی نمی‌کنند (زیرا در تصویر برای هر نمونه به جای یک بایت، دو بایت اختصاص یافته است). بنابراین شاید لازم باشد خروجی xwdtopnm را پیش از ارسال به این برنامه‌های قدیمی، از طریق pamdepth تبدیل کنید.

برنامه xwdtopnm توانایی تبدیل تمامی انواع تصاویر XWD را ندارد (به این معنا که نمی‌تواند تصویر XWD تولیدشده از هر نوع پیکربندی نمایشگر X را تبدیل کند). به‌ویژه، قادر به تبدیل تصاویری با بیش از ۲۴ بیت در هر پیکسل نیست.

علاوه بر گزینه‌های مشترک میان تمامی برنامه‌های مبتنی بر libnetpbm (به‌ویژه -quiet، رجوع کنید به
گزینه‌های مشترک
)، دستور xwdtopnm گزینه‌های خط فرمان زیر را می‌شناسد:

این گزینه باعث می‌شود xwdtopnm اطلاعات مفیدی را درباره تصویر ورودی و فرایند تبدیل نمایش دهد.
این گزینه باعث می‌شود xwdtopnm محتوای سرایند (header) مربوط به X11 را نمایش دهد. در صورتی که ورودی از نوع X10 باشد، این گزینه تأثیری ندارد. این گزینه در Netpbm 10.26 (دسامبر ۲۰۰۴) اضافه شد.

برنامه xwdtopnm گاهی اوقات خروجی‌هایی با maxval بزرگتر از ۲۵۵ تولید می‌کند؛ این بدان معناست که بیشینه مقدار یک نمونه (یک مقدار شدت نور، مانند مؤلفه قرمز یک پیکسل) بیشتر از ۲۵۵ است و در نتیجه برای نمایش هر نمونه ۲ بایت مصرف می‌شود. این وضعیت می‌تواند مشکل‌آفرین باشد، چرا که برخی برنامه‌ها بایت‌ها را در ترتیبی متفاوت با مشخصات قالب‌های Netpbm (که xwdtopnm بر اساس آن خروجی می‌دهد) انتظار دارند، و این امر باعث می‌شود رنگ‌ها را به کلی نادرست مشاهده کنند. برنامه xv یکی از این برنامه‌ها است.

در صورتی که این مورد مشکل‌ساز شود (برای نمونه زمانی که بخواهید خروجی xwdtopnm را در برنامه xv ببینید)، دو راهکار برای حل آن وجود دارد:

  • خروجی را از طریق pamendian عبور دهید تا ترتیب بایت مورد نظر برنامه را تولید کند.
  • خروجی را از طریق pamdepth پردازش کنید تا maxval به مقداری کمتر از ۲۵۶ کاهش یابد و در هر نمونه فقط یک بایت مصرف شود.

اغلب اوقات، دلیل فنی خاصی برای استفاده از maxval بزرگتر از ۲۵۵ وجود ندارد. این حالت به این دلیل رخ می‌دهد که در XWD (برخلاف PNM)، هر یک از مؤلفه‌های رنگی یک پیکسل می‌توانند وضوح و تفکیک‌پذیری متفاوتی داشته باشند؛ به عنوان مثال ۵ بیت برای آبی (maxval برابر ۳۱)، ۵ بیت برای قرمز (maxval برابر ۳۱) و ۶ بیت برای سبز (maxval برابر ۶۳) که در کل ۱۶ بیت برای هر پیکسل می‌شود. جهت بازتولید رنگ‌ها با بیشترین دقت ممکن، xwdtopnm ناچار است از مقدار maxval بزرگی استفاده نماید. در این مثال، از maxval برابر با ۳۱ * ۶۳ = ۱۹۵۳ استفاده می‌شود که نیازمند دو بایت به ازای هر نمونه و در مجموع ۴۸ بیت برای هر پیکسل خواهد بود.

به دلیل آن که این مسئله یکی از مشکلات رایج و دردسرساز در زمان استفاده از xwdtopnm است، برنامه هرگاه خروجی با نمونه‌های دو بایتی تولید کند، یک پیام هشدار صادر می‌نماید. می‌توانید این هشدار را با استفاده از گزینه عمومی -quiet (گزینه‌های مشترک) غیرفعال کنید. این هشدار در Netpbm 10.46 (مارس ۲۰۰۹) معرفی شد.

pnmtoxwd(1)، pamendian(1)، pamdepth(1)، pnm(1)، صفحه راهنمای xwd

حق نشر (C) ۱۹۸۹، ۱۹۹۱ متعلق به Jef Poskanzer.

این صفحه راهنما از کد منبع HTML و به وسیله ابزار makeman متعلق به Netpbm تولید شده است. مستندات اصلی در آدرس زیر قرار دارد:

http://netpbm.sourceforge.net/doc/xwdtopnm.html
08 January 2010 netpbm documentation