\ .\" 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 "Pamcomp User Manual" 0 "13 August 2011" "netpbm documentation" .PP .SH "نام (NAME)" pamcomp \- ترکیب (روی هم انداختن) دو تصویر Netpbm با یکدیگر .UN synopsis .SH "خلاصه دستور (SYNOPSIS)" \fBpamcomp\fP [\fB-align=\fP{\fBleft\fP | \fBcenter\fP | \fBright\fP | \fBbeyondleft\fP | \fBbeyondright\fP}] [\fB-valign=\fP{\fBtop\fP | \fBmiddle\fP | \fBbottom\fP| \fBabove\fP | \fBbelow\fP}] [\fB-xoff=\fP\fIX\fP] [\fB-yoff=\fP\fIY\fP] [\fB-alpha=\fP\fIalpha-pgmfile\fP] [\fB-invert\fP] [\fB-opacity=\fP\fIopacity\fP] [\fB-mixtransparency\fP] [\fB-linear\fP] \fIoverlay_file\fP [\fIunderlying_file\fP [\fIoutput_file\fP]] .PP حداقل مخفف یکتای هر گزینه قابل قبول است. می‌توانید به جای یک خط تیره از دو خط تیره برای مشخص کردن گزینه‌ها استفاده کنید. همچنین می‌توانید به جای علامت مساوی، از فاصله خالی برای جدا کردن نام گزینه از مقدار آن استفاده نمایید. .UN description .SH "توضیحات (DESCRIPTION)" .PP این برنامه بخشی از .BR "Netpbm" (1)\c \& است. برنامه \fBpamcomp\fP دو تصویر را می‌خواند و تصویری ترکیبی تولید می‌کند که در آن یکی از تصاویر بر روی دیگری قرار گرفته است (احتمالاً همراه با نیمه‌شفافی). تصاویر نیازی نیست که هم‌اندازه باشند. فایل‌های ورودی و خروجی در قالب Netpbm هستند. .PP در ساده‌ترین کاربرد، \fBpamcomp\fP تصویر موجود در فایل \fIoverlay_file\fP را روی تصویر موجود در فایل \fIunderlying_file\fP قرار می‌دهد و بخشی از \fIunderlying_file\fP را که زیر آن قرار می‌گیرد، مسدود (پوشانده) می‌کند. .PP اگر گزینه \fB-alpha\fP را اضافه کنید، \fBpamcomp\fP از تصویر موجود در فایل \fIalpha-pgmfile\fP به عنوان یک ماسک شفافیت (transparency mask) استفاده می‌کند، بدین معنا که میزان شفافیت هر نقطه از تصویر رویی را تعیین می‌نماید. ماسک شفافیت باید ابعادی مشابه تصویر رویی داشته باشد. در نقاطی که ماسک شفافیت تصویر رویی را کدر (opaque) تعریف کند، خروجی ترکیبی فقط محتوای تصویر رویی را شامل می‌شود؛ تصویر زیرین کاملاً پوشانده می‌شود. در نقاطی که ماسک شفافیت تصویر رویی را شفاف (transparent) تعریف کند، خروجی ترکیبی هیچ بخشی از تصویر رویی را شامل نمی‌شود و تصویر زیرین به‌طور کامل نمایان می‌گردد. در نقاطی که ماسک شفافیت مقداری بین کدر و شفاف (نیمه‌شفافی یا translucence) نشان دهد، تصویر ترکیبی شامل مخلوطی از تصویر رویی و تصویر زیرین خواهد بود و سطح نیمه‌شفافی مشخص می‌کند چه مقداری از هر کدام ترکیب شود. .PP ماسک شفافیت یک فایل PGM است که در آن پیکسل سفید نمایانگر کدر بودن و پیکسل سیاه نمایانگر شفاف بودن است. هر مقداری بین این دو، نیمه‌شفاف است. (مانند هر برنامه Netpbm، \fBpamcomp\fP با فایل PBM طوری رفتار می‌کند که گویی PGM است). .PP اگر تصویر رویی یک تصویر PAM با نوع تاپل RGB_ALPHA یا GRAYSCALE_ALPHA باشد، خود تصویر رویی شامل اطلاعات شفافیت است و \fBpamcomp\fP از آن به همان روش ماسک شفافیت توصیف‌شده در بالا استفاده می‌کند. اگر هم یک تصویر رویی حاوی اطلاعات شفافیت و هم یک ماسک شفافیت ارائه دهید، \fBpamcomp\fP دو مقدار کدری را در یکدیگر ضرب می‌کند تا کدری نهایی پیکسل رویی را به دست آورد. .PP قبل از Netpbm نسخه 10.25 (اکتبر ۲۰۰۴)، برنامه \fBpamcomp\fP اطلاعات شفافیت موجود در یک تصویر PAM را شناسایی نمی‌کرد و فقط آن را نادیده می‌گرفت. بنابراین کاربران مجبور بودند برای داشتن یک تصویر روییِ غیرکدر، ماسک‌های شفافیت مناسب ایجاد کنند. برخی از برنامه‌های Netpbm که قالب‌های تصویری حاوی اطلاعات شفافیت را تبدیل می‌کنند، قادر به ایجاد خروجی PAM با نوع RGB_ALPHA یا GRAYSCALE_ALPHA نیستند؛ بنابراین باید از روش قدیمی استفاده کنید: اطلاعات شفافیت را از تصویر اصلی در یک ماسک شفافیت جداگانه استخراج کرده و از آن به عنوان ورودی برای \fBpamcomp\fP استفاده نمایید. .PP تصویر خروجی همیشه دارای ابعادی مشابه تصویر زیرین است. \fBpamcomp\fP تنها از بخش‌هایی از تصویر رویی استفاده می‌کند که در محدوده تصویر زیرین جای می‌گیرند. .PP تصویر خروجی یک تصویر PAM است. تاپل‌های آن رنگی، مقیاس خاکستری، یا سیاه و سفید هستند؛ هر کدام که قالب «بالاتر» میان دو تصویر ورودی باشد. مقدار maxval خروجی برابر با کوچک‌ترین مضرب مشترک (ک.م.م) مقادیر maxval تصاویر ورودی است، حداکثر تا بیشترین مقدار ممکن maxval در PAM یعنی ۶۵۵۳۵. .PP خروجی فقط در صورتی دارای کانال کدری (opacity channel) خواهد بود که تصویر زیرین دارای آن باشد، و در آن حالت نیز مقادیر کدری همان‌گونه خواهد بود که ذیل گزینه \fB-mixtransparency\fP توضیح داده شده است. پیش از Netpbm نسخه 10.56 (سپتامبر ۲۰۱۱)، خروجی هرگز کانال کدری نداشت. .PP برای تعیین محل قرارگیری تصویر رویی بر روی تصویر زیرین، از گزینه‌های \fB-align\fP، \fB-valign\fP، \fB-xoff\fP و \fB-yoff\fP استفاده کنید. بدون این گزینه‌ها، موقعیت افقی پیش‌فرض چسبیده به چپ و موقعیت عمودی پیش‌فرض چسبیده به بالا است. .PP تصویر رویی در موقعیتی که مشخص می‌کنید نیازی نیست به طور کامل در محدوده تصویر زیرین جای بگیرد. \fBpamcomp\fP تنها از بخش‌هایی از تصویر رویی استفاده می‌کند که روی تصویر زیرین قرار می‌گیرند. این امکان وجود دارد که موقعیت را به گونه‌ای مشخص کنید که \fIهیچ\fP بخشی از تصویر رویی روی تصویر زیرین قرار نگیرد (یعنی تصویر رویی خارج از کادر باشد). در این صورت، \fBpamcomp\fP یک هشدار صادر می‌کند. .PP تصویر رویی و تصویر زیرین ممکن است قالب‌های متفاوتی داشته باشند (مثلاً انداختن یک تصویر متنی PBM روی یک تصویر تمام‌رنگی PPM) و مقادیر maxval متفاوتی داشته باشند. تصویر خروجی دارای قالب عمومی‌تر میان دو قالب ورودی خواهد بود و مقدار maxval آن برابر با کوچک‌ترین مضرب مشترک دو مقدار maxval است (یا بیشترین maxval مجاز در آن قالب، در صورتی که ک.م.م از آن بیشتر شود). .UN arguments .SH "آرگومان‌ها (ARGUMENTS)" .PP آرگومان \fIoverlay_file\fP نام فایلی است که حاوی تصویر رویی است، در حالی که \fIunderlying_file\fP نام فایلی است که حاوی تصویر زیرین است. برای هر یک، می‌توانید '-' را برای اشاره به ورودی استاندارد مشخص کنید، و \fIunderlying_file\fP به‌طور پیش‌فرض ورودی استاندارد است. دقت کنید که ورودی استاندارد را برای هر دو (یا به عنوان پیش‌فرض هر دو) مشخص نکنید. .PP توجه داشته باشید که ممکن است یک فایل ورودی سوم نیز وجود داشته باشد که با گزینه \fB-alpha\fP مشخص می‌شود. .PP آرگومان \fIoutput_file\fP نام فایلی است که \fBpamcomp\fP خروجی را در آن می‌نویسد و ابتدا آن را ایجاد یا کوتاه (truncate) می‌کند. می‌توانید '-' را برای اشاره به خروجی استاندارد مشخص کنید، که در این حالت \fBpamcomp\fP آن را کوتاه نمی‌کند. توجه داشته باشید که داشتن آرگومان فایل خروجی، به دلیل یک پیشامد تاریخی، در میان برنامه‌های Netpbm برای \fBpamcomp\fP نامعمول است؛ برنامه‌های Netpbm معمولاً فقط در خروجی استاندارد می‌نویسند. .UN options .SH "گزینه‌ها (OPTIONS)" .PP علاوه بر گزینه‌های مشترک در تمام برنامه‌های مبتنی بر libnetpbm (به‌ویژه \fB-quiet\fP، به .UR index.html#commonoptions گزینه‌های عمومی (Common Options) .UE \& مراجعه کنید)، \fBpamcomp\fP گزینه‌های خط فرمان زیر را می‌شناسد: .TP \fB-align=\fP\fIalignment\fP این گزینه موقعیت افقی پایه تصویر رویی را نسبت به تصویر زیرین، با نحوی مشابه HTML انتخاب می‌کند. \fBleft\fP به معنای چسبیده به چپ، \fBcenter\fP به معنای وسط‌چین، و \fBright\fP به معنای چسبیده به راست است. .sp گزینه \fB-xoff\fP این موقعیت را تغییر می‌دهد. مقدار \fBbeyondleft\fP به معنای درست بیرون از کادر در سمت چپ است -- لبه راست تصویر رویی مماس بر لبه چپ تصویر زیرین قرار می‌گیرد. مقدار \fBbeyondright\fP به معنای درست بیرون از کادر در سمت راست است. این ترازبندی‌ها تنها در صورتی مفید هستند که گزینه \fB-xoff\fP را نیز اضافه کنید. این دو مقدار در Netpbm نسخه 10.10 (اکتبر ۲۰۰۲) اضافه شدند. .sp پیش‌فرض \fBleft\fP است. .TP \fB-valign=\fP\fIalignment\fP این گزینه موقعیت عمودی پایه تصویر رویی را نسبت به تصویر زیرین، با نحوی مشابه HTML انتخاب می‌کند. \fBtop\fP به معنای چسبیده به بالا، \fBmiddle\fP به معنای میانه‌چین، و \fBbottom\fP به معنای چسبیده به پایین است. .sp گزینه \fB-yoff\fP این موقعیت را تغییر می‌دهد. مقدار \fBabove\fP به معنای درست بیرون از کادر در بالا است -- لبه پایین تصویر رویی مماس بر لبه بالای تصویر زیرین قرار می‌گیرد. مقدار \fBbelow\fP به معنای درست بیرون از کادر در پایین است. این ترازبندی‌ها تنها در صورتی مفید هستند که گزینه \fB-yoff\fP را نیز اضافه کنید. این دو مقدار در Netpbm نسخه 10.10 (اکتبر ۲۰۰۲) اضافه شدند. .sp پیش‌فرض \fBtop\fP است. .TP \fB-xoff=\fP\fIx\fP این گزینه موقعیت افقی تصویر رویی را نسبت به تصویر زیرین که توسط گزینه \fB-align\fP انتخاب شده است تغییر می‌دهد. \fBpamcomp\fP تصویر رویی را از آن موقعیت پایه به اندازه \fIx\fP پیکسل به سمت راست جابه‌جا می‌کند. \fIx\fP می‌تواند منفی باشد تا جابه‌جایی به سمت چپ را نشان دهد. .sp تصویر رویی نیازی نیست به طور کامل (یا اصلاً) روی تصویر زیرین قرار گیرد. \fBpamcomp\fP تنها از بخش‌هایی استفاده می‌کند که بر روی تصویر زیرین قرار می‌گیرند. .sp پیش از Netpbm نسخه 10.10 (اکتبر ۲۰۰۲)، گزینه \fB-xoff\fP با \fB-align\fP ناسازگار (مانعة‌الجمع) بود و همیشه از لبه چپ اندازه گرفته می‌شد. .TP \fB-yoff=\fP\fIy\fP این گزینه موقعیت عمودی تصویر رویی را نسبت به تصویر زیرین که توسط گزینه \fB-valign\fP انتخاب شده است تغییر می‌دهد. \fBpamcomp\fP تصویر رویی را از آن موقعیت پایه به اندازه \fIy\fP پیکسل به سمت پایین جابه‌جا می‌کند. \fIy\fP می‌تواند منفی باشد تا جابه‌جایی به سمت بالا را نشان دهد. .sp تصویر رویی نیازی نیست به طور کامل (یا اصلاً) روی تصویر زیرین قرار گیرد. \fBpamcomp\fP تنها از بخش‌هایی استفاده می‌کند که بر روی تصویر زیرین قرار می‌گیرند. .sp پیش از Netpbm نسخه 10.10 (اکتبر ۲۰۰۲)، گزینه \fB-yoff\fP با \fB-valign\fP ناسازگار (مانعة‌الجمع) بود و همیشه از لبه بالا اندازه گرفته می‌شد. .TP \fB-alpha=\fP\fIalpha-pgmfile\fP این گزینه نام فایلی را مشخص می‌کند که حاوی ماسک شفافیت است. اگر این گزینه را مشخص نکنید، هیچ ماسک شفافیتی وجود نخواهد داشت که معادل مشخص کردن کدر بودن کامل در همه نقاط توسط یک ماسک شفافیت است. .sp می‌توانید \fB-\fP را به عنوان مقدار این گزینه مشخص کنید تا ماسک شفافیت از ورودی استاندارد خوانده شود. در صورت انجام این کار، ورودی استاندارد را به عنوان منبع هیچ تصویر ورودی دیگری مشخص نکنید. .TP \fB-invert\fP این گزینه جهت مقادیر موجود در ماسک شفافیت را معکوس می‌کند که عملاً نقش تصویر رویی و تصویر زیرین را در نقاط تلاقی آن‌ها با یکدیگر تعویض می‌نماید. .TP \fB-opacity=\fP\fIopacity\fP این گزینه مشخص می‌کند که تصویر رویی چقدر باید کدر باشد؛ یعنی چه مقدار از تصویر ترکیبی باید از تصویر رویی باشد در مقایسه با تصویر زیرین. \fIopacity\fP یک عدد ممیز شناور است که 1.0 یعنی تصویر رویی کاملاً کدر است و 0.0 یعنی کاملاً شفاف است. پیش‌فرض 1.0 است. .sp اگر یک ماسک شفافیت (گزینه \fB-alpha\fP) مشخص کنید، \fBpamcomp\fP از حاصل‌ضرب کدریِ نشان‌داده‌شده توسط ماسک شفافیت (به صورت کسر، پس از اعمال تغییرات احتمالی گزینه \fB-invert\fP) و این مقدار کدری استفاده می‌کند. گزینه \fB-invert\fP روی این مقدار کدری اعمال نمی‌شود. .sp به عنوان یک مقدار کدری ساده، این مقدار تنها زمانی منطقی است که بین 0 و 1 (شامل هر دو) باشد. با این حال، \fBpamcomp\fP تمام مقادیر را می‌پذیرد و محاسبات حسابی یکسانی را با هر مقداری که ارائه دهید انجام می‌دهد. مقدار کدری کمتر از صفر به این معنی است که تصویر زیرین تشدید شده و سپس تصویر رویی از آن «تفریق» می‌شود. مقدار کدری بزرگ‌تر از یک به این معنی است که تصویر رویی تشدید شده و تصویر زیرین از آن تفریق می‌شود. در هر دو حالت، \fBpamcomp\fP شدت مؤلفه‌های رنگ حاصل را محدود (clip) می‌کند تا نامنفی باشند و از maxval تصویر خروجی فراتر نروند. .sp شاید این کار عجیب به نظر برسد، اما کاربردهایی دارد. می‌توانید از آن برای روشن‌تر کردن، تیره‌تر کردن، اشباع کردن یا غیراشباع کردن بخش‌هایی از تصویر زیرین استفاده کنید. برای .BR "این توضیحات" (1)\c \& درباره این روش مراجعه فرمایید. .sp این گزینه در Netpbm نسخه 10.6 (ژوئیه ۲۰۰۲) اضافه شد. پیش از Netpbm نسخه 10.15 (آوریل ۲۰۰۳)، مقادیر کمتر از صفر یا بزرگ‌تر از یک مجاز نبودند. .TP \fB-mixtransparency\fP این گزینه مشخص می‌کند زمانی که هم تصویر زیرین و هم تصویر رویی غیرکدر هستند، \fBpamcomp\fP چه کاری انجام دهد. .sp به طور پیش‌فرض، تصویر خروجی دارای همان شفافیت تصویر زیرین است و شفافیت تصویر زیرین هیچ تأثیری بر ترکیب رنگ ندارد. .sp اما با این گزینه، \fBpamcomp\fP تصویر را طبق استعاره اسلایدهای شفاف پلاستیکی ترکیب می‌کند: تصاویر زیرین و رویی اسلایدهای پلاستیکی هستند. تصویر خروجی اسلایدی است که از روی هم قرار دادن آن دو اسلاید به دست می‌آورید. بنابراین، شفافیت خروجی ترکیبی از شفافیت ورودی‌ها است و شفافیت تصویر زیرین بر سهم تصویر زیرین در رنگ تصویر خروجی اثر می‌گذارد. .sp برخلاف اسلاید استعاری، یک پیکسل PAM حتی در جایی که کاملاً شفاف است دارای رنگ می‌باشد؛ بنابراین \fBpamcomp\fP در آن حالت از استعاره فاصله می‌گیرد و رنگ خروجی را همسان با تصویر زیرین قرار می‌دهد. .sp این گزینه در Netpbm نسخه 10.56 (سپتامبر ۲۰۱۱) جدید بود. پیش از آن، خروجی همواره کدر بود و \fBpamcomp\fP شفافیت تصویر زیرین را نادیده می‌گرفت. .TP \fB-linear\fP این گزینه نشان می‌دهد که ورودی‌ها تصاویر واقعی Netpbm نیستند، بلکه یک گونه متناسب با شدت نور هستند. این موضوع تنها زمانی اهمیت دارد که پیکسل‌ها را با استفاده از گزینه \fB-opacity\fP یا یک ماسک شفافیت (گزینه \fB-alpha\fP) مخلوط می‌کنید. .sp ماسک شفافیت و مقادیر \fB-opacity\fP کسری از شدت نور یک پیکسل را مشخص می‌کنند. اما قالب‌های تصویر PNM و PAM معادل PNM، شدت‌ها را با اعداد تنظیم‌شده با گاما (gamma-adjusted) نمایش می‌دهند که به صورت خطی متناسب با شدت نور نیستند. بنابراین، \fBpamcomp\fP به طور پیش‌فرض روی هر نمونه خوانده‌شده از ورودی و هر نمونه نوشته‌شده در خروجی محاسباتی انجام می‌دهد تا تبدیل بین این اعداد تنظیم‌شده با گاما و اعداد متناسب با شدت داخلی را انجام دهد. .sp گاهی اوقات شما با تصاویر واقعی PNM یا PAM کار نمی‌کنید، بلکه با گونه‌ای کار می‌کنید که مقادیر نمونه در آن‌ها مستقیماً متناسب با شدت نور هستند. در این صورت، از گزینه \fB-linear\fP استفاده کنید تا این موضوع را به \fBpamcomp\fP اطلاع دهید. سپس \fBpamcomp\fP از این تبدیل‌ها صرف‌نظر می‌کند. .sp انجام تبدیل زمان‌بر است. همچنین تفاوت بین مقادیر متناسب با شدت و مقادیر تنظیم‌شده با گاما ممکن است به اندازه کافی کوچک باشد که اگر وانمود کنید مقادیر تنظیم‌شده با گاما در واقع متناسب با شدت هستند، به ندرت تفاوتی در نتیجه مشاهده کنید. بنابراین صرفاً برای صرفه‌جویی در زمان، با چشم‌پوشی از مقداری کیفیت تصویر، می‌توانید حتی زمانی که ورودی PPM واقعی دارید و انتظار خروجی PPM واقعی دارید نیز \fB-linear\fP را مشخص کنید. .sp در ۱۳ سال اول عمر Netpbm، تا نسخه 10.20 (ژانویه ۲۰۰۴)، برنامه پیشین \fBpamcomp\fP یعنی \fBpnmcomp\fP همیشه با نمونه‌های PPM طوری رفتار می‌کرد که گویی متناسب با شدت نور هستند حتی با اینکه نبودند، و شکایات اندکی را در پی داشت. بنابراین اگر سرعت برای شما اهمیت دارد، استفاده از \fB-linear\fP به عنوان یک ساده‌سازی عمدی، اقدامی معقول است. .sp روش دیگری که می‌توانید در نظر بگیرید این است که تصویر PNM خود را با استفاده از \fBpnmgamma\fP به گونه خطی تبدیل کنید، \fBpamcomp\fP و سایر تبدیل‌هایی را که به PNM خطی نیاز دارند روی آن اجرا کنید، و سپس آن را با \fBpnmgamma -ungamma\fP دوباره به PNM واقعی بازگردانید. برنامه \fBpnmgamma\fP اغلب در انجام این تبدیل سریع‌تر از \fBpamcomp\fP عمل می‌کند. .UN seealso .SH "همچنین ببینید (SEE ALSO)" .PP .BR "pammixmulti.html" (1)\c \& دو یا چند تصویر هم‌اندازه را به روش‌های گوناگون با یکدیگر مخلوط می‌کند. .PP .BR "ppmmix" (1)\c \& و .BR "pnmpaste" (1)\c \& نسخه‌های ساده‌تر و کم‌عمومی‌تر از همین ابزار هستند. .PP .BR "ppmcolormask" (1)\c \& و .BR "pbmmask" (1)\c \&، و .BR "\fBpambackground\fP" (1)\c \& می‌توانند در تولید یک ماسک شفافیت کمک کنند. .PP .BR "pnmcomp" (1)\c \& یک برنامه قدیمی‌تر است که سریع‌تر اجرا می‌شود اما قابلیت‌های کمتری دارد. .PP .BR "pnm" (1)\c \& .UN history .SH "تاریخچه (HISTORY)" .PP برنامه \fBpamcomp\fP در Netpbm نسخه 10.21 (مارس ۲۰۰۴) جدید بود. برنامه پیشین آن، \fBpnmcomp\fP، یکی از نخستین برنامه‌هایی بود که در سال ۱۹۹۳ هنگامی که پروژه جهانی شد، به Netpbm اضافه شد. .UN author .SH "نویسنده (AUTHOR)" حق نشر (C) ۱۹۹۲ توسط David Koblas (\fIkoblas@mips.com\fP). .SH "منبع مستندات (DOCUMENT SOURCE)" این صفحه راهنما توسط ابزار Netpbm تحت عنوان 'makeman' از منبع HTML تولید شده است. مستندات اصلی در آدرس زیر قرار دارد: .IP .B http://netpbm.sourceforge.net/doc/pamcomp.html .PP