.TH gropdf 1 "2026-03-15" "groff 1.24.1" .SH "نام (NAME)" gropdf \- پسپردازنده groff برای تولید خروجی PDF . . .\" ==================================================================== .\" Legal Terms .\" ==================================================================== .\" .\" Copyright 2011-2026 Free Software Foundation, Inc. .\" 2026 G. Branden Robinson .\" .\" Permission is granted to make and distribute verbatim copies of this .\" manual provided the copyright notice and this permission notice are .\" preserved on all copies. .\" .\" Permission is granted to copy and distribute modified versions of .\" this manual under the conditions for verbatim copying, provided that .\" the entire resulting derived work is distributed under the terms of .\" a permission notice identical to this one. .\" .\" Permission is granted to copy and distribute translations of this .\" manual into another language, under the above conditions for .\" modified versions, except that this permission notice may be .\" included in translations approved by the Free Software Foundation .\" instead of in the original English. . . .\" Save and disable compatibility mode (for, e.g., Solaris 10/11). .do nr *groff_gropdf_1_man_C \n[.cp] .cp 0 . .\" Define fallback for groff 1.23's MR macro if the system lacks it. .nr do-fallback 0 .if !\n(.f .nr do-fallback 1 \" mandoc .if \n(.g .if !d MR .nr do-fallback 1 \" older groff .if !\n(.g .nr do-fallback 1 \" non-groff *roff .if \n[do-fallback] \{\ . de MR . ie \\n(.$=1 \ . I \%\\$1 . el \ . IR \%\\$1 (\\$2)\\$3 . . .\} .rr do-fallback . .\" This macro definition is poor style from a portability standpoint, .\" but it's a good test and demonstration of the standard font .\" repertoire for the devices where it has any effect at all, and so .\" should be retained. .de FT . if \\n[.$] .if !F \\$1 .ftr \\$1 R . if '\\*(.T'ps' .ft \\$1 . if '\\*(.T'pdf' .ft \\$1 .. . .\" This man page employs an unusual character. .if !c \[u2717] .char \[u2717] X . . .\" ==================================================================== .SH "خلاصه دستور (SYNOPSIS)" .\" ==================================================================== . .SY gropdf .RB [ \-delsW ] .RB [{ \-f | \-\-format-options }\~\c .IR bit-vector ] .RB [ \-F\~\c .IR font-directory ] .RB [ \-I\~\c .IR inclusion-directory ] .RB [ \-p\~\c .IR paper-format ] .RB [ \-\-pdfver\~\c .RB { 1.4 \||\| 1.7 }] \#.RB [ \-w\~\c \#.IR n ] .RB [ \-u\~\c .RI [ cmap-file ]] .RB [ \-y\~\c .IR foundry ] .RI [ file\~ .\|.\|.] .YS . . .P .SY gropdf .B \-\-help .YS . . .P .SY gropdf .B \-v .YS . .SY gropdf .B \%\-\-version .YS . . .\" ==================================================================== .SH "توضیحات (DESCRIPTION)" .\" ==================================================================== . درایور خروجی PDF در GNU .I roff خروجی .MR \%troff 1 را به قالب سند قابل‌حمل (Portable Document Format یا همان PDF) تبدیل می‌کند. . به‌طور معمول، .I gropdf توسط .MR groff 1 فراخوانی می‌شود، هنگامی که به دومی گزینه .RB \[lq] \-T\~pdf \[rq] داده شود. . (در این نصب، .B \%ps دستگاه خروجی پیش‌فرض است.) . از گزینه .B \-P در .I groff برای ارسال هر یک از گزینه‌های نشان‌داده‌شده در بالا به .I gropdf استفاده کنید. . اگر هیچ آرگومان .I file (پرونده) داده نشود، یا اگر .I file برابر با \[lq]\-\[rq] باشد، .I gropdf جریان ورودی استاندارد را می‌خواند. . این برنامه در جریان خروجی استاندارد می‌نویسد. . . .P برای راهنمای نصب قلم‌ها برای .IR gropdf ، بخش \[lq]Font installation\[rq] را در ادامه ببینید. . . .\" ==================================================================== .SH "گزینهها (OPTIONS)" .\" ==================================================================== . .B \-\-help پیام راهنمای نحوه استفاده را نمایش می‌دهد، در حالی که .B \-v و .B \%\-\-version اطلاعات نسخه را نشان می‌دهند؛ همگی پس از آن خارج می‌شوند. . . .TP 8n \" "-F dir" + 2n .B \-d اطلاعات اشکال‌زدایی را به صورت توضیح (کامنت) درون PDF قرار می‌دهد. . همچنین یک فایل PDF فشرده‌نشده تولید می‌کند. . . .TP .B \-e دستور .I gropdf را وادار می‌کند تا .I همه قلم‌ها (حتی ۱۴ قلم پایه PDF) را درون‌سازی کند. . . .TP .BI \-\-format\-options\~ bit-vector .TQ .BI \-f\~ bit-vector گزینه‌های پیشرفته‌ای را برای .I gropdf مشخص می‌کند. . آشنایی با .UR https://\:www\:.pdfa\-inc\:.org/\:product/\:iso\-32000\-2\-pdf\-2\-0\-bundle\-sponsored\-access استاندارد ISO\~32000 برای PDF .UE مفید خواهد بود. . آرگومان .I bit-vector یک عدد صحیح است که مشخصه‌های PDF تولیدشده را پیکربندی می‌کند. . برای ترکیب این مقادیر، آن‌ها را با یکدیگر جمع کنید. . . .IP .RS \" One inset to align with the indentation of `TP`... .RS \" ...and one more to get "inboard" of it. .TS L L Lb Lx. مقدار مفهوم _ 1 زیرمجموعه‌سازی قلم‌های Type\~1 گنجانده‌شده. 2 T{ استفاده از قالبی فشرده‌تر برای متن با گنجاندن فاصله به عنوان یک نویسه. قلم‌هایی که فاصله را به عنوان یک گلیف شامل نمی‌شوند ممکن است با این ویژگی تداخل داشته باشند. .\" GBR: How? Will there be an error message? T} 4 T{ فشرده‌سازی تمام جریان‌های داده. T} 8 T{ پرونده‌های قلم درون‌سازی نشوند. . (قلمی که سند به آن نیاز دارد درون‌سازی نمی‌شود؛ معمولاً مفید نیست.) T} .TE .RE .RE . . .IP ترکیب ویژگی‌های پیش‌فرض برابر با 7 است. . برای شبیه‌سازی آنچه .I gropdf در .I groff 1.23 تولید می‌کرد، مقدار \[lq]6\[rq] را مشخص کنید تا زیرمجموعه‌سازی خاموش شود. . . .TP .BI \-F " dir" پوشهٔ .IR dir /dev name را به ابتدای مسیر جستجو برای پرونده‌های توصیف قلم و توصیف دستگاه اضافه می‌کند؛ .I name نام دستگاه است که معمولاً .BR pdf می‌باشد. . . .TP .BI \-I\~ dir پوشهٔ .I dir را برای پرونده‌های نام‌برده در دستورهای گسترش دستگاه .B \[rs]X\[aq]pdf: pdfpic\[aq] جستجو می‌کند. . .B \-I می‌تواند بیش از یک بار مشخص شود؛ هر .I dir به همان ترتیب داده‌شده جستجو می‌شود. . برای جستجوی دایرکتوری کاری فعلی پیش از سایر پوشه‌ها، .RB \[lq] "\-I .\&" \[rq] را در جای دلخواه اضافه کنید؛ در غیر این صورت، آن پوشه در آخرین نوبت جستجو خواهد شد. . . .TP .B \-l سند را در حالت افقی (landscape) جهت‌دهی می‌کند. . . .TP .BI \-p " paper-format" ابعاد فیزیکی رسانهٔ خروجی را تنظیم می‌کند. . این گزینه دستورالعمل‌های .BR papersize ، .BR paperlength و .B paperwidth را در پروندهٔ .I DESC بازنویسی می‌کند؛ همچنین همان آرگومان‌های دستورالعمل .B papersize را می‌پذیرد. . برای جزئیات بیشتر به .MR groff_font 5 مراجعه کنید. . . .TP .BR "\-\-pdfver " { 1.4 \||\| 1.7 } قالب PDF نسخه 1.7 قالب فشرده‌تری را برای اشیاء معرفی کرد؛ این مورد اکنون پیش‌فرض است. . اگر به قالب اصلی نیاز دارید (همان‌گونه که توسط .I gropdf نسخه 1.23 تولید می‌شد) نسخه را روی .BR 1.4 تنظیم کنید. . . .TP .B \-s یک خط توضیح (کامنت) حاوی آمار، یعنی تعداد صفحات سند، را به انتهای PDF پیوست می‌کند. . ابزار .B ps2pdf در Ghostscript در صورت وجود این خط اخطار می‌دهد، اما در هر حال کار می‌کند. . . .TP .BR \-u \~[\c .IR cmap-file ] دستور .I gropdf معمولاً یک ToUnicode CMap را همراه با هر قلمی که با استفاده از .I text.enc به عنوان پروندهٔ کدگذاری ایجاد شده باشد می‌گنجاند؛ این کار جستجوی کلماتی را که شامل خط‌نگاشت (ligature) هستند آسان‌تر می‌سازد. . می‌توانید با مشخص کردن یک .I cmap-file نگاشت CMap اختصاصی خود را بگنجانید یا با حذف این آرگومان هیچ CMapای نداشته باشید. . . .TP .B \-W در صورت صدور هرگونه هشدار، با وضعیت خطا خارج می‌شود. . . .\" .TP .\" .BI \-w n .\" Lines should be drawn using a thickness of .\" .IR n \~\c .\" thousandths of an em. .\" . .\" If this option is not given, the line thickness defaults to .\" 0.04\~em. .\" . .\" . .TP .BI \-y " foundry" ریخته‌گری (foundry) مورد استفاده برای انتخاب قلم‌های هم‌نام را تعیین می‌کند. . . .\" ==================================================================== .SH "کاربرد (USAGE)" .\" ==================================================================== . ورودی .I gropdf باید در قالبی باشد که توسط .MR \%troff 1 تولید شده و در .MR groff_out 5 شرح داده شده است. . علاوه بر این، پرونده‌های توصیف دستگاه و قلم آن باید شرایط خاصی را برآورده کنند. . مقدار .B resolution دستگاه باید مضرب صحیحی از\~72 برابرِ .B sizescale باشد. . به‌طور پیش‌فرض، .I gropdf از .B resolution برابر با 72000 و .B sizescale برابر با 1000 استفاده می‌کند. . مشخص کردن یک قالب کاغذ معتبر الزامی است؛ نگاه کنید به .MR groff_font 5 . . اگرچه استاندارد PDF چندین قالب پروندهٔ قلم (مانند TrueType) را مجاز می‌داند، در حال حاضر .I gropdf تنها همان قالب Type\~1 Adobe PostScript را می‌پذیرد که در .MR grops 1 پشتیبانی می‌شود. . تعداد قلم‌های Type\~1 که به‌طور بومی در اسناد PDF پشتیبانی می‌شوند، کمتر از ۳۵ قلم استانداردی است که توسط .I grops و چاپگرهای PostScript پشتیبانی می‌شوند، \" XXX: strictly, PostScript Level 2, right? اما همهٔ آن‌ها در دسترس هستند زیرا .I gropdf به‌طور خودکار هر قلمی را که توسط استاندارد PDF مشخص نشده باشد، درون‌سازی (embed) می‌کند. . . .P .I gropdf از .I foundries (ارائه‌دهندگان قلم) پشتیبانی می‌کند که به چندین ارائه‌دهنده اجازه می‌دهد نام‌های قلم یکسان .I groff را ارائه دهند. . فرآیند کامپایل .I groff تلاش می‌کند قلم‌های Type\~1 موجود در سیستم را پیدا کرده، پروندهٔ .I Foundry را با مکان‌های آن‌ها مقداردهی کند و پرونده‌های توصیف قلم متناظر با آن‌ها را تولید نماید. . پرونده‌های توصیف قلم را می‌توان پس از نصب نیز اضافه کرد. هر پرونده از این نوع باید حاوی دستورالعملِ .RS .BI internalname\ psname .RE باشد که نام قلم .I groff (مانند \[lq]TR\[rq]) را به یک نام PostScript (مانند \[lq]Times\-Roman\[rq]) نگاشت می‌کند. . خطوطی که با .B # شروع می‌شوند و خطوط خالی نادیده گرفته می‌شوند. . کد تعیین‌شده برای هر نویسه در پروندهٔ قلم باید با کد موجود در کدگذاری پیش‌فرض قلم مطابقت داشته باشد. . از این کد می‌توان با توالی گریز .B \[rs]N در .I \%troff برای انتخاب نویسه استفاده کرد، حتی اگر فاقد یک نام نویسهٔ خاص باشد. . هر نویسه در توصیف قلم باید در پروندهٔ قلم وجود داشته باشد، و عرض‌های ارائه‌شده در توصیف باید با عرض‌های استفاده‌شده در پروندهٔ قلم مطابقت داشته باشند. . نگاه کنید به .MR groff_font 5 . .\" . .\" . .\" .LP .\" Note that .\" .B grops .\" is able to display all glyphs in a PostScript font, not only 256. .\" .I enc_file .\" (or the default encoding if no encoding file specified) just defines .\" the order of glyphs for the first 256 characters; .\" all other glyphs are accessed with additional encoding vectors which .\" .B grops .\" produces on the fly. . . .P .I gropdf می‌تواند به‌طور خودکار هر قلم قابل‌بارگیری لازم برای چاپ سند را .I درون‌سازی (embed) کند. . هر قلمی که بدین ترتیب مورد نیاز باشد باید در پروندهٔ .I /usr/\:\%share/\:\%groff/\:\%1.24.1/\:\%font/\:\%devpdf/\:\%download فهرست شده باشد، که باید شامل خطوطی با فرمت زیر باشد: . .RS .I "foundry font file-name" .RE . که در آن .I foundry نام ارائه‌دهندهٔ قلم (foundry)، یا خالی برای ارائه‌دهندهٔ پیش‌فرض است؛ .I font نام PostScript قلم است، و .I file-name نام پروندهٔ قلم PFA یا PFB است، و می‌تواند یک مسیر پرونده باشد (می‌تواند شامل اسلش باشد). . خطوطی که با .B # شروع شوند و خطوط خالی نادیده گرفته می‌شوند؛ فیلدها باید با تب (tab) از یکدیگر جدا شوند (استفاده از فاصله مجاز .BR نیست )؛ اگر .I file-name یک مسیر پرونده نباشد، با همان سازوکاری که برای پرونده‌های سنجهٔ قلم (font metric) استفاده می‌شود، جستجو خواهد شد. .\" XXX: This may be underspecified; do we mean groff font description .\" files, or AFM files? Also, gropdf does its own path searches rather .\" than the stuff in libgroff so I'm not sure what "the same mechanism" .\" means. --GBR . خودِ پروندهٔ .I download نیز با استفاده از این سازوکار جستجو می‌شود. . نام‌های ارائه‌دهنده (foundry) معمولاً یک نویسهٔ تک‌حرفی هستند (مانند \[oq]U\[cq] برای URW foundry) یا برای ارائه‌دهندهٔ پیش‌فرض خالی هستند. . این حالت پیش‌فرض از همان قلم‌هایی استفاده می‌کند که .I Ghostscript هنگام درون‌سازی قلم‌ها در یک پروندهٔ PDF به کار می‌برد. . . .P رنگ‌های پیش‌فرض برای ترسیم خطوط (stroke) و پر کردن (fill) سیاه هستند. . . .\" ==================================================================== .SS "قلمها (Typefaces)" .\" ==================================================================== . سبک‌های موسوم به .BR R ، .BR I ، .BR B و .B BI در موقعیت‌های قلم ۱ تا\~۴ بارگذاری می‌شوند. . قلم‌های متنی در خانواده‌های .BR A ، .BR BM ، .BR C ، .BR H ، .BR HN ، .BR N ، .BR P .RB و\~ T گروه‌بندی می‌شوند که هر یک شامل اعضایی در هر یک از این سبک‌ها هستند. . . .RS .TP 8n \" BMBI + 2n + hand-tuned for PDF .B AR .FT AR AvantGarde-Book .FT . .TQ .B AI .FT AI AvantGarde-BookOblique .FT . .TQ .B AB .FT AB AvantGarde-Demi .FT . .TQ .B ABI .FT ABI AvantGarde-DemiOblique .FT . .TQ .B BMR .FT BMR Bookman-Light .FT . .TQ .B BMI .FT BMI Bookman-LightItalic .FT . .TQ .B BMB .FT BMB Bookman-Demi .FT . .TQ .B BMBI .FT BMBI Bookman-DemiItalic .FT . .TQ .B CR .FT CR Courier .FT . .TQ .B CI .FT CI Courier-Oblique .FT . .TQ .B CB .FT CB Courier-Bold .FT . .TQ .B CBI .FT CBI Courier-BoldOblique .FT . .TQ .B HR .FT HR Helvetica .FT . .TQ .B HI .FT HI Helvetica-Oblique .FT . .TQ .B HB .FT HB Helvetica-Bold .FT . .TQ .B HBI .FT HBI Helvetica-BoldOblique .FT . .TQ .B HNR .FT HNR Helvetica-Narrow .FT . .TQ .B HNI .FT HNI Helvetica-Narrow-Oblique .FT . .TQ .B HNB .FT HNB Helvetica-Narrow-Bold .FT . .TQ .B HNBI .FT HNBI Helvetica-Narrow-BoldOblique .FT . .TQ .B NR .FT NR NewCenturySchlbk-Roman .FT . .TQ .B NI .FT NI NewCenturySchlbk-Italic .FT . .TQ .B NB .FT NB NewCenturySchlbk-Bold .FT . .TQ .B NBI .FT NBI NewCenturySchlbk-BoldItalic .FT . .TQ .B PR .FT PR Palatino-Roman .FT . .TQ .B PI .FT PI Palatino-Italic .FT . .TQ .B PB .FT PB Palatino-Bold .FT . .TQ .B PBI .FT PBI Palatino-BoldItalic .FT . .TQ .B TR .FT TR Times-Roman .FT . .TQ .B TI .FT TI Times-Italic .FT . .TQ .B TB .FT TB Times-Bold .FT . .TQ .B TBI .FT TBI Times-BoldItalic .FT .RE . . .br .ne 3v .P یک قلم متنی دیگر عضو هیچ خانواده‌ای نیست. . .RS .TP 8n \" BMBI (above) + 2n + hand-tuned for PDF .B ZCMI .FT ZCMI ZapfChancery-MediumItalic .FT .RE . . .P قلم‌های ویژه عبارتند از: .BR S ، قلم Symbol در PostScript؛ .BR SS ، زیرمجموعه‌ای از .B S با حروف کوچک مورب یونانی؛ .BR EURO ، که گلیف یورو را در چندین سبک برای استفاده در دستگاه‌های قدیمی فاقد آن فراهم می‌کند؛ و .BR ZD ، Zapf Dingbats. . برخلاف .IR grops ، ابزار .I gropdf به نگارش معکوس آن .RB ( ZDR ) نیازی ندارد؛ گلیف \[lq]دست اشاره‌کننده به چپ\[rq] .RB ( \[rs][lh] ) با این وجود همچنان در دسترس است، زیرا .I \%pdf.tmac آن را با استفاده از دستور گسترش دستگاهِ .B \[rs]X\[aq]pdf: xrev\[aq] تعریف می‌کند (پایین‌تر را ببینید). . برخی از گلیف‌ها در این قلم‌ها بی‌نام هستند و باید با استفاده از دنباله فرار .B \[rs]N به عنوان نویسه‌های دارای اندیس مورد دسترسی قرار گیرند. . .P قلم‌های متناظر با .B EURO و .B SS برای استاندارد PDF ناشناخته هستند؛ بنابراین .I groff فایل‌های AFM (معیارهای ابعادی قلم) و فایل‌های PFA یا PFB آنها را ارائه می‌دهد تا بتوان از آنها در نرم‌افزارهای دیگر استفاده کرد و در خروجی PDF تعبیه (جاسازی) نمود. . . .\" ==================================================================== .SS "سطوح سرویس ویژگی و پشتیبانی قلم URW (Feature service levels and URW font support)" .\" ==================================================================== . قلم‌های سنتی Type\~1 در PostScript از نظر مجموعه گلیف‌های خود محدود هستند، و نسخه‌های اصلی عرضه‌شده از ریخته‌گری Adobe نرم‌افزار آزاد نیستند. . از نظر تاریخی، از آنجا که حضور آن‌ها توسط استاندارد PostScript الزامی شده بود، می‌شد انتظار داشت که در هر دستگاه منطبق با استاندارد یا رندرکننده نرم‌افزاری PostScript از آن‌ها پشتیبانی شود. . استاندارد PostScript (\[lq]Level 1\[rq]) در ابتدا ۱۴ تایپ‌فیس را استانداردسازی کرد: Times، Helvetica و Courier هر کدام در چهار سبک (که .I groff آن‌ها را در \[lq]خانواده‌ها\[rq] گروه‌بندی می‌کند)؛ یک قلم نماد (symbol)؛ و یک قلم dingbats. . نسخه PostScript Level 2 این تعداد را به ۳۵ افزایش داد، و خانواده‌های Avant Garde، Bookman، Helvetica Narrow، New Century Schoolbook و Palatino؛ و یک قلم متنی در یک سبک، Zapf Chancery medium italic را افزود. . یک سند می‌توانست کم‌حجم باشد چرا که نیازی به جاسازی منابع قلم در آن نبود، مگر آنکه نیازمندی‌های غیرمعمولی (برای آن دوران) از نظر گلیف یا تایپ‌فیس داشت. . این وضعیت به سال‌های آغازینِ زبان توصیف صفحه جانشین PostScript، یعنی PDF نیز سرایت کرد. . امروزه، جاسازی قلم‌ها در فایل‌های PDF امری رایج است، و مراجع معتبر این شیوه را به‌طور گسترده توصیه می‌کنند، رویکردی که قابلیت اطمینان رندر سند را افزایش می‌دهد، و قلم‌های نرم‌افزار آزاد فراوانی در دسترس هستند که پوشش گلیف بسیار بیشتری نسبت به قلم‌های Type\~1 شرکت Adobe برای PostScript دارند. . . .P دستور .I \%gropdf تلاش می‌کند در سناریوهای گوناگونی کار کند، و هنگامی که با فایل‌های قلم دیجیتال پشتیبان (برای جاسازی) و فایل‌های متریک قلم که این قلم‌ها را برای قالب‌بندی‌کننده توصیف می‌کنند پیکربندی شود، نتایج بهتری ارائه می‌دهد. . . .IP \[bu] 3n سطح .I "Full service" (سرویس کامل) زمانی در دسترس است که .I \%gropdf بتواند هر ۳۵ قلم استاندارد PostScript Level 2 را روی سیستم فایل به همراه فایل‌های متریک قلم متناظر آن‌ها (AFM) پیدا کند. . ریخته‌گری بی‌نام سازگار با Adobe (پیش‌فرض) حداکثر از ۲۵۶ گلیف در هر تایپ‌فیس پشتیبانی می‌کند. . قلم‌های ریخته‌گری URW (\[lq]U\[rq]) افزونه‌های سازگار با قلم‌های Adobe هستند که پوشش گلیف گسترده‌تری دارند، از جمله پشتیبانی از خط سیریلیک. . فرآیند ساخت .I groff از .MR afmtodit 1 برای تولید فایل‌های توصیف قلم از فایل‌های AFM ریخته‌گری URW استفاده می‌کند؛ بخش \[lq]فایل‌ها (FILES)\[rq] در زیر را ببینید. . . .IP \[bu] سطح .I "Intermediate service" (سرویس میانی) زمانی در دسترس است که .I \%gropdf بتواند هر ۳۵ قلم استاندارد PostScript Level 2 را پیدا کند، اما فایل‌های متریک قلم متناظر آن‌ها (AFM) در دسترس نباشند. . فرآیند ساخت .I groff فایل‌های توصیف قلم را از فایل‌های مربوط به درایور .MR grops 1 کپی کرده، و از آن‌ها مجدداً برای .I \%gropdf استفاده می‌کند؛ این کار پوشش گلیف را برای هر تایپ‌فیس به حداکثر ۲۵۶ گلیف کاهش می‌دهد، و ریخته‌گری \[lq]U\[rq] در دسترس نخواهد بود. . . .IP \[bu] سطح .I "Basic service" (سرویس پایه) زمانی حاصل می‌شود که .I \%gropdf نتواند هر ۳۵ قلم استاندارد PostScript Level 2 را پیدا کند. . تنها ۱۴ قلم پایه استاندارد PDF در دسترس خواهند بود، و آن هم فقط از این حیث که قالب‌بندی‌کننده می‌تواند از متریک‌های آن‌ها استفاده کند (که همان‌طور که در بالا شرح داده شد، از توصیف‌های قلم .MR grops کپی شده‌اند). . استفاده از گزینه .B \-e برای جاسازی قلم‌ها در PDF تولیدشده، منجر به بروز خطا می‌شود. . . .\" ==================================================================== .SS "دستورات افزونه دستگاه (Device extension commands)" .\" ==================================================================== . .I gropdf از افزونه‌های دستگاه متعددی پشتیبانی می‌کند، که با درخواست .I groff به نام .B \%device یا توالی گریز .I roff .B \[rs]X قابل دسترسی هستند. . نخست، این برنامه بسیاری از افزونه‌های دستگاه پشتیبانی‌شده توسط .MR grops 1 را درک می‌کند. . . .TP .B \[rs]X\[aq]ps: invis\[aq] جلوگیری از چاپ خروجی (پنهان‌سازی خروجی). . . .TP .B \[rs]X\[aq]ps: endinvis\[aq] پایان پنهان‌سازی خروجی. . . .TP .BI "\[rs]X\[aq]ps: exec gsave currentpoint 2 copy translate\~" n\~\c .B rotate neg exch neg exch translate\[aq] که در آن .I n زاویه چرخش است. . این برای پشتیبانی از دستور .B align در .MR \%pic 1 است. . . .TP .B \[rs]X\[aq]ps: exec grestore\[aq] توسط .MR \%pic 1 برای بازگردانی وضعیت پس از چرخش استفاده می‌شود. . . .TP .BI "\[rs]X\[aq]ps: exec " "n\~" "setlinejoin\[aq]" که در آن .I n می‌تواند یکی از مقادیر زیر باشد: . . .IP 0 = اتصال فارسی‌بر (Miter join) .br 1 = اتصال گرد (Round join) .br 2 = اتصال پخ‌دار (Bevel join) . . .TP .BI "\[rs]X\[aq]ps: exec " "n " "setlinecap\[aq]" که در آن .I n می‌تواند یکی از مقادیر زیر باشد: . . .IP 0 = لبه تخت (Butt cap) .br 1 = لبه گرد (Round cap)، و .br 2 = لبه مربعی برآمده (Projecting square cap) . . .br .ne 3v .P .I gropdf همچنین از زیرمجموعه‌ای از دستورات معرفی‌شده در .IR present.tmac مربوط به .IR gpresent پشتیبانی می‌کند. . . .RS .TP .B PAUSE .TQ .B BLOCKS .TQ .B BLOCKE .RE . . .P این دستورات به شما امکان می‌دهند پرونده‌های PDF ارائه‌ای (اسلاید) ایجاد کنید. . بسیاری از دستورات دیگر در حال حاضر در سایر بسته‌های ماکرو موجود هستند. . . .LP این دستورات با دستورات X در .I groff پیاده‌سازی شده‌اند:\- . . .LP .TP .B \[rs]X\[aq]ps: exec %%%%PAUSE\[aq] بخش قبل از این به عنوان یک بلوک در نظر گرفته می‌شود و با استفاده از تنظیمات گذر (transition) فعلی .B BLOCK معرفی می‌گردد (بخش .RB \[lq] "\[rs]X\[aq]pdf: transition\[aq]" \[rq] در زیر را ببینید). . به طور معادل، ماکروی .B \%.pdfpause نیز در دسترس است. .TP .B \[rs]X\[aq]ps: exec %%%%BEGINONCE\[aq] هر متنی که پس از این دستور بیاید (تا %%%%ENDONCE) تنها یک بار نشان داده می‌شود؛ دستور %%%%PAUSE بعدی آن را حذف خواهد کرد. اگر در حال تولید یک PDF غیرارائه‌ای هستید، یعنی نادیده گرفتن مکث‌ها (به .I \%GROPDF_NOSLIDE در زیر مراجعه کنید)، این متن نادیده گرفته می‌شود. .LP .TP .B \[rs]X\[aq]ps: exec %%%%ENDONCE\[aq] این دستور بلوک تعریف‌شده با %%%%BEGINONCE را خاتمه می‌دهد. این جفت دستور چیزی است که دستورات \&.BLOCKS Once/.BLOCKE را در .IR present.tmac پیاده‌سازی می‌کند. . . .LP بسته ماکروی .I mom پیش‌تر این افزونه‌ها را یکپارچه کرده است، بنابراین می‌توانید با .IR mom اسلاید بسازید. . . .LP اگر از .I present.tmac همراه با .I gropdf استفاده کنید نیازی به اجرای برنامه .MR presentps 1 نیست، چرا که خروجی از قبل یک PDF ارائه‌ای خواهد بود. . . .LP تمامی برچسب‌های دیگر .B ps: بدون اعلان نادیده گرفته می‌شوند. . . .LP .I gropdf همچنین یک افزونه دستگاه را که توسط درایور DVI استفاده می‌شود، تشخیص می‌دهد. . . .TP .BI \[rs]X\[aq]papersize= width , length \[aq] ابعاد صفحه را بر حسب سانتی‌متر روی .I width در .I length تنظیم می‌کند. . اگر گزینه .B \-l مشخص شده باشد، این ابعاد جابه‌جا می‌شوند. . تغییرات در ابعاد کاغذ باید پیش از صفحه نخست، یا در حین خروج صفحه قبل از شروع صفحه بعدی اعمال شود. . . .IP .I هشدار: ترتیب ابعاد با ترتیبی که توسط .I papersize.tmac و گزینه .RB \[lq] "\-d \%paper" \[rq] در .MR \%troff 1 استفاده می‌شود متفاوت است. . . .TP .BI "\[rs]X\[aq]pdf: markstart " /ANN-definition \[aq] .TQ .B \[rs]X\[aq]pdf: markend\[aq] ماکروهایی که از قابلیت‌های PDF پشتیبانی می‌کنند از این دستورات افزونه به صورت داخلی برای احاطه کردن متن .I نقطه حساس (hotspot) (یک ابرپیوند) استفاده می‌کنند. . اسناد کاربری در عوض باید ماکروی .B \%.pdfhref را فراخوانی کنند. . کاربرد آن‌ها در سایر بسته‌های ماکرو یافت می‌شود (مانند .MR groff_man 7 یا .MR groff_mdoc 7 ) که .B \%.pdfhref را با یک آرگومان .B \-S فراخوانی کرده، سپس پایان متن نقطه حساس را با .BR "\[rs]X\[aq]pdf: markend\[aq]\[rs]m[\[rs]*[pdf:curcol]]" مشخص می‌کنند. . . .TP .B \[rs]X\[aq]pdf: xrev\[aq] تغییر وضعیت معکوس‌سازی جهت گلیف‌ها (نشانه‌ها). . این قابلیت با معکوس کردن تمامی متن‌های بعدی کار می‌کند. هر حرف جداگانه نیز آینه‌ای می‌شود. . یک کاربرد آن، معکوس‌سازی گلیف‌ها در قلم Zapf Dingbats است. . برای بازگردانی جهت عادی گلیف‌ها، دستور را تکرار کنید. . . .LP .I gropdf از چندین افزونه دستگاه دیگر با استفاده از برچسب .B pdf: پشتیبانی می‌کند. . موارد زیر دارای .I "ماکروهای تسهیل‌کننده" مشابهی هستند که همان آرگومان‌ها را می‌پذیرند و رفتاری یکسان دارند. . . .TP .BI ".pdfbackground " "cmd left top right bottom weight" .TQ .B ".pdfbackground off" .TQ .BI ".pdfbackground footnote " bottom .TQ .BI "\eX\[aq]pdf: background " "cmd left top right bottom weight" \[aq] .TQ .B "\eX\[aq]pdf: background off\[aq]" .TQ .BI "\eX\[aq]pdf: background footnote " bottom \[aq] یک مستطیل پس‌زمینه در صفحه ایجاد می‌کند. . . .RS .TP 8n \" "bottom" + 2n .I cmd دستور مورد نظر است، که می‌تواند هر ترکیبی از .RB \[lq] page | fill | box \[rq] باشد. . بنابراین، .RB \[lq] pagefill \[rq] مستطیلی رسم می‌کند که تمام اندازه صفحه جاری را می‌پوشاند (که در این حالت باقی پارامترها را می‌توان نادیده گرفت زیرا ابعاد کادر از اندازه رسانه جاری گرفته می‌شود). . از سوی دیگر، .RB \[lq] boxfill \[rq] برای قرار دادن کادر به ابعاد داده‌شده نیاز دارد. . گنجاندن .RB \[lq] fill \[rq] در دستور، مستطیل را با رنگ پرکردن (fill) جاری رنگ‌آمیزی می‌کند (مشابه .BR \[rs]M[] ) و گنجاندن .RB \[lq] box \[rq] به مستطیل حاشیه‌ای با رنگ خط (stroke) جاری می‌دهد (مشابه .BR \[rs]m[] ). . . .IP .I cmd همچنین می‌تواند به تنهایی .RB \[lq] off \[rq] باشد، که رسم کادر جاری را پایان می‌دهد. . اگر رنگ صفحه‌ای را با .RB \[lq] pagefill \[rq] مشخص کرده باشید، همواره اولین کادر در پشته خواهد بود، و اگر دوباره آن را مشخص کنید، جایگزین ورودی اول می‌شود. . توجه داشته باشید که کادر .RB \[lq] pagefill \[rq] صفحه را کدر (مات) می‌کند، بنابراین ابزارهایی که صفحات PDF را «واترمارک» می‌کنند به احتمال زیاد موفق نخواهند بود. . برای بازگرداندن پس‌زمینه به حالت شفاف، یک دستور .RB \[lq] off \[rq] بدون اینکه کادر دیگری باز باشد صادر کنید. . . .IP در نهایت، .I cmd می‌تواند .RB \[lq] footnote \[rq] باشد که به دنبال آن یک مقدار جدید برای .IR bottom می‌آید، که برای تمام کادرهای باز در صفحه جاری استفاده می‌شود. این کار برای اختصاص فضای لازم برای نواحی پاورقی است که با پردازش صفحه رشد می‌کنند (برای نمونه، جهت گنجاندن چندین پاورقی). . (اگر مقدار منفی باشد، به عنوان آفست از پایین صفحه استفاده می‌شود.) . . .TP .I left .TQ .I top .TQ .I right .TQ .I bottom مختصات کادر هستند. . مختصات .I top و .I bottom حداقل و حداکثر برای کادر هستند، زیرا شروع واقعی کادر همان موقعیت رسم .IR groff هنگام صدور دستور است، و انتهای کادر نقطه‌ای است که در آن کادر را .RB \[lq] off \[rq] می‌کنید. . مختصات top و bottom تنها زمانی استفاده می‌شوند که رسم کادر به صفحه بعدی کشیده شود؛ به‌طور معمول، آن‌ها روی حاشیه‌های سربرگ و پانویس تنظیم می‌شوند. . . .TP .I weight عرض خط را برای حاشیه تعیین می‌کند در صورتی که .RB \[lq] box \[rq] در دستور گنجانده شده باشد. . . .P یک پرونده ماکروی .I sboxes نیز در دسترس است؛ .MR groff_tmac 5 را ببینید. .RE . . .br .ne 6v .TP .B .pdfmarksuspend .TQ .B .pdfmarkrestart .TQ .B \[rs]X\[aq]pdf: marksuspend\[aq] .TQ .B \[rs]X\[aq]pdf: markrestart\[aq] اگر برای ایجاد سربرگ یا پانویس، یا به گونه‌ای دیگر برای ایجاد وقفه در متن سند از یک تله مکانی صفحه استفاده می‌کنید، در صورتی که یک .I نقطه حساس (hotspot) در PDF از مرز تله عبور کند، باید از این دستورات استفاده نمایید؛ در غیر این صورت هر متنی که توسط تله خروجی داده شود، به عنوان بخشی از نقطه حساس علامت‌گذاری خواهد شد. . برای جلوگیری از این خطا، این توالی‌های گریز افزونه دستگاه یا ماکروهای تسهیل‌کننده متناظر آن‌ها یعنی .B \%.pdfmarksuspend و .B \%.pdfmarkrestart را به ترتیب در ابتدا و انتهای ماکروی تله قرار دهید. . . .TP .BI ".pdfpagename " name .TQ .BI "\[rs]X\[aq]pdf: pagename " name \[aq] اختصاص یک .I name (نام) به صفحه فعلی. . همه اسناد دارای دو نام پیش‌فرض .RB \[oq] top "\[cq] و \[oq]" bottom \[cq] هستند. . . .TP .BI ".pdfpagenumbering " "type prefix start" .TQ .BI "\[rs]X\[aq]pdf: pagenumbering " "type prefix start" \[aq] .RS شماره‌گذاری صفحات نمایش‌یافته در نمای کلی (outline) یک پی‌دی‌اف‌خوان (که شامل نشانک‌ها نیز هست) را کنترل می‌کند. . به‌طور معمول، شماره صفحه مرتبط با هر نشانک، شماره ترتیبی آن در فایل است، اما این ممکن است با طرح شماره‌گذاری مطلوب همخوانی نداشته باشد. . یک سند ممکن است دارای یک برگه جلد (که فاقد شماره صفحه است)؛ بخش مقدماتی (احتمالاً شامل فهرست مطالب) که از اعداد رومی کوچک استفاده می‌کند؛ متن اصلی، که از اعداد عربی استفاده می‌کند؛ و بخش پایانی، که ممکن است شامل پیوست‌هایی باشد که هرکدام با یک حرف پیشوندگذاری شده و به‌طور مستقل شماره‌گذاری شده‌اند، باشد. . این دستور را پیش از شکستن صفحه‌ای که طرح شماره‌گذاری جدید باید روی آن اعمال شود، قرار دهید. . سپس تا زمانی که دوباره تغییر داده نشود، پایدار می‌ماند. . . .P .TP 8n \" "prefix" + 2n .I type سیستم شماره‌گذاری مورد استفاده را تعیین می‌کند. این مقدار باید یکی از .RB \[lq] Decimal \[rq]، .RB \[lq] Roman \[rq]، .RB \[lq] roman \[rq]، .RB \[lq] Alpha \[rq] یا .RB \[lq] alpha \[rq] باشد. . این پارامتر می‌تواند به حرف اول خود خلاصه شود، که بزرگی یا کوچکی آن حرف، بزرگی یا کوچکی حروف مورد استفاده در اعداد را در صورت امکان تعیین می‌کند. . ترتیب استفاده‌شده توسط سیستم‌های شماره‌گذاری الفبایی به‌صورت A-Z \&.\|.\|.\& AA-AZ \&.\|.\|.\& ZA-ZZ است. . .I type همچنین می‌تواند .RB \[lq] .\& \[rq] باشد، که هیچ سیستم شماره‌گذاری را انتخاب نمی‌کند؛ با این حال همچنان می‌توانید یک .I prefix ارائه دهید. . . .TP .I prefix متنی را مشخص می‌کند که پیش از شماره صفحه قرار می‌گیرد. . برای مثال، جهت شماره‌گذاری صفحات یک پیوست به‌صورت \[lq]A-1\[rq]، \[lq]A-2\[rq] و الی آخر، از یک .I prefix با مقدار .RB \[lq] A- \[rq] و یک .I type با مقدار .RB \[lq] Decimal \[rq] استفاده کنید. . . .TP .I start شماره صفحه را تعیین می‌کند. . مقدار پیش‌فرض آن 1 است. .RE . . .TP .BI ".pdfpic " "file alignment width height line-length" .TQ .\" XXX: For consistency, this device extension command should be "pic". .\" --GBR .BI "\[rs]X\[aq]pdf: pdfpic " file\~\c .IB "alignment width height line-length" \[aq] تصویری را از فایل .I file با .I width (عرض) و .I height (ارتفاع) دلخواه درج می‌کند (اگر .I height مشخص نشده یا صفر باشد، اندازه آن متناسب تغییر مقیاس می‌یابد). . اگر .I alignment برابر با .B \-L باشد، طرح چپ‌چین می‌شود. . اگر برابر با .B \-C یا .B \-R باشد، تعیین یک .I line-length بزرگ‌تر از عرض طرح نیز الزامی است. . اگر .I width صفر مشخص شده باشد، عرض متناسب با ارتفاع تغییر مقیاس می‌دهد. . اگر هر دو مقدار .I width و .I height غیر صفر باشند، تصویر به حالت «بهترین برازش» (\[oq]best fit\[cq]) تغییر مقیاس می‌یابد. . . .IP در دسترس بودن سایر نرم‌افزارها روی سیستم، مانند .IR PerlMagick ، بر انواع فایل‌های تصویری که .I gropdf می‌تواند در خروجی خود جاسازی کند اثر می‌گذارد. . . .IP .TS allbox center; Cb Ci Ci Ci Ci Li C C C C. \& \fRnone file\fR(1) identify\fR(1) Image::Magick\fR(3pm) \&.pdf \[OK] \[OK] \[OK] \[OK] \&.jpg \[u2717] \[OK] \[OK] \[OK] \&.jp2 \[u2717] \[u2717] \[OK] \[OK] \fRother \[u2717] \[u2717] \[u2717] \[OK] .TE . . .IP برای توضیحات ماکروی .B \%PDFPIC که یک رابط سطح‌بالا و راحت را برای گنجاندن فرمت‌های مختلف فایل گرافیکی فراهم می‌کند، به .MR groff_tmac 5 مراجعه کنید. . . .TP .BI ".pdfswitchtopage " "when name" .TQ .BI "\[rs]X\[aq]pdf: switchtopage " "when name" \[aq] به‌طور معمول هر صفحه جدید به انتهای سند افزوده می‌شود؛ این دستور امکان درج صفحات بعدی را در یک موقعیت .I \[oq]named\[cq] (نام‌گذاری‌شده) درون سند فراهم می‌سازد (دستور pagename در بالا را ببینید). .I \[oq]when\[cq] می‌تواند .RI \[oq] after "\[cq] یا \[oq]" before \[cq] باشد. اگر حذف شود، مقدار پیش‌فرض آن .RI \[oq] before \[cq] است. . این دستور باید در انتهای صفحه‌ای پیش از جایی که می‌خواهید جابجایی رخ دهد، استفاده شود. . این قابلیت اجازه می‌دهد صفحاتی مانند فهرست مطالب (TOC) به جای دیگری از سند منتقل شوند، اما کاربردهای تخصصی‌تر دیگری نیز امکان‌پذیر است. . . .br .ne 5v .TP .BI ".pdftransition " "scope mode duration dimension motion direction\ scale bool" .TQ .BI "\[rs]X\[aq]pdf: transition " scope\~\c .IB "mode duration dimension motion direction scale bool" \[aq] سبک گذار (transition) صفحات را، همان‌گونه که در «اسلایدها» (\[lq]slides\[rq] یا \[lq]foils\[rq]) به‌کار می‌رود، پیکربندی می‌کند. . .I scope می‌تواند .B SLIDE یا .BR BLOCK باشد. . .B SLIDE گذار را هنگامی اعمال می‌کند که یک اسلاید جدید به صفحه نمایش معرفی می‌شود؛ .B BLOCK آن را روی بلوک‌های مجزایی که اسلاید را تشکیل می‌دهند اعمال می‌کند. . . .IP .I mode نوع گذار میان اسلایدها است: .RS .IP .B Split \- دو خط در عرض صفحه حرکت می‌کنند و صفحه جدید را آشکار می‌سازند. خطوط می‌توانند افقی یا عمودی باشند و به سمت داخل از لبه‌های صفحه یا به سمت خارج از مرکز صفحه حرکت کنند، همان‌طور که به‌ترتیب با ورودی‌های .I dimension و .I motion مشخص شده است. .br .B Blinds \- خطوط چندگانه با فاصله‌های مساوی در عرض صفحه، به‌طور همگام در یک جهت حرکت می‌کنند تا صفحه جدید را آشکار سازند. خطوط می‌توانند بر اساس ورودی .I dimension افقی یا عمودی باشند. خطوط افقی به سمت پایین حرکت می‌کنند؛ خطوط عمودی به سمت راست حرکت می‌کنند. .br .B Box \- یک کادر مستطیلی از لبه‌های صفحه به سمت داخل یا از مرکز صفحه به سمت بیرون، همان‌طور که با ورودی .I motion مشخص شده، حرکت کرده و صفحه جدید را آشکار می‌سازد. .br .B Wipe \- یک خط تکی در سراسر صفحه از یک لبه به لبه دیگر در جهت مشخص‌شده توسط ورودی .I direction حرکت می‌کند و صفحه جدید را آشکار می‌سازد. .br .B Dissolve \- صفحه قدیمی به تدریج محو می‌شود تا صفحه جدید پدیدار گردد. .br .B Glitter \- مانند Dissolve، با این تفاوت که جلوه در یک نوار پهن در طول صفحه از یک طرف صفحه نمایش به طرف دیگر در جهت مشخص‌شده توسط ورودی .I direction حرکت می‌کند. .br .B R \- صفحه جدید به سادگی و بدون هیچ جلوه گذار خاصی جایگزین صفحه قدیمی می‌شود؛ ورودی .I direction نادیده گرفته خواهد شد. .br .B Fly \- (PDF 1.5) تغییرات به داخل یا خارج پرواز می‌کنند (همان‌طور که توسط .I motion مشخص شده)، در جهتی که با .I direction مشخص شده است، به یا از مکانی خارج از صفحه نمایش، مگر زمانی که .I direction برابر با .BR None باشد. .br .B Push \- (PDF 1.5) صفحه قدیمی به بیرون از صفحه نمایش می‌لغزد در حالی که صفحه جدید به داخل می‌لغزد و صفحه قدیمی را در جهت مشخص‌شده توسط .IR direction به بیرون می‌راند. .br .B Cover \- (PDF 1.5) صفحه جدید در جهت مشخص‌شده توسط .IR direction به درون صفحه نمایش می‌لغزد و صفحه قدیمی را می‌پوشاند. .br .B Uncover \- (PDF 1.5) صفحه قدیمی در جهت مشخص‌شده توسط .IR direction به بیرون صفحه نمایش می‌لغزد و صفحه جدید را در جهت مشخص‌شده توسط .IR direction آشکار می‌سازد. .br .B Fade \- (PDF 1.5) صفحه جدید به تدریج از میان صفحه قدیمی پدیدار می‌شود. .RE .IP .I duration طول مدت گذار بر حسب ثانیه است (پیش‌فرض 1). .IP .I dimension (اختیاری؛ فقط در سبک‌های گذار .BR Split " و " Blinds ) بُعدی که جلوه گذار مشخص‌شده باید در آن رخ دهد: .B H افقی (Horizontal)، یا .B V عمودی (Vertical). .IP .I motion (اختیاری؛ فقط در سبک‌های گذار .BR Split ، .BR Box " و " Fly ) جهت حرکت برای جلوه گذار مشخص‌شده: .B I رو به داخل (Inward) از لبه‌های صفحه، یا .B O رو به خارج (Outward) از مرکز صفحه. .IP .I direction (اختیاری؛ فقط در سبک‌های گذار .BR Wipe ، .BR Glitter ، .BR Fly ، .BR Cover ، .BR Uncover " و " Push ) جهتی که جلوه گذار مشخص‌شده باید در آن حرکت کند، که بر حسب درجه در خلاف جهت عقربه‌های ساعت و با شروع از جهت چپ‌به‌راست بیان می‌شود. اگر مقدار یک عدد باشد، باید یکی از مقادیر زیر باشد: .B 0 = چپ به راست، .B 90 = پایین به بالا (فقط Wipe)، .B 180 = راست به چپ (فقط Wipe)، .B 270 = بالا به پایین، .B 315 = بالا-چپ به پایین-راست (فقط Glitter). این مقدار می‌تواند .BR None نیز باشد، که تنها برای گذار .B Fly هنگامی که مقدار .I scale برابر با 1.0 نباشد کاربرد دارد. .IP .I scale (اختیاری؛ PDF 1.5؛ فقط در سبک گذار .BR Fly ) مقیاس شروع یا پایان که تغییرات باید در آن ترسیم شوند. اگر .I motion یک گذار به سمت داخل را مشخص کند، مقیاس تغییرات ترسیم‌شده در طول گذار، از .I scale به 1.0 پیش می‌رود. اگر .I motion یک گذار به سمت خارج را مشخص کند، مقیاس تغییرات ترسیم‌شده در طول گذار، از 1.0 به .I scale پیش می‌رود. .IP .I bool (اختیاری؛ PDF 1.5؛ فقط در سبک گذار .BR Fly ) اگر .BR true باشد، ناحیه‌ای که باید به داخل پرواز کند مستطیلی و کدر خواهد بود. .IP هر یک از پارامترها می‌تواند با یک "." جایگزین شود که نشان می‌دهد پارامتر مقدار قبلی خود را حفظ می‌کند؛ همچنین هر پارامتر مفقود در انتها نادیده گرفته می‌شود. .IP .B نکته: همه پی‌دی‌اف‌خوان‌ها از همه یا هیچ‌یک از این گذارها پشتیبانی نمی‌کنند. . . .\" ==================================================================== .SS "ماکروها (Macros)" .\" ==================================================================== . ماکروهای پشتیبانی .IR gropdf در .I pdf\.tmac ماکروهای تسهیل‌کننده‌ای را که در بالا شرح داده شد، تعریف می‌کنند. . برخی قابلیت‌ها هیچ معادل مستقیمی در دنباله‌های گریز افزونه دستگاه ندارند. . . .TP .BR ".pdfbookmark " [ \-T\~\c .IR tag-name ]\~ "level text" نزدیک‌ترین مکان صفحه را به عنوان یک نشانه (bookmark)، و در صورت تمایل یک مقصد نام‌گذاری‌شده، نشانه‌گذاری می‌کند. . .I "نشانه‌ها (Bookmarks)" قاب طرح کلی (outline pane) خواننده را پر می‌کنند. . آن‌ها در یک درخت سلسله‌مراتبی سازماندهی می‌شوند؛ هر سطح از درخت، با شروع از ۱، شماره‌گذاری شده و با .I text در طرح کلی نام‌گذاری می‌شود. . .I "مقاصد نام‌گذاری‌شده (Named destinations)" امکان پیمایش به سبک ابرپیوند را در سند فراهم می‌کنند. . مشخص کردن .B \-T به همراه .I tag-name یک مقصد نام‌گذاری‌شده ایجاد می‌کند که این مکان صفحه را به عنوان هدفی تعیین‌شده توسط .RB \[lq] ".pdfhref L" \~.\|.\|.\&\[rq] واجد شرایط می‌سازد. . . .TP .BR ".pdfhref L" \~\c .BI \-D\~ dest\~\c .RB [ \-S ] \~\c .RB [ \-P \~\c .IR prefix-text "] \c" .RB [ \-A \~\c .IR suffix-text "] \c" .RI [ link-text ] یک پیوند نقطه حساس به .I dest (همان .IR tag-name ) ایجاد می‌کند که فراخوانی .RB \[lq] .pdfbookmark \~.\|.\|.\&\[rq] یا .RB \[lq] ".pdfhref M" \~.\|.\|.\&\[rq] در جای دیگری از سند باید آن را تعریف کرده باشد. . (اگر سند از ارجاعات رو به جلو استفاده می‌کند، باید دو بار پردازش شود؛ .MR pdfmom 1 را ببینید.) . اگر .I link-text حذف شود، متنی که هنگام ایجاد .IR dest به آن اختصاص یافته بود، به عنوان متن پیوند قالب‌بندی می‌شود. . آرگومان‌های .B \-P و .B \-A موارد پس از خود را به ترتیب به صورت متنی قبل و بعد از متن پیوند، بدون هیچ فاصله میانی، قالب‌بندی می‌کنند. . مشخص کردن .B \-S مانع از آن می‌شود که .B pdfhref نقطه حساس را «ببندد»، که سند (یا بسته ماکرویی که .B pdfhref را در بر می‌گیرد) را ملزم می‌سازد این کار را خودش با .RB \[lq] "\[rs]X\[aq]pdf: markend\[aq]\[rs]m[\[rs]*[pdf:curcol]]" \[rq] انجام دهد. . . .TP .BR ".pdfhref M" \~\c .RB [ \-E ]\~\c .RB [ \-N \~\c .IR tag-name ]\~\c .I dest نزدیک‌ترین مکان صفحه را به عنوان مقصدی به نام (اولین کلمه از) .I dest علامت‌گذاری می‌کند که باید درون سند یکتا باشد. . مشخص کردن .B \-T به همراه .I tag-name این پیش‌فرض را لغو می‌کند. . مشخص کردن .B \-E همچنین .I dest را به عنوان متن در سند قالب‌بندی می‌کند. . . .TP .BR ".pdfhref W" \~\c .BI \-D\~ uri\~\c .RB [ \-S ] \~\c .RB [ \-P \~\c .IR prefix-text "] \c" .RB [ \-A \~\c .IR suffix-text "] \c" .I link-text .\" The link-text argument is not, presently, optional. See Savannah .\" #67916. .\" RI [ link-text ] یک پیوند نقطه حساس به .I uri ایجاد می‌کند که یک شناسه جهانی منبع (URI) در وب جهانی است. . .\" XXX: Nope--pdf.tmac formats "Unknown" as the link text instead. See .\" Savannah #67916. .\" If .\" .I link-text .\" is omitted, .\" .I uri .\" is formatted as the link text. . آرگومان‌های .B \-P و .B \-A موارد پس از خود را به ترتیب به صورت متنی قبل و بعد از متن پیوند، بدون هیچ فاصله میانی، قالب‌بندی می‌کنند. . مشخص کردن .B \-S مانع از آن می‌شود که .B pdfhref نقطه حساس را «ببندد»، که سند (یا بسته ماکرویی که .B pdfhref را در بر می‌گیرد) را ملزم می‌سازد این کار را خودش با .RB \[lq] "\[rs]X\[aq]pdf: markend\[aq]\[rs]m[\[rs]*[pdf:curcol]]" \[rq] انجام دهد. . . .TP .\" XXX: We don't need to expose PDF's '/' syntax in a *roff macro .\" file. It should prefix "field" with '/' itself. -- GBR .BI ".pdfinfo /" "field content"\~\c \&.\|.\|. فراداده پی‌دی‌اف را تعریف می‌کند. . .I field می‌تواند یکی از موارد .BR Title ، .BR Author ، .BR Subject ، .BR Keywords یا داده دیگری باشد که توسط استاندارد PDF یا خواننده شما پشتیبانی می‌شود. . .I field باید با یک اسلش پیشوندگذاری شود. . . .TP .BR ".pdfnote " [ \-T\~\c .IR title ]\~ text یک حاشیه‌نویسی در سند ایجاد می‌کند. . پشتیبانی برنامه‌های خواننده از این ویژگی متفاوت است. . برخی نمادی را در موقعیت فعلی در صفحه قرار می‌دهند؛ نگه‌داشتن اشاره‌گر روی نماد، .IR title احتمالی را آشکار می‌کند، در حالی که کلیک روی نماد پنجره‌ای حاوی .I text را باز می‌کند. . . .br .ne 12v .\" ==================================================================== .SS "پارامترها (Parameters)" .\" ==================================================================== . پارامترهای زیر، که به عنوان خطوط کنترل .I roff نشان داده شده‌اند، بر عملکرد .IR gropdf تأثیر می‌گذارند. . . .P .TS box; Cb Cb Cb Lf(CR)p-1 Lx L . پارامتر هدف پیش‌فرض _ \&.nr PDFNOTE.WIDTH T{ .na تنظیم عرض نماد حاشیه‌نویسی. T} 1c \&.nr PDFNOTE.HEIGHT T{ .na تنظیم ارتفاع نماد حاشیه‌نویسی. T} 1c \&.ds PDFNOTE.COLOR T{ .na تنظیم رنگ RGB نماد حاشیه‌نویسی (RGB) T} 1.00 1.00 0.00 \&.ds PDFNOTE.OPACITY T{ .na تنظیم میزان کدر بودن نماد حاشیه‌نویسی (مقدار اعشاری در [0, 1]). T} 0.6 .\" XXX: Why not use \n[.R] for the next item's default? --GBR \&.nr PDFOUTLINE.FOLDLEVEL T{ .na تنظیم عمق سلسله‌مراتب نشانه‌های مرئی. T} 10000 \&.nr PDFHREF.VIEW.LEADING T{ .na تنظیم تعدیل موقعیت هنگام کلیک روی نشانه یا نقطه حساس داخلی. T} 5p \&.nr PDFHREF.LEADING T{ .na پیکربندی اندازه ناحیه کلیک‌پذیر افزایش‌یافته پیرامون یک نقطه حساس. T} 2.0p .\" XXX: Why require the user to specify two leading space-separated .\" zeroes? What do they mean? Why are we exposing this via the macro .\" package's API? Why not have a register named PDFHREF.BORDERWIDTH .\" that accepts a width value, and default it to use points? --GBR .\" .\" I add that if we're going to start improving this API, we could get .\" a good start by disposing of all these screaming capitals. --GBR \&.ds PDFHREF.BORDER T{ .na پیکربندی پهنای حاشیه پیرامون نقطه حساس با تعیین دو صفر و به دنبال آن پهنای مورد نظر بر حسب پوینت. . از واحد مقیاس‌بندی استفاده نکنید. T} 0 0 0 \&.ds PDFHREF.COLOR T{ .na تنظیم رنگ RGB متن پیوند. T} 0.00 0.35 0.60 .TE . . .P در موارد بالا، می‌توانید \[lq]COLOR\[rq] را در نام‌های رشته به صورت \[lq]COLOUR\[rq] نیز بنویسید. . . .\" ==================================================================== .SS "وارد کردن گرافیکهای PDF (Importing PDF graphics)" .\" ==================================================================== . اگر تصویری را به عنوان یک فایل PDF وارد می‌کنید، این پرونده باید تک‌صفحه‌ای باشد و نقاشی باید دقیقاً درون ابعاد رسانه فایل PDF جای بگیرد. . برای مثال، در .MR inkscape 1 یا .MR gimp 1 ، اطمینان حاصل کنید که اندازه بوم نقاشی دقیقاً به اندازه تصویر باشد. . . .P تجزیه‌کنندهٔ PDF که .I gropdf پیاده‌سازی می‌کند، به صورت جامع با همه برنامه‌هایی که PDF تولید می‌کنند آزمایش نشده است. . اگر به یک فایل PDF تک‌صفحه‌ای برخوردید که به درستی وارد نمی‌شود، پردازش آن را با برنامه .MR pdftk 1 امتحان کنید. . . .RS .EX pdftk\~\c .I existing-file\~\c output\~\c .I new-file .EE .RE . ممکن است متوجه شوید که .I new-file با موفقیت وارد می‌شود. . . .\" ==================================================================== .SS "قالبهای فونت TrueType و دیگر موارد (TrueType and other font formats)" .\" ==================================================================== . .I gropdf هنوز از هیچ قالب فونتی به جز Adobe Type 1 (شامل PFA یا PFB) پشتیبانی نمی‌کند. . . .\" ==================================================================== .SH "نصب قلم (Font installation)" .\" ==================================================================== . جهت سهولت کار شما، .I groff اسکریپت .IR install\-font.bash را ارائه می‌دهد؛ یک اسکریپت پوسته که به‌طور تعاملی به پیکربندی قلم‌ها برای استفاده با قالب‌بند GNU .I troff \" GNU و راه‌انداز خروجی .I gropdf کمک می‌کند. . بخش \[lq]فایل‌ها (Files)\[rq] در ادامه را ببینید. . . .P در ادامه یک راهنمای گام‌به‌گام برای نصب قلم در .I gropdf ارائه شده است. . . .IP \[bu] 3n قلم خود را به قالبی تبدیل کنید که .I groff متوجه آن شود. . این قالب شامل یک قلم PostScript نوع یک (Type\~1) در فرمت PFA یا PFB، همراه با یک پروندهٔ AFM است. . یک پروندهٔ PFA به‌صورت زیر آغاز می‌شود. . .RS .RS \" two RS calls to get inboard of IP indentation .EX %!PS\-AdobeFont\-1.0: .EE .RE \" but only one to get back to it . یک پروندهٔ PFB نیز حاوی این رشته است، که پیش از آن چند بایت غیرقابل‌چاپ قرار دارد. . در مراحل زیر، استفاده از قلم .UR https://\:ctan.org/\:tex\-archive/\:fonts/\:brushscr BrushScriptX-Italic .UE موجود در CTAN در قالب PFA را در نظر خواهیم گرفت. .RE \" now restore left margin . . .IP \[bu] پروندهٔ AFM را با استفاده از برنامهٔ .MR afmtodit 1 به یک پروندهٔ توصیف قلم .I groff تبدیل کنید. . برای نمونه، . .RS .RS \" two RS calls to get inboard of IP indentation .EX $ \c .B afmtodit BrushScriptX\-Italic.afm text.map BSI .EE .RE \" but only one to get back to it . پروندهٔ سنجش قلم ادوبی (Adobe Font Metric) .I BrushScriptX\-Italic.afm را به پروندهٔ توصیف قلم .I groff با نام .I BSI تبدیل می‌کند. .RE \" now restore left margin . . .IP اگر یک خانوادهٔ قلم دارید که سبک‌های معمولی قائم (roman)، پررنگ (bold)، مورب (italic) و پررنگ\-مورب (bold-italic) را ارائه می‌دهد (که در آن \[lq]italic\[rq] ممکن است \[lq]oblique\[rq] یا \[lq]slanted\[rq] باشد)، پیشنهاد می‌کنیم به‌ترتیب از .BR R ، .BR B ، .BR I و .BR BI به‌عنوان پسوندهای نام خانوادهٔ قلم .I groff استفاده کنید تا قابلیت‌های انتخاب سبک و خانوادهٔ قلم .I groff فعال شوند. . یک نمونه، پشتیبانی توکار .I groff از Times است: نام این خانوادهٔ قلم به‌صورت اختصاری .B T است و بنابراین نام‌های قلم .I groff عبارتند از .BR TR ، .BR TB ، .BR TI و .BR TBI . . با این حال در مثال ما، قلم BrushScriptX تنها در یک سبک، یعنی مورب (italic) در دسترس است. . . .IP \[bu] پرونده(های) توصیف قلم .I groff را در یک زیرشاخهٔ .I devpdf درون مسیر جستجویی که .I groff برای توصیف‌های پرونده‌های دستگاه و قلم استفاده می‌کند، نصب کنید. . مدخل .I GROFF_FONT_PATH در بخش \[lq]محیط (Environment)\[rq] از .MR \%troff 1 را برای آگاهی از مقدار فعلی مسیر جستجوی قلم ببینید. . اگرچه .I groff به‌طور مستقیم از پرونده‌های AFM استفاده نمی‌کند، اما ایدهٔ خوبی است که آن‌ها را در کنار پرونده‌های توصیف قلم آن نگهداری کنید. . . .IP \[bu] قلم‌ها را در پروندهٔ .I devpdf/download ثبت کنید تا برای جای‌گذاری در پرونده‌های PDF که .I gropdf تولید می‌کند، قابل شناسایی و مکان‌یابی باشند. . تنها نخستین پروندهٔ .I download که در مسیر جستجوی قلم یافت شود، خوانده می‌شود. . در صورت تردید، پروندهٔ پیش‌فرض .I download (بخش \[lq]فایل‌ها (Files)\[rq] در زیر را ببینید) را در اولین پوشه در مسیر جستجوی قلم رونوشت کرده و قلم‌های خود را در آنجا بیفزایید. . نام قلم PostScript مورد استفادهٔ .I gropdf در فیلد .B internalname درون پروندهٔ توصیف قلم .I groff ذخیره شده است. . (این نام لزوماً شبیه به نام پروندهٔ قلم نیست.) . اگر قلم در مثال ما از کارگاه ریخته‌گری حروفی به نام .B Z آمده بود، خط زیر را به پروندهٔ .I download اضافه می‌کردیم: . .RS .RS \" two RS calls to get inboard of IP indentation .EX Z\[->]BrushScriptX\-Italic\[->]BrushScriptX\-Italic.pfa .EE .RE \" but only one to get back to it . یک نویسهٔ تب (tab)، که با \[->] نشان داده شده است، فیلدها را از هم جدا می‌کند. . ریخته‌گری پیش‌فرض نامی ندارد: فیلد آن خالی است و مدخل‌های مربوط به آن با یک نویسهٔ تب آغاز می‌شوند، همان‌طور که در مثال ما خواهد بود. .RE \" now restore left margin . . .IP \[bu] انتخاب و جای‌گذاری قلم جدید را آزمایش کنید. . .RS .RS \" two RS calls to get inboard of IP indentation .EX printf "\[rs]\[rs]f[BSI]Hello, world!\[rs]n" \ | groff \-T pdf \-P \-e >hello.pdf see hello.pdf .EE .RE .RE . . .\" ==================================================================== .SH "وضعیت خروج (Exit status)" .\" ==================================================================== . .IP 0 .I gropdf سند PDF را با موفقیت تولید کرد. . . .IP 1 .I gropdf با یک خطای بحرانی مواجه شد، یا هشدارهایی صادر شدند و گزینه .B \-W مشخص شده بود. . . .IP 2 .I gropdf نتوانست آرگومان‌های خط فرمان خود را تفسیر کند. . . .br .ne 5v .\" ==================================================================== .SH "محیط (ENVIRONMENT)" .\" ==================================================================== . .TP .I GROFF_FONT_PATH فهرستی از دایرکتوری‌ها که در آن‌ها به دنبال دایرکتوری پرونده‌های توصیف دستگاه و قلم مربوط به دستگاه خروجی انتخاب‌شده جستجو می‌شود. . اگر در پرونده .I download پرونده قلم با یک مسیر کامل مشخص شده باشد، هیچ دایرکتوری‌ای جستجو نمی‌شود. . ببینید: .MR \%troff 1 و .MR groff_font 5 . . . .TP .I GROPDF_NOSLIDE اگر مقداردهی شده و (از نظر Perl) به یک مقدار درست (true) ارزیابی شود، .\" XXX: The above is inconsistent with the way grotty(1) handles .\" "GROFF_NO_SGR". .I gropdf دستورات مختص فایل‌های PDF ارائه را نادیده می‌گیرد و در عوض یک سند PDF معمولی تولید می‌کند. . . .TP .I GROPDF_OPTIONS .I gropdf محتوای این متغیر محیطی را به عنوان فهرستی از گزینه‌های خط فرمان که با فاصله از هم جدا شده‌اند، تفسیر می‌کند. . گزینه‌های صریح خط فرمان بر هرگونه تنظیمات ناشی از این متغیر محیطی اولویت دارند. . . .TP .I SOURCE_DATE_EPOCH یک برچسب زمان (بیان‌شده به صورت ثانیه‌های سپری‌شده از مبدأ یونیکس) برای استفاده به عنوان برچسب زمان ایجاد خروجی به جای زمان فعلی. . زمان با استفاده از تابع .I \%gmtime() در Perl به فرم خوانا برای انسان تبدیل شده و در یک توضیح PDF ثبت می‌شود. . . .TP .I TZ منطقه زمانی مورد استفاده هنگام تبدیل زمان کنونی به قالبی خوانا برای انسان؛ ببینید: .MR tzset 3 . اگر .I SOURCE_DATE_EPOCH استفاده شود، همواره با استفاده از UTC به قالبی خوانا برای انسان تبدیل می‌گردد. . . .\" ==================================================================== .SH "فایلها (FILES)" .\" ==================================================================== . .TP .I /usr/\:\%share/\:\%groff/\:\%1.24.1/\:\%font/\:\%devpdf/\:DESC دستگاه خروجی .B pdf را توصیف می‌کند. . . .TP .IR /usr/\:\%share/\:\%groff/\:\%1.24.1/\:\%font/\:\%devpdf/ F قلم شناخته‌شده با نام .I F روی دستگاه .BR pdf را توصیف می‌کند. . . .TP .IR /usr/\:\%share/\:\%groff/\:\%1.24.1/\:\%font/\:\%devpdf/\:U\- F قلم ارائه‌شده از سوی مؤسسه طراحی قلم URW (در برابر پیش‌فرض Adobe) شناخته‌شده با نام .I F روی دستگاه .BR pdf را توصیف می‌کند. . . .TP .I /usr/\:\%share/\:\%groff/\:\%1.24.1/\:\%font/\:\%devpdf/\%download فهرست قلم‌های موجود جهت جاسازی درون سند PDF را ارائه می‌دهد (به قیاس با پشتیبانی دستگاه .B ps از قلم‌های قابل دانلود). . . .\" XXX: Why are we shipping this but not BuildFoundries.pl? .TP .I /usr/\:\%share/\:\%groff/\:\%1.24.1/\:\%font/\:\%devpdf/\%Foundry یک پرونده داده است که توسط سیستم ساخت .I groff جهت مکان‌یابی قلم‌های PostScript Type\~1 به کار می‌رود. . . .TP .I /usr/\:\%share/\:\%groff/\:\%1.24.1/\:\%font/\:\%devpdf/\:\%symbolsl\:.afm ابعاد و مشخصات متریک را برای قلم نمادهای مورب (slanted symbol) که در .I groff با عنوان .B SS شناخته می‌شود فراهم می‌سازد. . این داده‌ها استفاده از این قلم را با نرم‌افزارهای غیر .I groff تسهیل می‌کنند. . . .TP .I /usr/\:\%share/\:\%groff/\:\%1.24.1/\:\%font/\:\%devpdf/\:\%symbolsl\:.pfb قلم نمادهای مورب را که در .I groff با عنوان .B SS شناخته می‌شود تأمین می‌کند. . . .TP .I /usr/\:\%share/\:\%groff/\:\%1.24.1/\:\%font/\:\%devpdf/\:enc/\:\%text\:.enc طرح کدگذاری مورد استفاده توسط اکثر قلم‌های PostScript Type\~1 را توصیف می‌کند؛ دستورالعمل .B \%encoding در پرونده‌های توصیف قلم برای دستگاه .B pdf به آن ارجاع می‌دهد. . . .TP .I /usr/\:\%share/\:\%groff/\:\%1.24.1/\:\%font/\:\%devpdf/\:\%generate/\:\%symbolsl\:.sfd فرم منبع قلم .I \%symbolsl.pfb در قالب پایگاه‌داده فونت اسپیلاین (SFD) است. . . .TP .I /usr/\:\%share/\:\%groff/\:\%1.24.1/\:\%tmac/\:pdf\:.tmac ماکروها را برای استفاده با دستگاه خروجی .B pdf تعریف می‌کند. . هنگامی که دستگاه خروجی .B pdf انتخاب شود، این پرونده به صورت خودکار توسط .I troffrc بارگیری می‌شود. . . .TP .I /usr/\:\%share/\:\%groff/\:\%1.24.1/\:\%tmac/\:\%pdfpic\:.tmac ماکروی .B PDFPIC را برای جاسازی تصاویر در یک سند تعریف می‌کند؛ ببینید: .MR groff_tmac 5 . . این پرونده به صورت خودکار توسط .I troffrc بارگیری می‌شود. . . .TP .I /usr/\:\%share/\:\%doc/\:\%groff\-1.24.1/\:\%examples/\:install\-font\:.bash این اسکریپت، ارائه‌شده توسط Peter Schaffter نویسنده بسته ماکروی .I mom که از دیرباز در وب‌سایت او در دسترس بوده است، به در دسترس قرار دادن قلم‌های TrueType .RI ( .ttf ), OpenType .RI ( .otf ) و PostScript Type\~1 .RI ( .pfa , .IR .pfb ) برای .I groff کمک می‌کند. . .IP به دایرکتوری آن بروید و دستور .RB \[lq] "bash install\-font.bash \-H" \[rq] را برای مشاهده توصیفی شبیه به صفحه راهنما از ویژگی‌ها و عملکرد آن اجرا کنید. .\" .\" .\" .TP .\" .B /usr/\:\%share/\:\%groff/\:\%1.24.1/\:\%tmac/pspic.tmac .\" Definition of .\" .B PSPIC .\" macro, .\" automatically loaded by .\" .BR ps.tmac . .\" . . . .\" ==================================================================== .SH "نویسندگان (AUTHORS)" .\" ==================================================================== . برنامه .I gropdf توسط .MT deri@\:chuzzlewit\:.myzen\:.co\:.uk Deri James .ME نوشته شده است و نگهداری می‌شود. . . .br .ne 3v .\" ==================================================================== .SH "همچنین ببینید (SEE ALSO)" .\" ==================================================================== . .TP .I /usr/\:\%share/\:\%doc/\:\%groff\-1.24.1/\:\%sboxes/\:\%msboxes\:.ms .TQ .I /usr/\:\%share/\:\%doc/\:\%groff\-1.24.1/\:\%sboxes/\:\%msboxes\:.pdf \[lq]Using PDF boxes with .I groff and the .I ms macros\[rq]، نوشته Deri James. . . .TP .I present.tmac بخشی از .UR https://\:bob\:.diertens\:.org/\:corner/\:useful/\:gpresent .I gpresent .UE است؛ یک بسته نرم‌افزاری به نویسندگی Bob Diertens که همراه با .I groff برای تولید ارائه‌ها (\[lq]اسلایدها\[rq]، یا \[lq]مجموعه اسلایدها\[rq]) کار می‌کند. . . .P .MR afmtodit 1 , .MR groff 1 , .MR \%troff 1 , .MR groff_font 5 , .MR groff_out 5 .\" Not actually referenced in above discussion. .\" .BR \%pfbtops (1), .\" .BR \%groff_tmac (5), . . .\" Clean up. .rm FT . .\" Restore compatibility mode (for, e.g., Solaris 10/11). .cp \n[*groff_gropdf_1_man_C] .do rr *groff_gropdf_1_man_C . . .\" Local Variables: .\" fill-column: 72 .\" mode: nroff .\" End: .\" vim: set filetype=groff textwidth=72: