MUTOOL(1) General Commands Manual MUTOOL(1)

mutool - ابزار همه‌منظوره برای کار با فایل‌های PDF

mutool sub-command [options]

دستور mutool ابزاری مبتنی بر MuPDF برای کار با فایل‌های سندی به روش‌های گوناگون است. چندین زیردستور مختلف در دسترس است که در ادامه شرح داده شده‌اند.

mutool -v

نسخه MuPDF استفاده‌شده برای ساخت mutool را نمایش می‌دهد.

mutool audit [options] file1.pdf [file2.pdf ...]

گزارشی از عملگرها و فضای استفاده‌شده برای هر فایل PDF داده‌شده تولید می‌کند.

نام فایل خروجی برای گزارش.

mutool bake [options] input.pdf [output.pdf]

به‌طور معمول یادداشت‌ها (annotations) و ویجت‌های فیلدهای فرم، جریان‌های محتوایی جداگانه‌ای هستند که روی محتوای صفحه رسم می‌شوند. این دستور یادداشت‌ها و/یا ویجت‌ها را در محتوای صفحه ادغام و تثبیت (bake) می‌کند و آن‌ها را جدایی‌ناپذیر می‌سازد. پس از تثبیت یادداشت‌ها و ویجت‌ها، آن‌ها تنها بازنمایی‌هایی بصری از شکل قبلی یادداشت/ویجت اصلی خواهند بود؛ ویژگی‌های آن‌ها دیگر قابل ویرایش نیست زیرا دیگر به‌صورت یادداشت/ویجت واقعی وجود ندارند.

یادداشت‌ها تثبیت نشوند.
ویجت‌های فیلد فرم تثبیت نشوند.
فهرستی از گزینه‌های PDF جداشده با کاما. بخش PDF OUTPUT OPTIONS در ادامه را ببینید.

mutool barcode -d [options] file1.pdf [pages1] [file2.pdf] [pages2]

یک بارکد را از یک تصویر یا یک سند رمزگشایی می‌کند.

در صورت رمزگذاری شدن فایل، از گذرواژه مشخص‌شده استفاده می‌کند.
نام فایل خروجی. اگر خروجی مشخص نشود، هر متنی از بارکدهای رمزگشایی‌شده به stdout ارسال خواهد شد.
-r angle
میزان چرخش صفحات ورودی بر حسب درجه (0-360)، پیش از تلاش برای رمزگشایی بارکدها.
فهرستی از شماره‌ها و بازه‌های صفحات جداشده با کاما (برای مثال: 1,5,10-15,20-N)، که در آن نویسه N بیانگر آخرین صفحه است. اگر هیچ صفحه‌ای مشخص نشود، تمام صفحات پردازش خواهند شد.
mutool barcode -c [options] text

یک بارکد جدید شامل آرگومان text و قالب‌بندی‌شده بر اساس گزینه‌های مشخص‌شده ایجاد می‌کند.

قالب خروجی بر اساس نام فایل خروجی (PNG یا PDF) تعیین می‌شود. اگر خروجی مشخص نشود، پیش‌فرض out.png است.
-F format
قالب بارکد خروجی مورد نظر:
aztec
codabar
code39
code93
code128
databar
databarexpanded
datamatrix
ean8
ean13
itf
maxicode
pdf417
qrcode
upca
upce
microqrcode
rmqrcode
dxfilmedge
databarlimited
-s size
تنظیم اندازه بارکد خروجی بر حسب پیکسل. اگر مشخص نشود، کوچک‌ترین اندازه‌ای که قابل رمزگشایی باشد انتخاب خواهد شد.
افزودن حاشیه امن (quiet zones) در اطراف بارکد. این گزینه یک حاشیه خالی در اطراف بارکدهای ایجادشده قرار می‌دهد.
افزودن متن خوانا برای انسان، در صورت در دسترس بودن. برخی از بارکدها، مانند EAN-13، می‌توانند محتوای بارکد را به‌صورت متنی خوانا در کنار بارکد چاپ کنند که این قابلیت با این پرچم فعال می‌شود.
-t level
تنظیم سطح تصحیح خطا (0-8). برخی از بارکدها، مانند QR-codeها، از چندین سطح تصحیح خطا پشتیبانی می‌کنند که از طریق این گزینه قابل سفارشی‌سازی است.
متنی که باید در یک بارکد کدگذاری شود.
mutool clean [options] input.pdf [output.pdf] [pages ...]

دستور clean ساختار نحوی (syntax) یک فایل PDF را بازنویسی کرده و آن را به‌صورت مرتب قالب‌بندی (pretty print) می‌کند. از این دستور می‌توان برای تعمیر فایل‌های خراب، باز کردن جریان‌های (streams) فشرده، فیلتر کردن محدوده‌ای از صفحات و غیره استفاده کرد.

اگر هیچ فایل خروجی مشخص نشود، فایل PDF پاک‌سازی‌شده در "out.pdf" در دایرکتوری جاری نوشته خواهد شد.

