Ppmlabel User Manual(0) Ppmlabel User Manual(0)

ppmlabel - افزودن متن به یک تصویر PPM

ppmlabel

[-angle angle]

[-background { transparent | color } ]

[-color color]

[-file filename]

[-size

textsize]

[-text text_string]

[-x column]

[-y row]

...

[ppmfile]


    ppmlabel -x 50 -y 50 -text hello \
             -angle -30 -text there \
             testimg.ppm 

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

دستور ppmlabel از امکانات رسم متن بخش «ppmd» در libnetpbm برای افزودن متن به یک تصویر PBM استفاده می‌کند. شما موقعیت، اندازه، زاویه خط مبنا، رنگ متن و رنگ پس‌زمینه (در صورت وجود) را با آرگومان‌های خط فرمان کنترل می‌کنید. می‌توانید متن را در خط فرمان مشخص کرده یا آن را در فایل‌ها ارائه دهید.

شما می‌توانید هر تعداد برچسب مجزا را در یک بار اجرای ppmlabel اضافه کنید، که تنها توسط محدودیت‌های محیط شما بر تعداد و اندازه آرگومان‌های برنامه (مانند محدودیت اندازه دستور در شل) محدود می‌شود.

اگر ppmfile را مشخص نکنید، ppmlabel تصویر PPM ورودی را از ورودی استاندارد می‌خواند.

تصویر خروجی به خروجی استاندارد ارسال می‌شود.

روشی پیشرفته‌تر برای افزودن برچسب به یک تصویر، استفاده از pbmtext یا pbmtextps برای ساخت تصویری از متن و سپس استفاده از pamcomp برای هم‌پوشانی آن بر روی تصویر پایه است.

برنامه عمومی‌تر دیگر ppmdraw است. استفاده از آن برای برچسب‌گذاری ساده کمی دشوارتر است.

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

آرگومان‌های خط فرمان ppmlabel به معنای دقیق کلمه گزینه نیستند؛ آن‌ها دستوراتی هستند که جای‌گذاری و ظاهر متنی را که به تصویر ورودی اضافه می‌شود کنترل می‌کنند. آن‌ها از چپ به راست اجرا می‌شوند و هر تعداد آرگومان می‌تواند ظاهر شود.

می‌توانید هر گزینه را به کوتاه‌ترین پیشوند یکتای آن مخفف کنید.

این گزینه زاویه خط مبنای متن بعدی را تنظیم می‌کند. angle یک عدد صحیح بر حسب درجه است که در جهت پادساعت‌گرد از محور ردیف تصویر اندازه‌گیری می‌شود.
اگر آرگومان transparent باشد، ppmlabel متن را روی پیکسل‌های موجود در تصویر رسم می‌کند. اگر یک color مشخص کنید (برای اطلاعات در مورد نحوه مشخص کردن رنگ‌ها، گزینه -color در زیر را ببینید)، ppmlabel مستطیل‌های پس‌زمینه‌ای ایجاد می‌کند که متن بعدی را در بر می‌گیرند و آن مستطیل‌ها با آن رنگ پر می‌شوند.
این گزینه رنگ متن بعدی را تنظیم می‌کند.

رنگ (color) را همان‌طور که برای آرگومان روال کتابخانه‌ای pnm_parsecolor() توضیح داده شده است، مشخص کنید.

-colour یک نگارش جایگزین قابل قبول است.

این گزینه باعث می‌شود ppmlabel خطوط متن را از فایلی به نام filename بخواند و آن را در خطوط متوالی رسم کند.
این گزینه ارتفاع بلندترین نویسه‌ها بالای خط مبنا را روی textsize پیکسل تنظیم می‌کند.
این گزینه باعث می‌شود ppmlabel رشته متنی مشخص‌شده را رسم کند. این گزینه موقعیت متن بعدی را به اندازه ۱٫۷۵ برابر textsize فعلی به سمت پایین پیش می‌برد. این ویژگی به شما اجازه می‌دهد چندین خط متن را به شیوه‌ای معقول بدون نیاز به تعیین موقعیت هر خط رسم کنید.

توجه داشته باشید که اگر ppmlabel را از طریق یک دستور شل اجرا می‌کنید و رشته متنی شما شامل فاصله است، باید آن را در علامت نقل‌قول قرار دهید تا شل کل رشته را به عنوان یک نشانه منفرد در نظر بگیرد. به عنوان مثال:

$ ppmlabel -text "this is my text" baseimage.ppm >annotatedimage.ppm
این گزینه ستون پیکسلی را که متن بعدی از آن چپ‌چین خواهد شد، تنظیم می‌کند. بسته به شکل نویسه اول، ممکن است متن واقعی چند پیکسل سمت راست این نقطه آغاز شود.
این گزینه ردیف پیکسلی را که خط مبنای متن بعدی را تشکیل می‌دهد، تنظیم می‌کند. نویسه‌های دارای دنباله پایینی (مانند «y») به زیر این خط امتداد می‌یابند.

رشته‌های متنی به اسکی ۷ بیتی (7 bit ASCII) محدود هستند. قلم متنی مورداستفاده توسط ppmlabel شامل تعاریفی برای نویسه‌های ۸ بیتی ISO 8859/1 نیست.

هنگام رسم چندین خط متن با پس‌زمینه غیرشفاف، احتمالاً باید فضای بین خطوط با رنگ پس‌زمینه پر شود. انجام درست این کار زمانی که متن با زاویه‌ای غیرمتعامد چرخانده شده است، پیچیده و چالش‌برانگیز است.

ppmmake(1)، ppmdraw(1)، pbmtext(1)، pbmtextps(1)، pamcomp(1)، ppm(1)

حق نشر (C) ۱۹۹۵ متعلق به John Walker (kelvin@fourmilab.ch) صفحه خانگی وب: http://www.fourmilab.ch

بدین‌وسیله مجوز استفاده، کپی، تغییر و توزیع این نرم‌افزار و مستندات آن برای هر مقصودی و بدون دریافت هزینه، بدون هیچ‌گونه قید و شرطی اعطا می‌شود. این نرم‌افزار «همان‌طور که هست» (as is) و بدون هرگونه ضمانت صریح یا ضمنی ارائه می‌شود.

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

http://netpbm.sourceforge.net/doc/ppmlabel.html
15 April 2006 netpbm documentation