man(1) pdfxup man page man(1)

pdfxup - ابزار چیدمان n-up در صفحه با کاهش حاشیه‌ها

pdfxup [گزینه‌ها] [فایل]

دستور pdfxup یک سند PDF ایجاد می‌کند که در آن هر صفحه از ترکیب چندین صفحه از یک فایل PDF به دست می‌آید. ویژگی مهم pdfxup، در مقایسه با برنامه‌های مشابه، این است که تلاش می‌کند کادر احاطه‌کننده (سراسری) فایل PDF ورودی را محاسبه کند تا حاشیه‌ها حذف شوند و تنها متن باقی بماند. به جای اینکه اندازه قلم به نصف کاهش یابد (در حالت خروجی ۲ صفحه در یک برگه)، در برخی موارد ممکن است اندازه قلم خروجی تقریباً با سند اصلی یکسان باشد (مانند یک سند پیش‌فرض 'article' تولیدشده توسط LaTeX).

دستور pdfxup از ghostscript برای محاسبه بیشترین اندازه کادر احاطه‌کننده (برخی از) صفحات سند استفاده می‌کند، و سپس از pdflatex (به همراه بسته graphicx) برای تولید سند جدید بهره می‌برد.

دستور pdfxup گزینه‌های متعددی را می‌پذیرد. مهم‌ترین آن‌ها عبارتند از:

تعداد ستون‌های فایل خروجی را تعیین می‌کند (پیش‌فرض: ۲).
تعداد خطوط (ردیف‌های) فایل خروجی را تعیین می‌کند (پیش‌فرض: ۱).
تعداد ردیف‌ها و ستون‌های فایل خروجی را تنظیم می‌کند (پیش‌فرض: 2x1).
جهت کاغذ (سند نهایی) را تعیین می‌کند.
فایل را (با پسوند .xup) می‌خواند و از گزینه‌های تعریف‌شده در آن فایل استفاده می‌کند (برای جزئیات بیشتر درباره فایل‌های .xup به بخش زیر مراجعه کنید). تمام گزینه‌ها به ترتیبی که در خط فرمان ظاهر می‌شوند پردازش می‌گردند، بنابراین می‌توان گزینه‌های تنظیم‌شده در فایل پیکربندی را تغییر داد (و حتی امکان گنجاندن چند فایل پیکربندی وجود دارد که فایل‌های بعدی گزینه‌های فایل‌های قبلی را بازنویسی می‌کنند). فایل‌ها در صورت در دسترس بودن با استفاده از kpsewhich جستجو می‌شوند.
پیکربندی برای چاپ به صورت کتابچه. مقدار 'le' (که در صورت استفاده از -b بدون آرگومان، مقدار پیش‌فرض است) به این معنی است که چاپ دورو در حالت 'long-edge' (لبه بلند) انجام می‌شود (چرخش از یک صفحه به صفحه بعد در امتداد لبه بلند کاغذ صورت می‌گیرد). مقدار 'se' گزینه 'short-edge' (لبه کوتاه) است.
برش زدن (یا نزدن) صفحات بر اساس کادر احاطه‌کننده محاسبه‌شده. به طور پیش‌فرض، محتوا برای جلوگیری از هم‌پوشانی میان صفحات مجاور برش داده می‌شود. با --no-clip، هر چیزی خارج از کادر احاطه‌کننده نمایش داده خواهد شد.
نام فایل خروجی.
پرسش قبل از بازنویسی فایل خروجی.
بازنویسی فایل خروجی بدون پرسش.
اندازه کاغذ را تعیین می‌کند (پیش‌فرض: a4). این نام باید برای بسته geometry شناخته‌شده باشد (به طور دقیق‌تر، باید "<s>paper" در آن بسته تعریف شده باشد).
عرض کادر دور هر صفحه (پیش‌فرض: 0.4pt). برای نداشتن کادر، مقدار را برابر با 0pt قرار دهید.
مشخص می‌کند که کادر محکم دور صفحه باشد و فضای خالی افقی خارج از کادر باقی بماند، یا عریض باشد و تمام عرض موجود را بپوشاند.
حاشیه داخلی بین کادر و صفحه (پیش‌فرض: 5pt).
حاشیه صفحات سند جدید (پیش‌فرض: 5pt).
فاصله میان صفحات مختلف (پیش‌فرض: 1pt).
فقط زیرمجموعه‌ای از صفحات سند ورودی را در نظر می‌گیرد. فهرست به صورت صفحات یا بازه‌هایی از صفحات جداشده با کاما به شکل a-b است؛ می‌توان a را برای شروع از نخستین صفحه حذف کرد، و b را برای پایان در آخرین صفحه خالی گذاشت. بنابراین، -p - (که حالت پیش‌فرض است) تمام صفحات را شامل می‌شود. همچنین امکان استفاده از عملگر پیمانه وجود دارد، به طوری که "-p 0%2" تنها صفحات زوج را در بر می‌گیرد.
فقط زیرمجموعه‌ای از صفحات سند ورودی را برای محاسبه کادر احاطه‌کننده در نظر می‌گیرد.
فهرست صفحات سند ورودی را از محاسبه کادر احاطه‌کننده حذف می‌کند.
تنها کادر احاطه‌کننده را محاسبه کرده (و چاپ می‌کند). هیچ فایل خروجی تولید نخواهد شد.
کادر احاطه‌کننده را محاسبه نمی‌کند و حاشیه‌های فعلی را نگه می‌دارد.
کادر احاطه‌کننده را روی مقادیر ارائه‌شده تنظیم می‌کند. مقادیر بر حسب pt هستند؛ دو مقدار نخست مربوط به گوشه پایین-چپ بوده، در حالی که دو مقدار آخر نشان‌دهنده عرض و ارتفاع بخشی هستند که باید نمایش داده شود.
از فایل به عنوان واترمارک پس‌زمینه استفاده می‌کند. فایل می‌تواند در هر قالبی باشد که توسط pdflatex پشتیبانی می‌شود (مانند png یا pdf). اگر فایل یک PDF چندصفحه‌ای باشد، صفحه n از فایل واترمارک به همراه صفحه n فایل ورودی استفاده می‌شود و در صورتی که فایل ورودی صفحات بیشتری داشته باشد، آخرین صفحه فایل واترمارک تکرار می‌شود.
به جای تکرار تنها آخرین صفحه، p صفحه آخر فایل واترمارک را تکرار می‌کند.
حالت عیب‌یابی: فایل‌های میانی را نگه می‌دارد.
صفحات را ابتدا از بالا به پایین پر می‌کند (به جای حالت پیش‌فرض چپ به راست). به صورت پیش‌فرض، صفحات از چپ به راست درج می‌شوند تا زمانی که سطر پر شود؛ با این گزینه، صفحات از بالا به پایین درج می‌شوند تا زمانی که ستون پر شود. برای مثال:
           ---------                     ---------