در صورت رمزگذاری بودن فایل، از گذرواژه (password) مشخص‌شده استفاده می‌کند.
جمع‌آوری زباله (Garbage collect) برای اشیائی (objects) که هیچ ارجاعی از اشیاء دیگر ندارند.
علاوه بر -g، تمام اشیاء را دوباره شماره‌گذاری کرده و جدول ارجاع متقابل (cross reference table) را فشرده می‌کند.
علاوه بر -gg، اشیای تکراری را ادغام کرده و دوباره استفاده می‌کند.
علاوه بر -ggg، جریان‌های (streams) تکراری را نیز ادغام کرده و دوباره استفاده می‌کند.
دیگر پشتیبانی نمی‌شود! خطی‌سازی (Linearize) خروجی. برای ایجاد یک فایل خروجی «بهینه‌شده برای وب» (Web Optimized) استفاده می‌شود.
ذخیره فایل بدون رمزگذاری.
ذخیره فایل با روش رمزگذاری دلخواه، یکی از موارد: rc4-40،rc40-128،aes-128، یا aes-256.
گذرواژه مالک (Owner password) که هنگام رمزگذاری فایل خروجی به کار می‌رود. این گذرواژه برای ویرایش فایل خروجی لازم است.
گذرواژه کاربر (User password) که هنگام رمزگذاری فایل خروجی به کار می‌رود. این گذرواژه برای مشاهده فایل خروجی لازم است.
-P permissions
مجوزهای مورد استفاده هنگام رمزگذاری فایل خروجی. این‌ها مجوزهایی هستند که هنگام مشاهده فایل خروجی اعمال خواهند شد.
کدگذاری اسکی هگز (ASCII Hex encode) جریان‌های دودویی (binary streams). در ترکیب با -d و -i یا -f استفاده شود تا اطمینان حاصل گردد اگرچه تصاویر و/یا قلم‌ها فشرده شده‌اند، فایل حاصل همچنان می‌تواند با یک ویرایشگر متنی مشاهده و ویرایش شود.
خارج کردن جریان‌ها از حالت فشرده (Decompress). این کار حجم فایل خروجی را افزایش می‌دهد، اما دسترسی آسان برای خواندن و ویرایش محتوا را با یک ویرایشگر متنی فراهم می‌سازد.
فشرده‌سازی (Deflate) جریان‌های غیرفشرده.
در صورت ترکیب با -d، هر جریانِ از فشرده‌سازی خارج‌شده، مجدداً فشرده خواهد شد.
در صورت ترکیب با -a، جریان‌ها پس از فشرده‌سازی، کدگذاری هگز نیز خواهند شد.
-e effort
تنظیم میزان تلاشی که صرف فشرده‌سازی فایل خروجی می‌شود. مقدار 0 پیش‌فرض است، در غیر این صورت درصدی از حداکثر تلاش است؛ 1 برای حداقل و 100 برای حداکثر تلاش.
تغییر وضعیت خارج کردن جریان‌های قلم (font streams) از حالت فشرده. در ترکیب با -d استفاده کنید تا قلم‌ها فشرده باقی بمانند.
تغییر وضعیت خارج کردن جریان‌های تصویر (image streams) از حالت فشرده. در ترکیب با -d استفاده کنید تا تصاویر فشرده باقی بمانند.
قالب‌بندی مرتب و خوانا (Pretty-print) دستورهای گرافیکی در جریان‌های محتوا (content streams).
پاک‌سازی (Sanitize) دستورهای گرافیکی در جریان‌های محتوا؛ این به معنای، به عنوان مثال، حذف دستورهای نامعتبر یا زائد است.
استفاده از نحو فشرده اشیاء PDF. این کار در فضا صرفه‌جویی می‌کند.
استفاده از نحو دندانه‌دار اشیاء PDF. این حالت برای خواندن انسان مناسب‌تر است.
چاپ توضیحاتی (comments) حاوی برچسب‌هایی که نشان می‌دهند چگونه می‌توان از Root به هر شیء دسترسی پیدا کرد.
تبدیل تمام متن‌ها به دستورهای گرافیک برداری (vector graphics commands).
ایجاد جریان‌های ظاهری (appearance streams) برای حاشیه‌نویسی‌هایی (annotations) که فاقد آن‌ها هستند.
ایجاد مجدد جریان‌های ظاهری برای تمام حاشیه‌نویسی‌ها.
حفظ فراداده (metadata).
زیرمجموعه‌گیری قلم‌ها (Subset fonts) در صورت امکان. (آزمایشی!)
استفاده از جریان‌های اشیاء (object streams) و جریان‌های ارجاع متقابل (cross reference streams) برای فشرده‌سازی بیشتر.
--(color|gray|bitonal)-(|lossy-|lossless-)image-subsample-method=method
تنظیم روش زیرنمونه‌گیری (subsampling method) (average یا bicubic) برای انواع تصویر مورد نظر، به عنوان مثال color-lossy و bitonal-lossless.
--(color|gray|bitonal)-(|lossy-|lossless-)image-subsample-dpi=dpi[,dpi]
تنظیم تفکیک‌پذیری (dpi) که زیرنمونه‌گیری در آن انجام می‌شود.
--(color|gray|bitonal)-(|lossy-|lossless-)image-recompress-method=quality
تنظیم کیفیت فشرده‌سازی مجدد بر روی یکی از موارد: never، same، lossless، jpeg، j2k، fax، یا jbig2.
فشرده‌سازی مجدد تصاویر زمانی که تصاویر بازنویسی‌شده توسط روش‌های زیرنمونه‌گیری یا فشرده‌سازی مجددِ بالا smaller (پیش‌فرض) باشند، یا با always همواره آن‌ها را دوباره فشرده می‌کند.
نگه‌داشتن یا دور انداختن درخت ساختار (structure tree)..TP pages فهرستی از شماره صفحات و محدوده‌ها که با کاما از هم جدا شده‌اند (برای مثال: 1,5,10-15,20-N)، که در آن نویسه N نشان‌دهنده آخرین صفحه است. اگر هیچ صفحه‌ای مشخص نشود، تمام صفحات گنجانده خواهند شد.

mutool convert [options] input.pdf [pages ...]

دستور convert برای تبدیل یک فایل از یک قالب به قالب دیگر استفاده می‌شود.

