\ .\" This man page was generated by the Netpbm tool 'makeman' from HTML source. .\" Do not hand-hack it! If you have bug fixes or improvements, please find .\" the corresponding HTML page on the Netpbm website, generate a patch .\" against that, and send it to the Netpbm maintainer. .TH "Pngtopam User Manual" 0 "22 July 2008" "netpbm documentation" .SH "نام (NAME)" pngtopam \- تبدیل یک تصویر PNG به یک تصویر Netpbm .UN synopsis .SH "خلاصه دستور (SYNOPSIS)" \fBpngtopam\fP [\fB-verbose\fP] [\fB-alphapam\fP | \fB-alpha\fP | \fB-mix\fP] [\fB-background\fP=\fIcolor\fP] [\fB-gamma\fP=\fIvalue\fP] [\fB-text\fP=\fIfilename\fP] [\fB-time\fP] [\fB-byrow\fP] [\fIpngfile\fP] .PP کوتاه‌ترین مخفف منحصربه‌فرد برای هر گزینه قابل قبول است. می‌توانید به جای یک خط تیره از دو خط تیره برای مشخص کردن گزینه‌ها استفاده کنید. همچنین می‌توانید به جای علامت مساوی از فاصله خالی برای جدا کردن نام گزینه از مقدار آن استفاده کنید. .UN description .SH "توضیحات (DESCRIPTION)" .PP این برنامه بخشی از .BR "Netpbm" (1)\c \& است. .PP برنامه \fBpngtopam\fP یک تصویر PNG (تصویر گرافیکی شبکه‌ای قابل حمل - Portable Network Graphics) را به عنوان ورودی خوانده و یک تصویر Netpbm به عنوان خروجی تولید می‌کند. نوع فایل خروجی به فایل ورودی بستگی دارد: اگر سیاه‌وسفید باشد، \fBpngtopam\fP یک فایل PBM ایجاد می‌کند. اگر تصویر در مقیاس خاکستری (grayscale) باشد، یک فایل PGM ایجاد می‌کند. در غیر این صورت، یک فایل PPM ایجاد می‌کند. با این استثنا که با گزینه \fB-alphapam\fP، همیشه یک فایل PAM ایجاد می‌کند. آن فایل بسته به اینکه ورودی دارای رنگ باشد یا خیر، دارای tuple type از نوع GRAYSCALE_ALPHA یا RGB_ALPHA خواهد بود. .PP برای تبدیل در جهت معکوس، از \fBpamtopng\fP یا \fBpnmtopng\fP استفاده کنید. برنامه نخست، مدرن‌تر است و می‌تواند اطلاعات شفافیت را در یک فایل PAM (همانند آنچه با \fBpngtopam -alphapam\fP تولید می‌کنید) تشخیص دهد. این برنامه تنها از ژوئن ۲۰۱۵ وجود دارد. برنامه دوم قابلیت‌های بیشتری دارد، اما احتمالاً ویژگی‌هایی نیستند که در دنیای مدرن اهمیتی داشته باشند. .UN options .SH "گزینه‌ها (OPTIONS)" .PP علاوه بر گزینه‌های مشترک بین تمامی برنامه‌های مبتنی بر libnetpbm (به‌ویژه \fB-quiet\fP؛ مشاهده کنید: .UR index.html#commonoptions گزینه‌های عمومی .UE \&)، برنامه \fBpngtopam\fP گزینه‌های خط فرمان زیر را تشخیص می‌دهد: .TP \fB-verbose\fP نمایش اطلاعات گوناگون درباره تصویر PNG ورودی و فرآیند تبدیل. .sp اگر اطلاعات بیشتری درباره تصویر PNG می‌خواهید، از \fBpngcheck\fP (که بخشی از Netpbm نیست) استفاده کنید. .TP \fB-alphapam\fP یک تصویر خروجی واحد شامل تصویر اصلی (پیش‌زمینه) و کانال شفافیت یا ماسک شفافیت تولید می‌کند. این تصویر در فرمت PAM با tuple type از نوع GRAYSCALE_ALPHA (با عمق ۲ کانال) یا RGB_ALPHA (با عمق ۴ کانال) خواهد بود. .sp تنها می‌توانید یکی از گزینه‌های \fB-alphapam\fP، \fB-alpha\fP و \fB-mix\fP را مشخص کنید. اگر هیچ‌کدام را مشخص نکنید، \fBpngtopam\fP تصویری از پیش‌زمینه ورودی تولید کرده و اطلاعات شفافیت را دور می‌ریزد. .sp این گزینه در Netpbm 10.44 (سپتامبر ۲۰۰۸) جدید بود. .TP \fB-alpha\fP کانال شفافیت یا ماسک شفافیت تصویر را در خروجی می‌نویسد. نتیجه بسته به اینکه آیا سطوح متفاوتی از شفافیت وجود دارد یا خیر، یک فایل PBM یا PGM خواهد بود. .sp برنامه \fBpngtopam\fP تصویر اصلی (پیش‌زمینه) را دور می‌ریزد. .sp تنها می‌توانید یکی از گزینه‌های \fB-alphapam\fP، \fB-alpha\fP و \fB-mix\fP را مشخص کنید. در صورت عدم مشخص کردن هیچ‌یک، \fBpngtopam\fP تصویری از پیش‌زمینه ورودی تولید کرده و اطلاعات شفافیت را دور می‌ریزد. .TP \fB-mix\fP تصویر را همراه با شفافیت یا ماسک شفافیت بر روی یک پس‌زمینه ترکیب می‌کند. رنگ پس‌زمینه توسط تکه (chunk) bKGD در فایل PNG تعیین می‌شود، مگر اینکه آن را با \fB-background\fP بازنویسی کنید. اگر فایل PNG فاقد قطعه bKGD باشد و شما \fB-background\fP را مشخص نکنید، رنگ پس‌زمینه سفید خواهد بود. .sp تنها می‌توانید یکی از گزینه‌های \fB-alphapam\fP، \fB-alpha\fP و \fB-mix\fP را مشخص کنید. با هیچ‌یک از آن‌ها، \fBpngtopam\fP تصویری از پیش‌زمینه ورودی تولید کرده و اطلاعات شفافیت را دور می‌ریزد. .TP \fB-background=\fP\fIcolor\fP این گزینه رنگ پس‌زمینه‌ای را که هنگام تعیین \fB-mix\fP تصویر با آن ترکیب می‌شود مشخص می‌کند. .sp مقدار \fIcolor\fP همان‌گونه است که برای .UR libnetpbm_image.html#colorname آرگومان تابع کتابخانه‌ای \fBpnm_parsecolor()\fP .UE توصیف شده است. .sp مثال‌ها: .IP \(bu \f(CW-background=rgb:01/ff/80\fP .IP \(bu \f(CW-background=rgbi:1/255/128\fP .sp اگر \fB-background\fP را مشخص نکنید، رنگ پس‌زمینه همان چیزی است که در تصویر PNG مشخص شده است، و اگر تصویر PNG چیزی تعیین نکرده باشد، رنگ سفید در نظر گرفته می‌شود. .sp نمی‌توانید \fB-background\fP را مشخص کنید مگر اینکه \fB-mix\fP را نیز تعیین کرده باشید. پیش از Netpbm 10.27 (مارس ۲۰۰۵)، می‌توانستید \fB-background\fP را بدون \fB-mix\fP تعیین کنید و صرفاً نادیده گرفته می‌شد. (این امر موجب یک مشکل کاربردپذیری شده بود). .TP \fB-gamma=\fP\fIvalue\fP این گزینه موجب می‌شود \fBpngtopam\fP اطلاعات گامای تصویر در فایل PNG (از قطعه gAMA) را رعایت کند. احتمالاً بر حسب یک تصادف تاریخی، \fBpngtopam\fP به‌طور پیش‌فرض این اطلاعات را نادیده می‌گیرد، با این فرض که تصویر از همان تبدیل گامایی استفاده می‌کند که تصویر Netpbm دارد؛ بنابراین اگر فایل PNG چنین تبدیلی نداشته باشد، تصویر خروجی رنگ‌های متفاوتی نسبت به آنچه فایل PNG در واقع نشان می‌دهد خواهد داشت. (با این حال، به ندرت پیش می‌آید که یک فایل PNG از تبدیل گامای متفاوتی نسبت به آنچه فرمت‌های Netpbm تعیین کرده‌اند استفاده کند، یا اگر چنین است، آن را با یک قطعه gAMA مشخص کند). .sp اما هنگامی که \fB-gamma\fP را تعیین \fIمی‌کنید\fP، یک قابلیت عجیب دیگر که احتمالاً یک خطای تاریخی است به دست می‌آورید: \fBpngtopam\fP مقدار گامای صفحه‌نمایش تعیین‌شده را در پیکسل‌های خروجی اعمال می‌کند، به طوری که نمونه‌ها در خروجی Netpbm از مشخصات فرمت Netpbm منحرف شده و مقادیر شدت خام و مناسب برای ارسال مستقیم به نمایشگر را تشکیل می‌دهند. این عملکرد اساساً صرفاً توانایی کتابخانه PNG در اعمال تصحیح گاما به پیکسل‌ها هنگام خواندن آن‌ها از فایل PNG را به کار می‌گیرد تا مقادیر مناسب برای ارسال به یک نمایشگر خاص در شرایط دید خاص تولید شود. این عملکرد عجیبی است زیرا ربطی به PNG ندارد و به این دلیل که در Netpbm، روش مرسوم برای انجام تصحیحات گامای مناسب برای ارسال به یک نمایشگر خاص تحت شرایط دید معین، استفاده از برنامه \fBpnmgamma\fP است که بر روی خروجی عادی \fBpngtopam\fP اعمال می‌شود. .sp اگر \fB-gamma\fP را مشخص کنید، اما تصویر PNG تعیین نکرده باشد که از چه تبدیل گامایی استفاده می‌کند (قطعه gAMA وجود نداشته باشد)، \fBpngtopam\fP یک تبدیل توانی ساده با گامای تصویر ۱٫۰ را فرض می‌کند. احتمالاً این مقدار، گامای واقعی تصویر نیست؛ بسیار محتمل‌تر است که ۰٫۴۵ باشد. .sp از آنجا که گامای مانیتورهای جبران‌نشده حدود ۲٫۶ است که منجر به گامای تصویر ۰٫۴۵ می‌شود، برخی موقعیت‌های معمول عبارتند از: هنگامی که گامای تصویر ۰٫۴۵ است (برای بررسی از \fB-verbose\fP استفاده کنید) و تصویر بیش از حد روشن است، سیستم شما تصحیح گاما شده است، بنابراین با "-gamma 1.0" تبدیل کنید. هنگامی که هیچ قطعه gAMA وجود ندارد یا گامای تصویر ۱٫۰ است، از ۲٫۲ برای روشن‌تر کردن تصویر و از ۰٫۴۵ برای تاریک‌تر کردن آن استفاده کنید. .sp یک نکته عجیب که باید هنگام استفاده از \fB-gamma\fP بر روی تصویری با شفافیت به آن توجه کرد: تصویر PNG تعیین می‌کند که یک رنگ خاص شفاف است، یعنی هر پیکسل در تصویر با آن رنگ، شفاف است. اما \fBpngtopam\fP این مورد را به عنوان اعمال در فضای تصحیح‌شده با گاما تفسیر می‌کند، و ممکن است دقت در آن فضا کمتر از نسخه اصلی باشد، که به این معنی است که چندین رنگ تصحیح‌نشده به یک رنگ تصحیح‌شده یکسان نگاشت می‌شوند. بنابراین تصور کنید که تصویر شامل ۳ سایه از رنگ سفید (خاکستری) است و تعیین می‌کند که یکی از آن‌ها شفاف است. پس از تصحیح گاما، آن سه سایه غیرقابل تشخیص می‌شوند، بنابراین \fBpngtopam\fP پیکسل‌های هر سه سایه را شفاف در نظر می‌گیرد. .TP \fB-text=\fP\fIfile\fP قطعات tEXt و zTXt را با فرمتی که در راهنمای کاربری \fBpnmtopng\fP توضیح داده شده در یک فایل می‌نویسد. این قطعات حاوی یادداشت‌ها یا توضیحات متنی هستند. .TP \fB-time\fP قطعه tIME را در خروجی خطای استاندارد (stderr) چاپ می‌کند. .TP \fB-byrow\fP این گزینه می‌تواند باعث شود \fBpngtopam\fP سریع‌تر یا در محیط‌هایی اجرا شود که در غیر این صورت با شکست مواجه می‌شد. .sp برنامه \fBpngtopam\fP دو روش برای انجام تبدیل از PNG به PAM دارد که به ترتیب از دو قابلیت کتابخانه PNG استفاده می‌کنند: .TP Whole Image کل تصویر را به یکباره با استفاده از \fBpng_read_image()\fP در حافظه رمزگشایی می‌کند، سپس به PAM تبدیل کرده و سطر به سطر خروجی می‌دهد. .TP Row By Row با استفاده از \fBpng_read_row()\fP یک سطر را در هر لحظه می‌خواند، تبدیل می‌کند و در خروجی می‌نویسد. .sp روش Whole Image عموماً ترجیح داده می‌شود زیرا کتابخانه PNG بخش بیشتری از کار را انجام می‌دهد، که به این معنی است که امکانات فرمت PNG بیشتری را در حال حاضر و در آینده درک می‌کند. همچنین، اگر فایل PNG درهم‌بافته (interlaced) باشد، \fBpngtopam\fP نمی‌داند چگونه سطرها را به ترتیب درست سرهم کند. .sp روش Row By Row حافظه بسیار کمتری مصرف می‌کند، که به این معنی است که با تصاویر بزرگ، می‌تواند در محیط‌هایی اجرا شود که Whole Image قادر به اجرا نیست و همچنین ممکن است سریع‌تر اجرا شود. و از آنجا که کد بومی Netpbm بخش بیشتری از کار را انجام می‌دهد، ممکن است انعطاف‌پذیرتر باشد یا حداقل اگر مشکلی در PNG وجود داشته باشد، اطلاعات تشخیصی بهتری ارائه دهد. .sp کد بومی Netpbm ممکن است کاری را به درستی انجام دهد که کتابخانه PNG به اشتباه انجام می‌دهد، یا برعکس. .sp در Netpbm، ما کارایی عملکردی را بر سرعت و کارایی ترجیح می‌دهیم، بنابراین به صورت پیش‌فرض \fBpngtopam\fP از روش Whole Image استفاده می‌کند. اگر بهبود سرعت یا نیازهای منابع مد نظرتان است، می‌توانید Row By Row را با \fB-byrow\fP انتخاب کنید. .sp گزینه \fB-byrow\fP در Netpbm 10.54 (مارس ۲۰۱۱) جدید بود. .TP \fB-orientraw\fP یک جریان TIFF حاوی داده‌های شطرنجی (raster) است که می‌تواند به روش‌های مختلفی در جریان چیده شود. معمولاً این چیدمان به صورت سطری است، به طوری که سطر بالا اول قرار می‌گیرد و پیکسل‌ها از چپ به راست در هر سطر هستند، اما جهت‌گیری‌های بسیار دیگری نیز ممکن است. .sp جهت‌گیری رایج، مشابه همان جهتی است که فرمت‌های Netpbm استفاده می‌کنند، بنابراین \fBtifftopnm\fP زمانی که شطرنجی TIFF به آن صورت جهت‌گیری شده باشد می‌تواند وظایف خود را بسیار کارآمد انجام دهد. .sp اما اگر شطرنجی TIFF به هر روش دیگری جهت‌گیری شده باشد، تبدیل آن به فرمت Netpbm می‌تواند پردازش قابل‌توجهی برای \fBtifftopnm\fP به همراه داشته باشد. .UN seealso .SH "همچنین ببینید (SEE ALSO)" .BR "pamtopng" (1)\c \&, .BR "pnmtopng" (1)\c \&, .BR "pngtopnm" (1)\c \&, \fBptot\fP, .BR "pnmgamma" (1)\c \&, .BR "pnm" (1)\c \& .PP برای اطلاعات درباره فرمت PNG، ببینید: .UR http://schaik.com/png http://schaik.com/png .UE \&. .UN note .SH "نکته (NOTE)" .PP یک تصویر PNG حاوی اطلاعات زیادی است که نمی‌توان در فرمت‌های Netpbm نمایش داد. بنابراین، هنگام تبدیل به فرمتی دیگر با دستور "pngtopam | pnmtoxxx" اطلاعات را از دست می‌دهید. اگر یک مبدل اختصاصی وجود دارد که مستقیماً به فرمت دیگر تبدیل می‌کند، مثلاً \fBptot\fP برای تبدیل از PNG به TIFF، با استفاده از آن به نتایج بهتری دست خواهید یافت. .UN limitations .SH "محدودیت‌ها (LIMITATIONS)" .PP می‌توانست گزینه‌ای برای گنجاندن تکه‌های توضیحات PNG در تصویر خروجی به عنوان توضیحات PNM وجود داشته باشد، به جای اینکه آن‌ها را در یک فایل جداگانه قرار دهد. .PP این برنامه با اندکی بهینه‌سازی کد می‌توانست بسیار سریع‌تر باشد. همانند هر برنامه دیگر Netpbm، سرعت همیشه پس از توسعه سریع کنونی و آتی قرار می‌گیرد. .UN history .SH "تاریخچه (HISTORY)" .PP برنامه \fBpngtopam\fP در Netpbm 10.44 به عنوان جایگزینی برای \fBpngtopnm\fP معرفی شد. بهبود اصلی نسبت به \fBpngtopnm\fP این بود که می‌توانست یک تصویر PAM همراه با یک کانال شفافیت تولید کند، در حالی که با \fBpngtopnm\fP باید کانال شفافیت را به عنوان یک فایل جداگانه در یک اجرای مجزا استخراج می‌کردید. .PP برنامه \fBpngtopnm\fP در Netpbm 8.1 (مارس ۲۰۰۰) جدید بود؛ نخستین تغییر بزرگ بسته در دوره نوزایی Netpbm. این برنامه و \fBpnmtopng\fP صرفاً از .BR "بسته \fBpnmtopng\fP" (1)\c \& توسط Greg Roelofs کپی شده بودند. آن‌ها بر اساس برنامه‌های مرجع ساده‌تری توسط Alexander Lehmann و Willem van Schaik ساخته شده و همراه با کتابخانه PNG آن‌ها توزیع شده بودند. .PP تقریباً تمام کد از زمانی که از بسته \fBpnmtopng\fP کپی شده بود تغییر کرده است که بیشتر آن فقط برای بهبود قابلیت نگهداری بوده است. .UN authors .SH "نویسندگان (AUTHORS)" حق نشر \(co ۱۹۹۵-۱۹۹۷ متعلق به Alexander Lehmann و Willem van Schaik است. .SH "منبع سند (DOCUMENT SOURCE)" این صفحه راهنما توسط ابزار Netpbm با نام 'makeman' از منبع HTML تولید شده است. مستندات اصلی در آدرس زیر قرار دارد: .IP .B http://netpbm.sourceforge.net/doc/pngtopam.html .PP