.\" 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 "Pbmtextps User Manual" 0 "17 February 2023" "netpbm documentation" .SH "نام (NAME)" pbmtextps \- رندر متن در یک تصویر PBM با استفاده از یک مفسر PostScript .UN synopsis .SH "خلاصه دستور (SYNOPSIS)" \fBpbmtextps\fP [\fB-font\fP \fIfontname\fP] [\fB-fontsize\fP \fIfloat\fP] [\fB-resolution\fP \fIn\fP] [\fB-leftmargin=\fP\fIn\fP] [\fB-rightmargin=\fP\fIn\fP] [\fB-topmargin=\fP\fIn\fP] [\fB-bottommargin=\fP\fIn\fP] [\fB-ascent=\fP\fIn\fP] [\fB-descent=\fP\fIn\fP] [\fB-pad\fP] [\fB-crop\fP] [\fB-stroke\fP \fIn\fP] [\fB-asciihex\fP] [\fB-ascii85\fP] [\fB-verbose\fP] [\fB-dump-ps\fP] \fItext\fP [\fItext\fP ...] .UN description .SH "توضیحات (DESCRIPTION)" .PP این برنامه بخشی از .BR "Netpbm" (1)\c \& است. .PP برنامه \fBpbmtextps\fP یک خط متن را از خط فرمان دریافت کرده و آن را در یک تصویر PBM رندر می‌کند. این تصویر حاوی یک خط متن تکی است؛ نویسه‌های خط جدید (newline) در ورودی هیچ تأثیری ندارند. .PP برای یک تولیدکننده متن پیشرفته‌تر، اما با قالب‌های فونت کمتر رایج، \fBpbmtext\fP را ببینید. \fBpbmtext\fP می‌تواند چندین خط متن تولید کند. .PP .UR index.html#commonoptions گزینه عمومی .UE \fB-plain\fP پیش از Netpbm 10.42 (مارس ۲۰۰۸) هیچ تأثیری ندارد. خروجی همواره به صورت PBM خام (raw) است. .UN margins .SS "حاشیه‌ها (Margins)" .PP به‌طور پیش‌فرض، تصویر در بالا و راست برش داده (crop) می‌شود. در سمت چپ یا پایین برشی انجام نمی‌شود تا متن در موقعیتی یکسان نسبت به مبدا آغاز شود. اندازه حاشیه‌های پیش‌فرض چپ و پایین در ادامه توضیح داده شده است. .PP شما می‌توانید با گزینه‌های \fB-leftmargin\fP، \fB-rightmargin\fP، \fB-topmargin\fP و \fB-bottommargin\fP هر حاشیه‌ای را که می‌خواهید تنظیم کنید. مقدار مشخص‌شده از فضای خالی به دورترین لبهٔ حروف اضافه می‌شود؛ به عنوان مثال اگر مقدار ۱۰ نقطه را برای \fB-topmargin\fP مشخص کنید، ۱۰ نقطه فضای خالی بالای بلندترین نویسه در خط به دست خواهید آورد. برای بریدن یک سمت، مقدار 0 را مشخص کنید. .PP گزینه \fB-ascent\fP به بالای تصویر فضای خالی اضافه می‌کند تا به فاصله مشخصی بالای خط مبنای (baseline) متن برسد، و \fB-descent\fP فضای خالی را به پایین اضافه می‌کند تا به فاصله مشخصی در زیر خط مبنای متن برسد. .PP هنگامی که دو قطعه متن را (در فراخوانی‌های جداگانه \fBpbmtextps\fP) که قرار است به صورت افقی به یکدیگر الحاق شوند رندر می‌کنید، \fB-ascent\fP و \fB-descent\fP بسیار کاربردی‌تر از \fB-topmargin\fP و \fB-bottommargin\fP هستند. با \fB-ascent\fP و \fB-descent\fP، مادامی که مقداری بزرگ‌تر از ارتفاع یا عمق تمام نویسه‌های فونت مشخص کنید، دو تصویر دارای ارتفاع یکسان بوده و خط مبنای متن در موقعیتی یکسان قرار خواهد گرفت. با استفاده از \fB-topmargin\fP و \fB-bottommargin\fP ممکن است وضعیت به این صورت نباشد. .PP مثال: .nf \f(CW $ pbmtextps -font=Times-Roman -descent=20 \e 'The soup is called' > a1.pbm $ pbmtextps -font=Itallic -descent=20 'Goulash.' > a2.pbm $ pamcat -leftright -jbottom a1.pbm a2.pbm > out.pbm \fP .fi .PP اگر از \fB-descent\fP برای هم‌تراز کردن بخش‌های متنی که به صورت افقی با \fBpamcat\fP الحاق می‌شوند استفاده می‌کنید، گزینه \fB-jbottom\fP (تراز کردن از پایین) را روی \fBpamcat\fP مانند مثال بالا به کار ببرید. اگر از \fB-ascent\fP استفاده می‌کنید، به جای آن از \fB-jtop\fP استفاده نمایید. .PP به طور مشابه، اگر دو خط متن را (در فراخوانی‌های جداگانه \fBpbmtextps\fP) رندر می‌کنید که می‌خواهید آنها را به صورت عمودی الحاق کنید، مقادیر به اندازه کافی بزرگ برای \fB-ascent\fP و \fB-descent\fP تضمین می‌کنند که خطوط مبنا با فواصل یکنواخت چیده شوند. .PP اگر \fB-ascent\fP را تعیین کنید، احتمالاً دلیلی برای تعیین \fB-topmargin\fP نیز وجود ندارد، اما در صورت تعیین، اثر آن‌ها تجمعی خواهد بود. همین موضوع در مورد \fB-descent\fP و \fB-bottommargin\fP نیز صدق می‌کند. .PP گزینه \fB-pad\fP تصویر را در بالا و پایین تا جایی که بلندترین و کوتاه‌ترین نویسه‌ها در فونت می‌رسند پر (pad) می‌کند، حتی اگر آن نویسه‌ها در متن شما وجود نداشته باشند. این ویژگی زمانی مفید است که بخواهید چندین تصویر از متن تولید کرده (با چندین بار اجرای \fBpbmtextps\fP) و آن‌ها را به صورت عمودی الحاق نمایید تا یک تصویر متنی چندخطی بسازید. \fB-pad\fP تضمین می‌کند که خطوط در این تصویر دارای فاصله‌گذاری یکسانی هستند. .PP مثال: .nf \f(CW $ pbmtextps 'cat' | pamfile $ pbmtextps 'Catty' | pamfile \fP .fi .PP دستورات فوق بدون استفاده از \fB-pad\fP نشان می‌دهند که تصویر 'Catty' ارتفاع بیشتری دارد، زیرا C بزرگ به سمت بالا و 'y' به سمت پایین کشیده می‌شوند. .nf \f(CW $ pbmtextps -pad 'cat' | pamfile $ pbmtextps -pad 'Catty' | pamfile \fP .fi .PP دستورات فوق با استفاده از \fB-pad\fP نشان می‌دهند که هر دو تصویر دارای ارتفاع یکسانی هستند. .PP اگر \fB-pad\fP را همراه با \fB-ascent\fP یا \fB-descent\fP مشخص کنید، مقدار بزرگ‌تر اثرگذار خواهد بود. .PP گزینه \fB-crop\fP باعث می‌شود برنامه همه لبه‌ها را تا بیرونی‌ترین مرز نویسه‌ها برش دهد. این کار معادل استفاده از \f(CW-leftmargin=0 -rightmargin=0 -topmargin=0 -bottommargin=0\fP است. .PP نمی‌توانید هیچ گزینهٔ دیگری را که بر حاشیه اثر می‌گذارد به همراه \fB-crop\fP مشخص کنید. .PP حاشیه بالای پیش‌فرض، هنگامی که هیچ‌یک از گزینه‌های \fB-ascent\fP، \fB-topmargin\fP، یا \fB-pad\fP را مشخص نکرده باشید، معادل مشخص کردن \fBtopmargin=0\fP است. .PP حاشیه پایین پیش‌فرض، هنگامی که هیچ‌یک از گزینه‌های \fB-descent\fP، \fB-bottommargin\fP، یا \fB-pad\fP را مشخص نکرده باشید، معادل مشخص کردن \fB-descent=\fP\fI1.5*fontsize\fP است. .PP حاشیه چپ پیش‌فرض، زمانی که \fB-leftmargin\fP را مشخص نکرده باشید، معادل مشخص کردن \fB-leftmargin=\fP\fI0.5*fontsize\fP است. .PP حاشیه راست پیش‌فرض، زمانی که \fB-rightmargin\fP را مشخص نکرده باشید، معادل مشخص کردن \fB-rightmargin=0\fP است. .UN input_text.SS متن ورودی (Input Text) .PP ساده‌ترین راه برای مشخص کردن متن جهت رندر شدن، مشخص کردن مستقیم آن به صورت ASCII، به عنوان تنها آرگومان دستور است. برای مثال: .nf \f(CW $ pbmtextps 'hello world' \fP .fi .PP اما همچنین می‌توانید آن را در چندین آرگومان پخش کنید. \fBpbmtextps\fP آن‌ها را از راست به چپ با یک فاصله در این بین به هم متصل می‌کند: .nf \f(CW $ pbmtextps hello world \fP .fi .PP با گزینهٔ \fB-asciihex\fP، می‌توانید متن را در کد ASCII-HEX متعلق به Postscript مشخص کنید: .nf \f(CW $ pbmtextps -asciihex 68656c6c6f20776f726c64 \fP .fi .PP می‌توانید به صورت اختیاری جداکننده‌های متنی ASCII-HEX را که در یک برنامهٔ Postscript در اطراف متن قرار می‌گیرند نیز درج کنید: .nf \f(CW $ pbmtextps -asciihex '<68656c6c6f20776f726c64>' \fP .fi .PP توجه داشته باشید که جداکننده‌های <> برای پوسته‌های خط فرمان معنای ویژه‌ای دارند، بنابراین اگر \fBpbmtextps\fP را از طریق یک پوسته فراخوانی می‌کنید، حتماً آن‌ها را درون علامت نقل‌قول قرار دهید، همان‌طور که در این مثال انجام شده است. .PP با \fB-asciihex\fP، می‌توانید فاصله‌های خالی (white space) را در هر کجای متن کدگذاری‌شده قرار دهید؛ این کار هیچ تاثیری ندارد. همچنین می‌توانید آرگومان را همانند ورودی سادهٔ ASCII در چندین آرگومان پخش کنید: .nf \f(CW $ pbmtextps -asciihex '<' 68656c6c6f 20 776f726c64 '>' \fP .fi .PP اما توجه داشته باشید در حالی که Postscript نویسهٔ ASCII NUL را به عنوان فاصلهٔ خالی مجاز می‌شمارد، هیچ راهی برای ارسال یک آرگومان شامل نویسهٔ NUL به \fBpbmtextps\fP وجود ندارد. .PP با گزینهٔ \fB-ascii85\fP، می‌توانید متن را در کد ASCII-85 متعلق به Postscript مشخص کنید. این عملکرد مشابه \fB-asciihex\fP است. جداکننده‌های Postscript برای یک رشتهٔ متنی ASCII-85 به صورت <~ ~> هستند. .UN options .SH "گزینه‌ها (OPTIONS)" .PP علاوه بر گزینه‌های مشترک بین تمامی برنامه‌های مبتنی بر libnetpbm (به‌ویژه \fB-quiet\fP، به .UR index.html#commonoptions گزینه‌های مشترک (Common Options) .UE \& مراجعه کنید)، \fBpbmtextps\fP گزینه‌های خط فرمان زیر را می‌شناسد: .TP \fB-font=\fP\fIfontname\fP .sp فونت مورد استفاده را مشخص می‌کند. \fIfontname\fP نام هر فونت معتبر Postscript است که بر روی سیستم نصب شده باشد. .sp پیش‌فرض \fBTimesRoman\fP است. .sp روش زیر راهی برای دریافت فهرستی از نام‌های تمام فونت‌های موجود است: .nf \f(CW $ gs -c '(*) {==} 256 string /Font resourceforall' \fP .fi .sp \fBهشدار:\fP اگر \fIfontname\fP نام یک فونت معتبر نباشد، \fBpbmtextps\fP صرفاً از فونت پیش‌فرض استفاده می‌کند و این موضوع را به شما اطلاع نمی‌دهد. .TP \fB-fontsize=\fP\fIfloat\fP این اندازهٔ فونت بر حسب پوینت (point) است. برای اطلاعات در مورد نحوهٔ تفسیر این اندازه، به گزینهٔ \fB-resolution\fP مراجعه کنید. .sp پیش‌فرض 24 پوینت است. .sp پیش از Netpbm نسخهٔ 10.75 (ژوئن 2016)، این مقدار باید یک عدد صحیح می‌بود. .TP \fB-resolution=\fP\fIn\fP این مقدار، وضوح (رزولوشن) بر حسب نقطه در اینچ (dpi) برای اندازه‌گیری فاصله‌های مربوط به تولید تصویر است. تصاویر PBM وضوح ذاتی ندارند، بنابراین فاصله‌ای مانند "1 اینچ" هیچ معنایی ندارد مگر اینکه جداگانه مشخص کنید دربارهٔ چه وضوحی صحبت می‌کنید. این کاری است که این گزینه انجام می‌دهد. .sp به طور خاص، معنای اندازهٔ فونت توسط این وضوح تعیین می‌شود. اگر اندازهٔ فونت 24 پوینت و وضوح 150 dpi باشد، آن‌گاه اندازهٔ فونت 50 پیکسل خواهد بود. .sp پیش‌فرض 150 dpi است. .TP \fB-leftmargin=\fP\fIn\fP .TP \fB-rightmargin=\fP\fIn\fP .TP \fB-topmargin=\fP\fIn\fP .TP \fB-bottommargin=\fP\fIn\fP این گزینه‌ها حاشیه‌های اضافه‌شده به تصویر را که از دورترین لبهٔ حروف چاپی اندازه‌گیری می‌شوند، کنترل می‌کنند. برای جزئیات به .UR #margins حاشیه‌ها (Margins) .UE \& مراجعه کنید. .sp همهٔ اندازه‌ها بر حسب پوینت، به صورت یک عدد اعشاری (ممیز شناور) هستند. .sp این گزینه‌ها در Netpbm نسخهٔ 10.75 (ژوئن 2016) اضافه شده‌اند. .TP \fB-ascent=\fP\fIn\fP .TP \fB-descent=\fP\fIn\fP این گزینه‌ها حاشیه‌های اضافه‌شده به تصویر را که از خط مبنای متن (baseline) اندازه‌گیری می‌شوند، کنترل می‌کنند. برای جزئیات به .UR #margins حاشیه‌ها (Margins) .UE \& مراجعه کنید. .sp اندازه‌ها بر حسب پوینت، به صورت یک عدد اعشاری هستند. .sp این گزینه‌ها در Netpbm نسخهٔ 10.75 (ژوئن 2016) اضافه شده‌اند. .TP \fB-pad\fP این گزینه تصویر را از بالا و پایین تا جایی که بلندترین و کوتاه‌ترین نویسه‌های فونت می‌رسند پر (pad) می‌کند، حتی اگر آن نویسه‌ها در متن شما وجود نداشته باشند. برای جزئیات به .UR #margins حاشیه‌ها (Margins) .UE \& مراجعه کنید. .sp این گزینه در Netpbm نسخهٔ 10.75 (ژوئن 2016) اضافه شده است. .TP \fB-crop\fP این گزینه باعث می‌شود برنامه تمام لبه‌ها را تا دورترین لبهٔ حروف چاپی برش دهد (crop). این معادل \f(CW-leftmargin=0 -rightmargin=0 -topmargin=0 -bottommargin=0\fP است. برای جزئیات به .UR #margins حاشیه‌ها (Margins) .UE \& مراجعه کنید. .sp این گزینه در Netpbm نسخهٔ 10.75 (ژوئن 2016) اضافه شده است. .TP \fB-asciihex\fP این مشخص می‌کند که متن در آرگومان‌ها در قالب کد ASCII-HEX متعلق به Postscript است. به .UR #input_text متن ورودی (Input Text) .UE \& مراجعه کنید..sp نمی‌توانید این گزینه را همراه با \fB-ascii85\fP مشخص کنید. .sp این گزینه در Netpbm نسخه 11.02 (مارس 2023) اضافه شد. .TP \fB-ascii85\fP این بدان معناست که متن موجود در آرگومان‌ها به صورت کد Postscript ASCII-85 است. بخش .UR #input_text متن ورودی (Input Text) .UE را ببینید\&. .sp نمی‌توانید این گزینه را همراه با \fB-asciihex\fP مشخص کنید. .sp این گزینه در Netpbm نسخه 11.02 (مارس 2023) اضافه شد. .TP \fB-stroke=\fP\fIn\fP این پهنای خط (بر حسب پوینت) برای استفاده در قلم‌های خطی (stroke font) است. هیچ پهنای خط پیش‌فرضی وجود ندارد زیرا نویسه‌ها به‌طور پیش‌فرض توپر هستند. .TP \fB-verbose\fP این گزینه باعث می‌شود \fBpbmtextps\fP اطلاعات بیشتری درباره فرایند پردازش خود در خطای استاندارد (Standard Error) نمایش دهد. .TP \fB-dump-ps\fP این گزینه باعث می‌شود \fBpbmtextps\fP به جای خود تصویر، برنامه Postscript را که برای تولید تصویر استفاده می‌کرد در خروجی استاندارد (Standard Output) بنویسد. می‌توانید از این به عنوان ورودی یک مفسر Postscript (مانند Ghostscript یا چاپگر) استفاده کنید یا برای درک بهتر برنامه آن را بررسی نمایید. .sp این گزینه در Netpbm نسخه 10.75 (ژوئن 2016) اضافه شد. .UN usage .SH "نحوه استفاده (USAGE)" می‌توانید با استفاده از وضوحی بالاتر از مقدار پیش‌فرض و سپس کاهش مقیاس تصویر با استفاده از \fBpamscale\fP، متنی هموارشده (antialiased) تولید کنید. .PP برای توصیه‌های بیشتر درباره نحوه استفاده، به راهنمای ابزار مشابه \fBpbmtext\fP مراجعه کنید. .UN history .SH "تاریخچه (HISTORY)" .PP \fBpbmtextps\fP در انتشار 10.0 (ژوئن 2002) به Netpbm اضافه شد. .UN seealso .SH "همچنین ببینید (SEE ALSO)" .BR "pbmtext" (1)\c \&, .BR "pamcut" (1)\c \&, .BR "pnmcrop" (1)\c \&, .BR "pamcomp" (1)\c \&, .BR "ppmchange" (1)\c \&, .BR "pnmrotate" (1)\c \&, .BR "pamscale" (1)\c \&, .BR "ppmlabel" (1)\c \&, .BR "pbm" (1)\c \& .UN author .SH "نویسنده (AUTHOR)" حق نشر (C) 2002 متعلق به James McCann .SH "منبع سند (DOCUMENT SOURCE)" این صفحه راهنما توسط ابزار 'makeman' در Netpbm از منبع HTML تولید شده است. مستندات اصلی در نشانی زیر قرار دارد: .IP .B http://netpbm.sourceforge.net/doc/pbmtextps.html .PP