در صورت رمزگذاری بودن فایل، از گذرواژه مشخص‌شده استفاده می‌کند.
قالب خروجی از روی نام فایل خروجی تشخیص داده می‌شود. برای مشخص کردن شماره صفحه، %d را در نام قرار دهید (برای مثال: "page%d.png"). اصلاح‌کننده‌های Printf پشتیبانی می‌شوند، برای مثال "%03d". اگر هیچ خروجی‌ای مشخص نشود، خروجی به stdout فرستاده می‌شود.
-F format
تحمیل یک قالب خروجی خاص. فقط هنگام ارسال خروجی به stdout ضروری است، زیرا به طور معمول نام فایل خروجی برای تشخیص قالب خروجی به کار می‌رود.
فهرست جداشده با کاما از گزینه‌های خروجی مخصوص هر قالب؛ بخش‌های PDF OUTPUT OPTIONS و OUTPUT OPTIONS را در زیر ببینید.
-b box
استفاده از page box نام‌گذاری‌شده (MediaBox, CropBox, BleedBox, TrimBox, یا ArtBox).
-A bits
مشخص کردن تعداد بیت‌های مورد استفاده برای صاف کردن لبه‌ها (anti-aliasing). مقدار پیش‌فرض 8 است.
عرض صفحه بر حسب پوینت برای چینش EPUB.
ارتفاع صفحه بر حسب پوینت برای چینش EPUB.
-S size
اندازه قلم بر حسب پوینت برای چینش EPUB.
شیوه‌نامه CSS کاربر برای چینش EPUB. -X غیرفعال کردن شیوه‌های سند برای چینش EPUB.
فهرستی از شماره صفحات و محدوده‌ها که با کاما از هم جدا شده‌اند (برای مثال: 1,5,10-15,20-N)، که در آن نویسه N نشان‌دهنده آخرین صفحه است. اگر هیچ صفحه‌ای مشخص نشود، تمام صفحات رندر خواهند شد.

mutool create [-o output.pdf] [options] page.txt [page2.txt ...]

دستور create یک فایل PDF جدید را با محتوای ایجادشده از یک یا چند فایل ورودی حاوی دستورهای گرافیکی می‌سازد.

اگر هیچ فایل خروجی‌ای مشخص نشود، PDF ایجادشده را در "out.pdf" در دایرکتوری جاری می‌نویسد.
فهرست جداشده با کاما از گزینه‌های خروجی مخصوص هر قالب؛ بخش PDF OUTPUT OPTIONS را در زیر ببینید.
به ازای هر فایل ورودی یک صفحه ایجاد می‌شود و محتوای فایل درون جریان محتوا (content stream) کپی می‌گردد. کامنت‌های ویژه در فایل‌های ورودی پردازش می‌شوند تا ابعاد صفحه و منابع قلم و تصویر را تعریف کنند:
%%MediaBox LLX LLY URX URY
تنظیم اندازه صفحه (پیش‌فرض A4).
%%Rotate Angle
تنظیم زاویه چرخش صفحه (پیش‌فرض 90 درجه).
%%Font Name Filename Encoding
ایجاد یک منبع قلم ساده با استفاده از Name تعریف‌شده. Filename می‌تواند یک فایل قلم یا یکی از نام‌های قلم Base-14 باشد (Times-Roman، و غیره). کدگذاری (Encoding) یکی از موارد Latin (برای ISO-8859-1)، Greek (برای ISO-8859-7) یا Cyrillic (برای KOI-8) است.
%%Font Name Language WMode Style Language
ایجاد یک منبع قلم CID برای خط‌های CJK با استفاده از Name تعریف‌شده. Language یکی از موارد zh-Hant، zh-Hans، ja یا ko است. Wmode یکی از موارد H یا V است. Style یکی از موارد serif یا sans است.
%%Image Im0 path/to/image.png
ایجاد یک منبع تصویر.
مثال کامل (COMPLETE EXAMPLE)
این دستور یک تصویر، یک مثلث و مقداری متن را به یک صفحه اضافه می‌کند:
%%MediaBox 0 0 595 842
%%Font TmRm Times-Roman
%%Font Helv-C Helvetica Cyrillic
%%Font Helv-G Helvetica Greek
%%CJKFont Song zh-Hant
%%CJKFont Mincho ja
%%CJKFont Batang ko
%%Image I0 docs/examples/huntingofthesnark.png

% Draw an image.
q
480 0 0 480 50 250 cm
/I0 Do
Q

% Draw a triangle.
q
1 0 0 rg
50 50 m
100 200 l
200 50 l
f
Q

% Show some text.
q
0 0 1 rg
BT /TmRm 24 Tf 50 760 Td (Hello, world!) Tj ET
BT /Helv-C 24 Tf 50 730 Td <fac4d2c1d7d3d4d7d5cad4c521> Tj ET
BT /Helv-G 24 Tf 50 700 Td <eae1ebe7ecddf1e1> Tj ET
BT /Song 24 Tf 50 670 Td <4F60 597D> Tj ET
BT /Mincho 24 Tf 50 640 Td <3053 3093 306b 3061 306f> Tj ET
BT /Batang 24 Tf 50 610 Td <c548 b155 d558 c138 c694> Tj ET
Q
mutool draw [گزینه‌ها] فایل [صفحات ...]