row-mode  | 1  2  3 |      column-mode  | 1  4  7 |
          | 4  5  6 |                   | 2  5  8 |
          | 7  8  9 |                   | 3  6  9 |
           ---------                     ---------
صفحات را از چپ به راست پر می‌کند.
تراز کردن آخرین صفحه: هنگام استفاده از حالت ستونی، صفحات از بالا به پایین پر می‌شوند و آخرین صفحه نیز استثنا نیست. با این حال، ممکن است ترجیح داده شود که ستون‌های صفحه آخر به صورت متوازن باقی بمانند، که این گزینه این کار را انجام می‌دهد. به طور متقارن، در حالت سطری، این گزینه سطرها را متوازن می‌کند.
                 ---------                        ---------
row, no-balance | 1  2  3 |  column, no-balance  | 1  4    |
                | 4  5    |                      | 2  5    |
                |         |                      | 3       |
                 ---------                        ---------
                 ---------                        ---------
   row, balance | 1  2    |     column, balance  | 1  3  5 |
                | 3  4    |                      | 2  4    |
                | 5       |                      |         |
                 ---------                        ---------
تعیین میزان گزارش‌دهی جزئیات (پیش‌فرض: ۱).
اجرای بی‌صدا (معادل '-V 0').
چاپ شماره نسخه و خروج.
چاپ پیام راهنما و خروج.

فایل‌های پیکربندی (با پسوند .xup) اسکریپت‌های bash هستند که برای مقداردهی برخی متغیرها استفاده می‌شوند. اگر گزینه "--config-file <file>" (یا معادل آن) استفاده شود، در صورتی که <file> شامل '/' نباشد ابتدا با kpsewhich جستجو می‌شود. اگر kpsewhich آن را پیدا نکند، آنگاه pdfxup بررسی می‌کند که آیا فایل وجود دارد یا خیر (با استفاده از 'test -e') پیش از آنکه آن را سورس کند (از متغیر PATH برای یافتن آن استفاده نخواهد شد).

این اسکریپت تنها باید برخی از متغیرهای داخلی pdfxup را تنظیم کند، مانند NB_ROWS، NB_COLUMNS، LANDSCAPE (برای تنظیم یک طرح‌بندی از پیش تعریف‌شده). می‌توان از آن برای تنظیم کادر احاطه‌کننده استفاده کرد، اما معمولاً بهتر است آن را روی چند صفحه نخست سند محاسبه کرد. در اینجا نمونه‌هایی از خطوطی که می‌توان در یک فایل .xup قرار داد آورده شده است:

تنظیم تعداد ستون‌ها روی ۱
تنظیم تعداد ردیف‌ها روی ۲
تنظیم حالت عمودی (portrait)
حاشیه‌ها برش داده نشوند
تنظیم کادر احاطه‌کننده: پایین چپ=(75,47)؛ بالا راست=(540,755)
تنظیم کادرهای چسبیده دور صفحات
تنظیم حاشیه دور هر صفحه (داخل کادر) روی 10pt
تنظیم فاصله بین صفحات روی 10pt
تنظیم عرض کادر روی 2mm

سایر متغیرهای موجود را می‌توان در تابع setdefaultvalues پیدا کرد.

# pdfxup file.pdf
تولید فایل pdf به صورت ۲ صفحه در یک برگه (2-up) از file.pdf.
# pdfxup -bb 1-4 file.pdf
رفتار مشابه، اما کادر احاطه‌کننده را فقط با استفاده از ۴ صفحه نخست محاسبه می‌کند (این کار در پردازش اسناد طولانی در زمان صرفه‌جویی می‌کند).
# pdfxup -b -o booklet.pdf file.pdf
رفتار مشابه، اما یک کتابچه (دفترچه) ایجاد می‌کند (به عنوان booklet.pdf).
# pdfxup -kbb -x1 -y2 -l0 beamer-frames.pdf
چیدمان ۲ فریم beamer در هر صفحه (بدون کاهش حاشیه‌ها).
# pdfxup --mode beamer2 beamer-frames.pdf
چیدمان صفحات PDF بر اساس فایل پیکربندی beamer2.xup.
# pdfxup -kbb -x2 -y2 -l beamer-frames.pdf:1-12,15-19
چیدمان ۴ فریم beamer در هر صفحه (بدون کاهش حاشیه‌ها)، تنها شامل فریم‌های ۱ تا ۱۲ و ۱۵ تا ۱۹.

gs(1), pdflatex(1)

Nicolas Markey (pdfxup@markey.fr)

11 june 2024 2.12