\ .\" 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 "Pamfix User Manual" 0 "06 March 2014" "netpbm documentation" .SH "نام (NAME)" pamfix \- ترمیم یک تصویر Netpbm دارای انواع خرابی‌ها .UN synopsis .SH "خلاصه دستور (SYNOPSIS)" \fBpamfix\fP [\fB-truncate\fP] [\fB-changemaxval\fP] [\fB-clip\fP] [\fB-verbose\fP] [\fInetpbmfile\fP] .PP کوتاه‌ترین پیشوند یکتای هر گزینه پذیرفته می‌شود. می‌توانید به جای یک خط تیره از دو خط تیره برای مشخص کردن گزینه‌ها استفاده کنید. همچنین می‌توانید به جای علامت مساوی از نویسه فاصله (white space) برای جدا کردن نام گزینه از مقدار آن استفاده نمایید. .UN description .SH "توضیحات (DESCRIPTION)" .PP این برنامه بخشی از .BR "Netpbm" (1)\c \& است. .PP برنامه \fBpamfix\fP جریانی را می‌خواند که بیشتر بخش‌های آن یک تصویر Netpbm است اما ممکن است دچار انواع خاصی از خرابی‌ها باشد، و تصویری معتبر از Netpbm تولید می‌کند که بیشتر اطلاعات نسخهٔ اصلی را حفظ کرده است. به‌ویژه، Netpbm جریان‌هایی را نجات می‌دهد که بریده (کوتاه) شده‌اند و یا حاوی مقادیر نمونه به‌طور غیرمجاز بزرگ هستند. .PP برنامه \fBpamfix\fP در یک جریان حاوی چند تصویر، تنها اولین تصویر را بررسی می‌کند. .UN truncatedstream .SS "جریان کوتاه‌شده (Truncated Stream)" .PP این جریانی است که بخش پایانی آن مفقود است. Netpbm این مشکل را با ایجاد یک تصویر خروجی که صرفاً سطرهای کمتری دارد تصحیح می‌کند. .PP این نوع ترمیم را با گزینهٔ \fB-truncate\fP انتخاب می‌کنید. .PP سرآیند (header) یک تصویر Netpbm مشخص می‌کند که تصویر چقدر باید بزرگ باشد (فایل باید شامل چه تعداد بایت باشد). اگر فایل در واقع کوچک‌تر از آن مقدار باشد، هر برنامهٔ Netpbm که تلاش کند تصویر را بخواند با پیام خطایی مبنی بر اینکه نتوانسته کل فایل را بخواند، با شکست مواجه می‌شود. داده‌ها در فایل به ترتیب سطر، از بالا به پایین چیده شده‌اند، و متداول‌ترین دلیل کوچک‌تر بودن فایل نسبت به آنچه در سرآیند قید شده این است که سطرهای انتهایی مفقود شده‌اند. بنابراین \fBpamfix\fP فرض را بر این می‌گذارد و تصویر جدیدی تنها با سطرهایی که قابل خواندن هستند تولید می‌کند (از نظر فنی، این یعنی سرآیند خروجی تعداد سطرهای کمتری را نشان می‌دهد و هرگونه سطر آخرِ ناقص را حذف می‌کند). .PP رایج‌ترین دلیل کوچک بودن یک فایل Netpbm این است که چیزی اجرای برنامه‌ای که آن را تولید می‌کرده پیش از اتمام نوشتن فایل متوقف ساخته است؛ مثلاً داده‌های ورودی خود برنامه تمام شده، یا با یک باگ مواجه شده، یا فضای ذخیره‌سازی برای نوشتن خروجی پر شده است. .PP مشکل دیگری که \fBpamfix\fP با آن سر و کار دارد زمانی است که فایل در واقع بیش از حد کوچک نیست، اما به دلیل یک خطای سیستمی، یک بایت در میانهٔ آن قابل خواندن نیست (مثلاً خرابی دیسک ذخیره‌سازی). برنامهٔ \fBpamfix\fP ورودی را به صورت ترتیبی می‌خواند تا زمانی که به هر دلیلی نتواند ادامه دهد. بنابراین با چنین تصویری مانند یک تصویر کوتاه‌شده رفتار کرده و تمام داده‌های پس از بایت خوانده‌نشده را نادیده می‌گیرد. .PP اما آگاه باشید که گاهی یک فایل تصویری به دلیل وجود باگ در برنامهٔ تولیدکننده بیش از حد کوچک است، و در این حالت موضوع صرفاً نبودن انتهای تصویر نیست؛ بنابراین \fBpamfix\fP صرفاً یک تصویر Netpbm معتبر تولید می‌کند که حاوی تصویری بی‌معنی (garbage) است. .PP اگر می‌خواهید یک فایل تصویری را بررسی کنید تا ببینید آیا به دلیل کوچک بودن خراب است یا خیر، از \fBpamfile --allimages\fP استفاده کنید. اگر فایل بیش از حد کوچک باشد، این دستور با یک پیام خطا متوقف می‌شود. .PP اگر می‌خواهید بخش انتهایی یک تصویر معتبر Netpbm را برش دهید، از \fBpamcut\fP استفاده کنید. .UN excessivesample .SS "مقدار نمونه بیش از حد مجاز (Excessive Sample Value)" .PP این جریانی است که حاوی یک مقدار نمونهٔ ادعایی بالاتر از مقدار بیشینه (maxval) تصویر است. .PP سرآیند یک تصویر Netpbm مقدار بیشینه (maxval) تصویر را مشخص می‌کند، مقداری که به تمام مقادیر نمونه در تصویر شطرنجی معنا می‌بخشد. مقادیر نمونه کسری از maxval را نشان می‌دهند، بنابراین یک مقدار نمونه که بزرگ‌تر از maxval باشد بی‌معنی خواهد بود. .PP یک برنامهٔ معمولی Netpbm اگر ورودی‌ای دریافت کند که در جایگاه یک مقدار نمونه، مقداری بزرگ‌تر از maxval داشته باشد، متوقف می‌شود. .PP برنامهٔ \fBpamfix\fP سه روش برای نجات دادن چنین جریانی دارد: .IP \(bu برش به اندازهٔ maxval (کلیپ کردن). این روش را با \fB-clip\fP درخواست دهید. .IP \(bu افزایش maxval، که بدین ترتیب کسر نشان‌داده‌شده توسط هر نمونه در تصویر کاهش می‌یابد. این روش را با \fB-changemaxval\fP درخواست دهید. .IP \(bu بریدن (کوتاه کردن) تصویر در نخستین مقدار نمونهٔ نامعتبر. این روش را با \fB-truncate\fP و بدون استفاده از \fB-clip\fP یا \fB-changemaxval\fP درخواست دهید. .PP شما نمی‌توانید هر دو گزینهٔ \fB-clip\fP و \fB-changemaxval\fP را با هم مشخص کنید. .UN options .SH "گزینه‌ها (OPTIONS)" .PP علاوه بر گزینه‌های مشترک بین تمام برنامه‌های مبتنی بر libnetpbm (به‌ویژه \fB-quiet\fP، به .UR index.html#commonoptions گزینه‌های عمومی (Common Options) .UE \& مراجعه کنید)، \fBpamfix\fP گزینه‌های خط فرمان زیر را می‌شناسد: .TP \fB-truncate\fP ایجاد یک تصویر خروجی کوتاه‌شده از تمام سطرهای ورودی معتبری که قابل خواندن بوده‌اند. .TP \fB-changemaxval\fP افزایش مقدار بیشینه (maxval) برای تطبیق با مقادیر پیکسلی که از مقدار maxval ذکرشده در سرآیند فایل ورودی بیشتر هستند. .TP \fB-clip\fP برش زدن (محدود کردن) تمام مقادیر پیکسلی که از مقدار maxval قیدشده در سرآیند فایل ورودی فراتر می‌روند. .TP \fB-verbose\fP گزارش جزئیات تبدیل و پردازش در خروجی خطای استاندارد. .UN seealso .SH "همچنین ببینید (SEE ALSO)" .BR "pnm" (1)\c \&، .BR "pam" (1)\c \&، .BR "pamcut" (1)\c \&، .BR "pamfile" (1)\c \&، .BR "pamvalidate" (1)\c \& .UN history .SH "تاریخچه (HISTORY)" .PP برنامه \fBpamfix\fP در Netpbm نسخهٔ 10.66 (مارس 2014) معرفی شد؛ اما از دل برنامهٔ \fBpamfixtrunc\fP بیرون آمد که در Netpbm نسخهٔ 10.38 (مارس 2007) جدید بود و تنها ترمیم تصاویر بریده‌شده را انجام می‌داد (و برای مقادیر نمونهٔ نامعتبر صرفاً آن‌ها را به خروجی منتقل می‌کرد و یک تصویر نامعتبر Netpbm تولید می‌نمود). .SH "منبع مستندات (DOCUMENT SOURCE)" این صفحه راهنما توسط ابزار Netpbm تحت عنوان 'makeman' از منبع HTML تولید شده است. مستندات اصلی در آدرس زیر قرار دارد: .IP .B http://netpbm.sourceforge.net/doc/pamfix.html .PP