دستور draw سندی را به فایل‌های تصویری رندر می‌کند، آن را به یک قالب برداری دیگر تبدیل می‌نماید، یا محتوای متنی‌اش را استخراج می‌کند.
قالب‌های سند ورودی پشتیبانی‌شده عبارتند از: pdf, xps, cbz, md، و epub.
قالب‌های تصویر خروجی پشتیبانی‌شده عبارتند از: pbm, pgm, ppm, pam, png, pwg, pcl، و ps.
قالب‌های برداری خروجی پشتیبانی‌شده عبارتند از: svg، pdf، و debug trace (به‌صورت xml).
قالب‌های متن خروجی پشتیبانی‌شده عبارتند از: plain text ، html، و متن ساختاریافته (به‌صورت xml یا json).

در صورتی که فایل رمزگذاری شده باشد، از گذرواژه مشخص‌شده استفاده می‌کند.
قالب خروجی از روی نام فایل خروجی استنباط می‌شود. برای مشخص کردن شماره صفحه، %d را در نام بگنجانید (برای مثال: “page%d.png”). اصلاح‌کننده‌های Printf نظیر “%03d” نیز پشتیبانی می‌شوند. اگر خروجی مشخص نشود، خروجی به stdout فرستاده خواهد شد.
-F format
یک قالب خروجی مشخص را اجباری می‌کند. تنها هنگام ارسال خروجی به stdout ضروری است، زیرا معمولاً از نام فایل خروجی برای تشخیص قالب خروجی استفاده می‌شود.
حالت بی‌صدا؛ پیام‌های پیشرفت را چاپ نمی‌کند.
چرخش ساعت‌گرد به اندازه زاویه داده‌شده بر حسب درجه.
-r resolution
رندر صفحه با تفکیک‌پذیری (رزولوشن) مشخص‌شده. تفکیک‌پذیری پیش‌فرض 72 dpi است.
رندر صفحه با عرض مشخص‌شده (یا اگر پرچم -r استفاده شده باشد، رندر با حداکثر عرض).
رندر صفحه با ارتفاع مشخص‌شده (یا اگر پرچم -r استفاده شده باشد، رندر با حداکثر ارتفاع).
برازش دقیق؛ هنگام تطبیق با عرض/ارتفاع مشخص‌شده، نسبت ابعاد (aspect ratio) را نادیده می‌گیرد.
-b box
استفاده از جعبه صفحه (page box) نام‌گذاری‌شده (MediaBox، CropBox، BleedBox، TrimBox، یا ArtBox).
رندر در حالت نواری (banded mode) به‌گونه‌ای که ارتفاع هر نوار از مقدار داده‌شده بلندتر نباشد. این کار حافظه کمتری را در حین رندر مصرف می‌کند. تنها با قالب‌های خروجی pam، pgm، ppm، pnm و png سازگار است. رندر نواری و محاسبه جمع کنترلی md5 نمی‌توانند هم‌زمان استفاده شوند.
تعداد ریسه‌ها (threads) مورد استفاده برای رندر (تنها در حالت نواری).
عرض صفحه بر حسب پوینت برای صفحه‌بندی EPUB.
ارتفاع صفحه بر حسب پوینت برای صفحه‌بندی EPUB.
-S size
اندازه قلم بر حسب پوینت برای صفحه‌بندی EPUB.
شیوه‌نامه CSS کاربر برای صفحه‌بندی EPUB.
غیرفعال کردن استایل‌های سند برای صفحه‌بندی EPUB.
غیرفعال کردن استفاده از فایل شتاب‌دهنده.
-c colorspace
رندر در فضای رنگی مشخص‌شده. فضاهای رنگی پشتیبانی‌شده عبارتند از: mono، gray، grayalpha، rgb، rgbalpha، cmyk، cmykalpha. برخی اختصارات مجاز هستند: m، g، ga، rgba، cmyka. مقدار پیش‌فرض بر اساس قالب خروجی انتخاب می‌شود.
-e filename
نام فایل نمایه ICC نمونه (Proof ICC profile) جهت استفاده در رندر.
اعمال تصحیح گاما (gamma correction). برخی مقادیر رایج 0.7 یا 1.4 هستند تا رندر متن نازک‌تر یا تیره‌تر شود.
معکوس کردن رنگ‌ها.
-s [mft5]
نمایش اطلاعات گوناگون: m برای حافظه نهان گلیف (glyph cache) و کل حافظه مصرفی، f برای ویژگی‌های صفحه مانند اینکه صفحه مقیاس خاکستری است یا رنگی، t برای زمان‌های رندر هر صفحه و همچنین آمار، و 5 برای جمع‌های کنترلی md5 تصاویر رندرشده که می‌توان از آن برای بررسی تغییر در رندر استفاده کرد.
-A bits
مشخص کردن تعداد بیت‌های anti-aliasing مورد استفاده. مقدار پیش‌فرض 8 است.
-A bits/bits
مشخص کردن تعداد بیت‌های anti-aliasing مورد استفاده. مقدار پیش‌فرض 8 است. بیت‌های گرافیک قبل از ممیز (اسلش)، و بیت‌های متن بعد از ممیز قرار می‌گیرند.
-l width
حداقل عرض خطوط رسم‌شده (بر حسب پیکسل).
عدم رسم متن.
فقط متن را رسم کن.
غیرفعال کردن استفاده از فهرست‌های نمایش (display lists). ممکن است سرعت را کاهش دهد، اما میزان حافظه مصرفی را کاهش می‌دهد.
نادیده گرفتن خطاها.
-m limit
محدود کردن میزان حافظه مصرفی به بایت.
حالت حافظه کم (جلوگیری از ذخیره اشیاء در حافظه موقت با پاک‌سازی آن پس از هر صفحه).
اجرای هم‌زمان تفسیر و رندر.
غیرفعال کردن گردش‌کار ICC.
-M overprint
کنترل رندر رنگ تفکیکی/روچاپ (spot/overprint): 0 برای عدم رندر spot، 1 برای شبیه‌سازی Overprint (پیش‌فرض)، یا 2 برای رندر کامل spot..TP -t language تعیین زبان/خط برای OCR (پیش‌فرض: eng)
-d ocr-file-path
تعیین مسیر برای فایل‌های OCR (پیش‌فرض: اتکا به متغیر محیطی TESSDATA_PREFIX ).
تنظیم اصلاح کجی (skew correction)، یکی از مقادیر auto، 0 برای افزایش اندازه، 1 برای حفظ اندازه، یا 2 برای کاهش اندازه.
تنظیم اصلاح کجی و همچنین زاویه.
چاپ پیکربندی لایه‌ها در stderr.
انتخاب پیکربندی لایه (با شماره حاصل از -y l ).
انتخاب پیکربندی لایه (با شماره حاصل از -y l ) و تغییر وضعیت موارد فهرست‌شده.
چاپ لایه‌های مجزا در stderr.
-z layer-number
پنهان‌سازی لایه مجزا.
-Z layer-number
نمایش لایه مجزا.
فهرستی از شماره‌ها و محدوده‌های صفحات جداشده با ویرگول (برای نمونه: 1,5,10-15,20-N)، که در آن نویسه N نشان‌دهنده آخرین صفحه است. اگر هیچ صفحه‌ای مشخص نشود، همه صفحات رندر خواهند شد.

mutool extract [گزینه‌ها] file.pdf [object-number ...]

دستور extract می‌تواند برای استخراج تصاویر و فایل‌های قلم از یک فایل PDF به کار رود. اگر هیچ شماره شیئی در خط فرمان مشخص نشود، تمامی تصاویر و قلم‌ها استخراج خواهند شد.

استفاده از گذرواژه مشخص‌شده در صورتی که فایل رمزشده باشد.
تبدیل تصاویر به RGB هنگام استخراج آن‌ها.
جاسازی SMaskها به عنوان کانال آلفا.
عدم استفاده از تبدیل‌های رنگی ICC.

mutool info [گزینه‌ها] file.pdf [pages ...]

دستور info منابع استفاده‌شده در هر صفحه از یک فایل PDF را فهرست می‌کند. حالت پیش‌فرض فهرست کردن تمام انواع منابع است، اما اگر یک یا چند پرچم مشخص شوند، فقط انواع علامت‌گذاری‌شده نمایش داده خواهند شد.

استفاده از گذرواژه مشخص‌شده در صورتی که فایل رمزشده باشد.
فهرست کردن قلم‌ها.
فهرست کردن تصاویر.
فهرست کردن ابعاد صفحه.
فهرست کردن الگوها (patterns).
فهرست کردن سایه‌بندی‌ها (shadings).
فهرست کردن XObjectهای form و postscript.
فهرست کردن اطلاعات ZUGFeRD.
فهرستی از شماره‌ها و محدوده‌های صفحات جداشده با ویرگول (برای نمونه: 1,5,10-15,20-N)، که در آن نویسه N نشان‌دهنده آخرین صفحه است. اگر هیچ صفحه‌ای مشخص نشود، تمام صفحات گنجانده خواهند شد.
mutool merge [options] file1 [pages1] [file2 [pages2] ...]

دستور merge برای انتخاب صفحات از دو یا چند فایل و ادغام آن‌ها به ترتیب درون یک فایل خروجی PDF جدید استفاده می‌شود.

نام فایل خروجی.
فهرستی از گزینه‌های خروجی مخصوص قالب که با کاما از هم جدا شده‌اند؛ به PDF OUTPUT OPTIONS در ادامه مراجعه کنید.

mutool pages [options] input.pdf [pages ...]

دستور pages اطلاعات مربوط به اندازه و جهت صفحات درون سند را نمایش می‌دهد.

در صورتی که فایل رمزنگاری شده باشد، از گذرواژه مشخص‌شده استفاده می‌کند.
فهرستی از شماره‌ها و محدوده‌های صفحات که با کاما از هم جدا شده‌اند (برای مثال: 1,5,10-15,20-N)، که در آن نویسه N نشان‌دهنده آخرین صفحه است. اگر هیچ صفحه‌ای مشخص نشود، همه صفحات در نظر گرفته خواهند شد.

mutool poster [options] input.pdf [output.pdf]

دستور poster هر صفحه را به قطعات کوچک‌تر (کاشی‌وار) تقسیم کرده و هر قطعه را در یک صفحه اختصاصی قرار می‌دهد. این دستور برای چاپ یک صفحه بزرگ روی تکه‌کاغذهای کوچک‌تر که بتوان بعداً آن‌ها را برای ایجاد یک پوستر بزرگ به هم چسباند، کاربرد دارد.

در صورتی که فایل رمزنگاری شده باشد، از گذرواژه مشخص‌شده استفاده می‌کند.
-m margin
حاشیه (هم‌پوشانی) بین صفحات برحسب پوینت یا درصد.
صفحه را به این تعداد قطعه افقی تقسیم می‌کند.
صفحه را به این تعداد قطعه عمودی تقسیم می‌کند.
تقسیم افقی را از راست به چپ انجام می‌دهد (پیش‌فرض، تقسیم از چپ به راست است).

خروجی به ازای هر صفحه ورودی، دارای x ضربدر y صفحه خواهد بود.

mutool recolor [options] input.pdf

فضای رنگی استفاده‌شده در یک PDF را به فضای دلخواه تغییر می‌دهد. این دستور می‌تواند، برای مثال، یک PDF رنگی را به مقیاس خاکستری (grayscale) تبدیل کند.

-c colorspace
فضای رنگی خروجی دلخواه، یکی از موارد زیر را انتخاب کنید: gray (پیش‌فرض)، rgb، یا cmyk.
نام فایل خروجی.
هرگونه مقاصد خروجی (output intents) را حذف می‌کند.
mutool run script.js [arguments]

یک برنامهٔ Javascript را اجرا می‌کند که به بیشتر امکانات کتابخانهٔ MuPDF دسترسی دارد. این دستور از نحو ECMAScript 5 در حالت strict پشتیبانی می‌کند. تمام سازنده‌ها و توابع MuPDF در شیء سراسری (global object) قرار دارند و آرگومان‌های خط فرمان از طریق شیء سراسری argv در دسترس هستند.

اگر بدون هیچ آرگومانی فراخوانی شود، شما را به یک REPL (حلقهٔ خواندن-ارزیابی-چاپ) تعاملی می‌برد. در اعلان تعاملی، اگر در ابتدای یک خط نویسهٔ مساوی قرار دهید، نتیجهٔ آن خط به‌طور خودکار چاپ می‌شود.

برای جزئیات دربارهٔ رابط‌های Javascript، مستندات MuPDF را در https://mupdf.readthedocs.io ببینید.

mutool show [options] file.pdf [object-number ...]

دستور show اشیاء و جریان‌های (streams) مشخص‌شده را در stdout چاپ می‌کند. به‌طور پیش‌فرض، جریان‌ها رمزگشایی می‌شوند و نویسه‌های غیرقابل‌چاپ با یک نقطه نمایش داده می‌شوند.

در صورت رمزگذاری بودن فایل، از گذرواژهٔ مشخص‌شده استفاده می‌کند.
نوشتن خروجی در فایل به‌جای stdout.
چاپ جریان‌ها در قالب اصلی رمزگذاری‌شده (یا فشرده‌شدهٔ) آن‌ها.
چاپ جریان‌ها به‌صورت داده‌های باینری و حذف سرآیند شیء.
چاپ هر شیء در یک خط، مناسب برای grep.
اجبار به ترمیم پیش از نمایش هر شیء.
نمایش برچسب‌های شیء (چگونگی دسترسی به یک شیء از ریشه).

با استفاده از یکی از کلیدواژه‌های زیر یا مسیری به یک شیء، آنچه را که باید نمایش داده شود مشخص کنید:

'trailer'
چاپ دیکشنری trailer.
'xref'
چاپ جدول ارجاع متقابل (cross reference).
'pages'
فهرست کردن شمارهٔ اشیاء برای هر صفحه.
'grep'
چاپ تمام اشیاء موجود در فایل در یک قالب تک‌خطی و فشرده، مناسب برای ارسال از طریق لوله به grep.
'outline'
چاپ طرح کلی (همچنین با عنوان «فهرست مطالب» یا «نشانک‌ها» شناخته می‌شود).
'js'
چاپ Javascript در سطح سند.
'form'
چاپ اشیاء فرم.
<path>
یک مسیر با یک شمارهٔ شیء، یک ویژگی در دیکشنری trailer، یا کلیدواژهٔ trailer یا pages شروع می‌شود. عناصر را با یک نقطه . یا اسلش / از هم جدا کنید. با استفاده از pages/N یک شیء صفحه را انتخاب کنید که در آن N شمارهٔ صفحه است. صفحهٔ نخست شمارهٔ ۱ است.
*
می‌توانید از * به‌عنوان عنصری برای پیمایش روی تمام اندیس‌های آرایه یا ویژگی‌های دیکشنری در یک شیء استفاده کنید.
mutool sign [options] input.pdf [signature-object-number ...]

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

در صورت رمزگذاری بودن فایل، از گذرواژه مشخص‌شده استفاده می‌کند.
اعتبارسنجی تمام امضاها، یا تنها امضای مشخص‌شده.
پاک کردن تمام امضاها، یا تنها امضای مشخص‌شده.
-s certificate-filename
خواندن یک گواهی از نام‌فایل داده‌شده و استفاده از آن برای امضای همه، یا فقط امضای مشخص‌شده.
-P certificate-password
استفاده از گذرواژه مشخص‌شده هنگام باز کردن گواهی.
نام فایل خروجی. signature object numbers فهرستی از شماره اشیاء PDF برای امضاهایی که باید اعتبارسنجی/پاک/امضا شوند. اگر چنین شماره اشیایی داده نشود، تمام امضاها پردازش خواهند شد.

mutool trace [options] file1 [pages1] [file2 [pages2] ...]

ردیابی فراخوانی‌های دستگاهِ لازم برای رندر کردن صفحات مورد نظر از سند داده‌شده را چاپ می‌کند.

در صورت رمزگذاری بودن فایل، از گذرواژه مشخص‌شده استفاده می‌کند.
-b box
کادری که برش بر اساس آن انجام می‌شود، یکی از موارد: (MediaBox (پیش‌فرض)، CropBox، BleedBox، TrimBox، یا ArtBox).
عرض صفحه بر حسب پوینت برای صفحه‌آرایی EPUB.
ارتفاع صفحه بر حسب پوینت برای صفحه‌آرایی EPUB.
-S size
اندازه قلم بر حسب پوینت برای صفحه‌آرایی EPUB.
شیوه‌نامه CSS کاربر برای صفحه‌آرایی EPUB.
غیرفعال‌سازی شیوه‌های سند برای صفحه‌آرایی EPUB.
فعال‌سازی استفاده از فهرست‌های نمایش (display lists).
فهرستی از شماره‌ها و محدوده‌های صفحات که با کاما جدا شده‌اند (برای نمونه: 1,5,10-15,20-N)، که در آن نویسه N نشان‌دهنده آخرین صفحه است. اگر هیچ صفحه‌ای مشخص نشود، تمام صفحات رندر خواهند شد.
mutool trim [گزینه‌ها] input.pdf

نسخه‌ای اصلاح‌شده از یک فایل PDF می‌سازد که در آن، محتوای قرارگرفته در داخل (یا خارج) جعبهٔ مشخص‌شده حذف شده است.

-b box
مشخص می‌کند برش بر اساس کدام جعبه انجام شود، یکی از موارد: (MediaBox (پیش‌فرض)، CropBox، BleedBox، TrimBox، یا ArtBox).
بازگشت به mediabox در صورت در دسترس نبودن جعبهٔ مشخص‌شده.
-m all
افزودن حاشیهٔ یکسان به تمام اضلاع جعبه، که در آن مقدار all برای جهت رو به داخل مثبت و برای جهت رو به خارج منفی است.
-m vertical,horizontal
افزودن حاشیه‌های مشخص برای اضلاع عمودی و افقی جعبه، که در آن vertical و horizontal برای جهت رو به داخل مثبت و برای جهت رو به خارج منفی هستند.
-m top,right,bottom,left
افزودن حاشیه‌های مشخص برای اضلاع بالا، راست، پایین و چپ جعبه، که در آن مقادیر top، right، bottom، و left هرکدام برای جهت رو به داخل مثبت و برای جهت رو به خارج منفی هستند.
مستثنی کردن (حذف) محتویات جعبه به‌جای نگه‌داشتن آن‌ها.
نام فایل خروجی.

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

این گزینه‌ها برای این قالب‌های خروجی اعمال می‌شوند: cbz, png, pnm, pgm, ppm, pam, pbm, pkm.

چرخاندن صفحات رندرشده به میزان N درجه در خلاف جهت عقربه‌های ساعت.
تنظیم هر دو تفکیک‌پذیری X و Y بر روی N پیکسل بر اینچ.
تنظیم تفکیک‌پذیری محور X صفحات رندرشده بر حسب پیکسل بر اینچ.
تنظیم تفکیک‌پذیری محور Y صفحات رندرشده بر حسب پیکسل بر اینچ.
رندر صفحات متناسب با عرض N پیکسل (نادیده گرفتن گزینهٔ resolution).
رندر صفحات متناسب با ارتفاع N پیکسل (نادیده گرفتن گزینهٔ resolution).
رندر صفحات با استفاده از فضای رنگی مشخص‌شده.
رندر صفحات با کانال آلفا و پس‌زمینهٔ شفاف.
تنظیم رسترایزر (rasterizer) مورد استفاده برای گرافیک یا متن به‌ترتیب:
هموارسازی لبه‌ها (Antialias) با N بیت (۰ تا ۸).
مرکز پیکسل (Center of pixel).
هر بخشی از پیکسل (Any part of pixel).
این گزینه‌ها برای قالب‌های خروجی رستر چاپ (print-raster) اعمال می‌شوند: pcl, pclm, ps, pwg.
رندر یک صفحه ۱-بیتی سیاه و سفید یا تمام‌رنگی.
رندر یک صفحه ۱-بیتی سیاه و سفید یا تمام‌رنگی.
تنظیم فاصله‌گذاری عمودی روی هیچ‌کدام (none)، PCL 3 (<ESC>*p+<n>Y)، PCL 5 (<ESC>*b<n>Y)، یا PCL 6 (<ESC>*b<n>Y و پاک‌سازی seed row).
فعال‌سازی فشرده‌سازی گرافیکی mode 2.
فعال‌سازی فشرده‌سازی گرافیکی mode 3.
پایان گرافیک (<ESC>+rB) تمام پارامترها را بازنشانی می‌کند.
پشتیبانی از چاپ دورو (<ESC>&l<duplex>S).
پشتیبانی از تنظیم اندازه کاغذ (<ESC>&l<sizecode>A).
پشتیبانی از تعداد نسخه‌ها (<ESC>&l<copies>X).
غیرفعال/فعال‌سازی خروجی ویژه مدل HP 4PJL.
غیرفعال/فعال‌سازی خروجی ویژه مدل‌های Oce 9050.

این گزینه‌ها تنها برای موارد زیر اعمال می‌شوند: pclm.

بدون فشرده‌سازی (پیش‌فرض)، یا فعال‌سازی فشرده‌سازی flate.
ارتفاع نوار (پیش‌فرض ۱۶).

این گزینه‌ها تنها برای موارد زیر اعمال می‌شوند: pwg.

تنظیم فیلد media_class.
تنظیم فیلد media_color.
تنظیم فیلد media_type.
تنظیم فیلد output_type.
تنظیم فیلد rendering_intent.
تنظیم فیلد page_size_name.
تنظیم فیلد advance_distance.
تنظیم فیلد advance_media.
تنظیم فیلد collate.
تنظیم فیلد cut_media.
تنظیم فیلد duplex.
تنظیم فیلد insert_sheet.
تنظیم فیلد jog.
تنظیم فیلد leading_edge.
تنظیم فیلد manual_feed.
تنظیم فیلد media_position.
تنظیم فیلد media_weight.
تنظیم فیلد mirror_print.
تنظیم فیلد negative_print.
تنظیم فیلد num_copies.
تنظیم فیلد orientation.
تنظیم فیلد output_face_up.
تنظیم فیلد page_size_x.
تنظیم فیلد page_size_y.
تنظیم فیلد separations.
تنظیم فیلد tray_switch.
تنظیم فیلد tumble.
تنظیم فیلد media_type_num.
تنظیم فیلد compression.
تنظیم فیلد row_count.
تنظیم فیلد row_feed.
تنظیم فیلد row_step. این موارد فقط برای این قالب اعمال می‌شوند: svg.
تولید متن به‌صورت عنصرهای <text> (قلم‌های غیردقیق).
تولید متن به‌صورت عنصرهای <path> (قلم‌های دقیق).
عدم استفاده مجدد از تصاویر با استفاده از تعاریف <symbol>.

این موارد بر قالب‌های خروجی زیر اعمال می‌شوند: html, xhtml, text, stext.

نگه‌داشتن تصاویر در خروجی.
عدم تجزیه حروف پیوسته (ligature) به نویسه‌های سازنده.
عدم ادغام spanهای واقع در یک سطر.
عدم تبدیل همه فاصله‌های خالی به نویسه‌های فاصله (space).
عدم افزودن فاصله در میان شکاف‌های درون متن.
شکستن بلوک‌ها در مرزهای پاراگراف.
تلاش برای اتصال واژه‌های شکسته‌شده با خط تیره.
عدم اعمال جایگزینی‌های ActualText.
استفاده از کد نویسه در صورت ناموفق بودن نگاشت یونیکد.
استفاده از نمایه گلیف در صورت ناموفق بودن نگاشت یونیکد.
محاسبه کادرهای مرزی (bboxes) از روی خطوط پیرامونی (outlines).
محاسبه بالارونده/پایین‌رونده (ascender/descender) از گلیف‌های قلم.
گسترش کادرهای مرزی (bboxes) نویسه جهت دربرگیری کامل پهنای گلیف‌ها.
تلاش برای شناسایی ویژگی‌های متن (پررنگ جعلی، خط‌خورده، زیرخط‌دار و غیره).
عدم گنجاندن متنی که به‌طور کامل برش خورده (clipped) است.
تعیین مستطیل برشی که محتوا باید از درون آن گردآوری شود.
گردآوری نشانه‌گذاری ساختار.
گنجاندن کادرهای مرزی برداری (vector bboxes) در خروجی.
به تأخیر انداختن بردارهایی در استخراج که در غیر این صورت موجب تقسیم یک سطر متنی می‌شدند.
ادغام بردارهای افقی و عمودی مماس بر هم.
تلاش برای قطعه‌بندی صفحه.
جستجو به دنبال جدول‌ها درون یک صفحه (قطعه‌بندی‌شده).
در صورت تعیین به عنوان true، محتوای اَبَرسلول‌های کاملاً دارای حاشیه به‌صورت عمودی قابل‌جمع‌شدن در نظر گرفته می‌شود. این موارد فقط برای خروجی زیر اعمال می‌شوند: PDF.
خارج کردن تمام جریان‌ها از حالت فشرده (به‌جز compress-fonts/images).
فشرده‌سازی تمام جریان‌ها؛ در صورتی که مقداری داده نشود یا مقدار yes باشد، پیش‌فرض استفاده از flate است.
فشرده‌سازی جریان شیء برای فونت‌های جاسازی‌شده.
فشرده‌سازی جریان‌های شیء برای تصاویر.
میزان تلاش صرف‌شده برای فشرده‌سازی؛ 0 پیش‌فرض است، در غیر این صورت درصدی از بیشینهٔ تلاش.
کدگذاری جریان‌های شیء با استفاده از کدگذاری ASCII hex.
چاپ آراستهٔ (pretty-print) اشیاء به همراه تورفتگی.
چاپ برچسب‌های اشیاء.
دیگر پشتیبانی نمی‌شود! بهینه‌سازی سند برای بارگذاری تدریجی در نمایش‌دهنده‌ها.
چاپ آراستهٔ دستورهای گرافیکی در جریان‌های محتوا.
پاک‌سازی دستورهای گرافیکی در جریان‌های محتوا.
جمع‌آوری زبالهٔ (garbage collection) اشیاء استفاده‌نشده.
جمع‌آوری زبالهٔ اشیاء استفاده‌نشده و فشرده‌سازی جدول ارجاع متقابل (cross-reference).
جمع‌آوری زبالهٔ اشیاء استفاده‌نشده، فشرده‌سازی جدول ارجاع متقابل و بازترکیب اشیاء تکراری.
نوشتن تغییرات به‌صورت به‌روزرسانی افزایشی.
استفاده از جریان‌های شیء و جریان‌های ارجاع متقابل.
تولید ساختگی جریان‌های نمایشیِ حاشیه‌نویسی/ابزارک، فقط برای موارد ناموجود یا همهٔ آن‌ها.
ادامه دادن به ذخیرهٔ سند حتی در صورت وقوع خطا.
این گزینه منسوخ شده است: به‌جای decrypt از encrypt=none استفاده کنید.
نوشتن سند رمزگذاری‌شده با استفاده از روش رمزگذاری مشخص‌شده. مقدار پیش‌فرض keep است.
مجوزهای سند برای اعطا در زمان رمزگذاری.
گذرواژهٔ لازم برای خواندن سند.
گذرواژهٔ لازم برای ویرایش سند.
تولید مجدد شناسهٔ سند (پیش‌فرض yes).
تلاش برای بازتولیدپذیر ساختن اسناد تولیدشده (پیش‌فرض no). وضعیت خروج در صورت اجرای موفقیت‌آمیز 0 و در صورت بروز خطا غیرصفر است.

mupdf(1),

حق کپی‌رایت MuPDF برای سال‌های 2004-2026 متعلق به Artifex Software, Inc. است.

June 3, 2026