| DVIPS(1) | General Commands Manual | DVIPS(1) |
نام (NAME)
dvips - تبدیل یک فایل DVI مربوط به TeX به PostScript
خلاصه دستور (SYNOPSIS)
dvips [OPTIONS] file[.dvi]
توضیحات (DESCRIPTION)
این صفحه راهنما منسوخ شده است! به جای آن، مستندات Texinfo را ببینید. میتوانید آن را در Emacs یا با برنامه مستقل info مطالعه کنید.
برنامه dvips یک فایل DVI با نام file[.dvi] را که توسط TeX (یا دیگر پردازندهها مانند GFtoDVI) تولید شده دریافت کرده و آن را به PostScript تبدیل میکند، سپس خروجی را به یک فایل یا مستقیماً به یک چاپگر میفرستد. فایل DVI میتواند بدون پسوند .dvi مشخص شود. قلمهای استفادهشده میتوانند مقیم در چاپگر بوده یا به صورت بیتمپ در فایلهای PK تعریف شده باشند، یا ترکیبی «مجازی» از هر دو باشند. اگر برنامه mktexpk نصب باشد، dvips به طور خودکار METAFONT را برای تولید قلمهایی که در حال حاضر موجود نیستند فراخوانی میکند.
برای اطلاعات بیشتر، راهنمای Texinfo به نام dvips.texi را ببینید که باید در جایی از سیستم شما نصب شده باشد و از طریق ساختار درختی استاندارد Info در دسترس باشد.
گزینهها (OPTIONS)
- -a
- صرفهجویی در حافظه با انجام سه مرتبه پیمایش روی فایل .dvi به جای دو مرتبه و بارگذاری تنها نویسههایی که واقعاً استفاده شدهاند. عموماً فقط در رایانههایی با مقدار حافظه بسیار محدود، مانند برخی از PCها، مفید است.
- -A
- تنها چاپ صفحههای فرد (صفحههای TeX، نه شماره ترتیبی صفحهها).
- -b num
- تولید num نسخه از هر صفحه، اما با تکثیر بدنه صفحه به جای استفاده از گزینه #numcopies. این گزینه میتواند در کنار یک فایل سرآیند تنظیمکننده \bop-hook برای انجام تفکیک رنگ یا دیگر ترفندهای جالب مفید باشد.
- -B
- تنها چاپ صفحههای زوج (صفحههای TeX، نه شماره ترتیبی صفحهها).
- -c num
- تولید num نسخه از هر صفحه. پیشفرض 1 است. (برای نسخههای مرتبشده، گزینه -C در زیر را ببینید.)
- -C num
- ایجاد num نسخه، اما به صورت مرتبشده (با تکرار دادهها در فایل PostScript). کندتر از گزینه -c است، اما کار دستی را راحتتر میکند، و سریعتر از ارسال مجدد همان فایل PostScript به تعداد دفعات مکرر است.
- -d num
- تنظیم پرچمهای اشکالزدایی. این گزینه تنها برای شرایط اضطراری یا برای کاوشهای غیرعادی جهت یافتن حقایق در نظر گرفته شده است؛ این گزینه تنها در صورتی کار خواهد کرد که dvips با گزینه DEBUG کامپایل شده باشد. در صورت غیرصفر بودن، اطلاعات بیشتری را در خطای استاندارد چاپ میکند. برای حداکثر اطلاعات، میتوانید از «-1» استفاده کنید. برای جزئیات بیشتر، راهنمای Texinfo برنامه Dvips را ببینید.
- -D num
- تنظیم وضوح بر حسب dpi (نقطه در اینچ) روی num. این امر بر انتخاب قلمهای بیتمپ بارگذاریشده و همچنین موقعیت حروف در قلمهای مقیم PostScript تأثیر میگذارد. باید بین 10 و 10000 باشد. این تنظیم روی هر دو وضوح افقی و عمودی اثر میگذارد. اگر وضوح بالایی (مثلاً چیزی بیشتر از 400 dpi) انتخاب شود، احتمالاً پرچم -Z نیز باید استفاده شود.
- -e num
- اطمینان از اینکه هر نویسه حداکثر به این تعداد پیکسل از موقعیت «واقعی» و مستقل از وضوح خود در صفحه فاصله بگیرد. مقدار پیشفرض این پارامتر به وضوح وابسته است. اجازه دادن به نویسههای مجزا برای «انحراف» به اندازه چند پیکسل از موقعیتهای گردشده صحیحشان، ضمن بازگرداندن موقعیت واقعی در آغاز هر کلمه جدید، فاصلهگذاری حروف در کلمات را بهبود میبخشد.
- -E
- باعث میشود dvips تلاش کند یک فایل EPSF با یک کادر محدودکننده (bounding box) چسبیده و تنگ ایجاد کند. این گزینه تنها روی فایلهای تکصفحهای کار میکند و فقط علامتهای ایجاد شده توسط نویسهها و خطوط (rules) را در نظر میگیرد، نه نگارههای گرافیکی گنجاندهشده را. علاوه بر این، ابعاد گلیفها را از فایل tfm دریافت میکند، بنابراین نویسههایی که خارج از کادر محصورکننده tfm خود قرار دارند ممکن است آن را به اشتباه بیندازند. همچنین اگر گلیف نویسه حاشیههای چپ یا راست قابلتوجهی داشته باشد، کادر محدودکننده ممکن است بیش از حد گشاد باشد. با این حال، این گزینه برای ایجاد فایلهای EPSF کوچک برای معادلات، جدولها یا موارد مشابه به خوبی کار میکند. (البته توجه داشته باشید که خروجی dvips وابسته به وضوح است و بنابراین فایلهای EPSF چندان مناسبی نمیسازد، بهویژه اگر قرار باشد تصاویر مقیاسبندی شوند؛ از این فایلهای EPSF با احتیاط فراوان استفاده کنید.)
- -f
- اجرا به عنوان یک فیلتر. خواندن فایل .dvi از ورودی استاندارد و نوشتن خروجی PostScript در خروجی استاندارد. ورودی استاندارد باید قابل جستوجو (seekable) باشد، بنابراین نمیتواند یک لوله (pipe) باشد. اگر مجبور به استفاده از یک لوله هستید، یک اسکریپت شل بنویسید که خروجی لوله را در یک فایل موقت کپی کند و سپس dvips را به این فایل هدایت نماید. این گزینه همچنین خواندن خودکار متغیر محیطی PRINTER را غیرفعال کرده و ارسال خودکار Control-D را در صورتی که با گزینه -F یا در فایل پیکربندی فعال شده باشد خاموش میکند؛ اگر هر دوی آنها را میخواهید، -F را بعد از این گزینه استفاده کنید.
- -F
- باعث میشود Control-D (کد ASCII شماره ۴) به عنوان آخرین نویسه فایل PostScript الحاق شود. این ویژگی زمانی مفید است که dvips به جای ارسال کار از طریق یک spooler، چاپگر را مستقیماً راهاندازی میکند، همانطور که در سیستمهای بسیار کوچک مرسوم است. توجه! از این گزینه استفاده نکنید!
- -G
- باعث میشود dvips نویسههای غیرقابلچاپ را به موقعیتهای با شماره بالاتر انتقال دهد. این ویژگی ممکن است گاهی اوقات مفید باشد.
- -h name
- افزودن فایل name به عنوان یک فایل سرآیند اضافی در ابتدای کار. (با این حال، اگر نام صرفاً «-» باشد، تمام فایلهای سرآیند از خروجی حذف میشوند.) این فایل سرآیند به userdict مربوط به PostScript اضافه میشود.
- -i
- تبدیل هر بخش به یک فایل جداگانه. در شرایط خاص، dvips سند را به «بخشها» تقسیم میکند تا به طور مستقل پردازش شوند؛ این کار بیشتر به دلایل مربوط به حافظه انجام میشود. استفاده از این گزینه به dvips میگوید که هر بخش را در یک فایل جداگانه قرار دهد؛ نام فایلهای جدید با جایگزینی پسوند نام فایل خروجی ارائهشده با یک شماره ترتیبی سهرقمی ایجاد میشوند. این گزینه اغلب همراه با گزینه -S استفاده میشود که حداکثر طول بخش را بر حسب صفحه تعیین میکند. به عنوان مثال، برخی از دستگاههای حروفچینی نوری (phototypesetters) نمیتوانند پیش از افت توان پردازشی بیش از حدود ده صفحه متوالی را چاپ کنند؛ از این گزینهها میتوان برای تقسیم خودکار یک کتاب به بخشهای دهصفحهای، هر کدام در فایل جداگانه خود، استفاده کرد.
- -j
- تنها بارگیری نویسههای مورد نیاز از قلمهای Type 1. این حالت در نسخه فعلی پیشفرض است. برخی از پرچمهای اشکالزدایی این عملیات را ردیابی میکنند. همچنین میتوانید بارگیری جزئی را به صورت قلمبهقلم از طریق فایل psfonts.map کنترل کنید.
- -k
- چاپ نشانههای برش (crop marks). این گزینه اندازه کاغذ را (که باید یا با دستور ویژه اندازه کاغذ یا با گزینه -T مشخص شود) از هر بعد به میزان نیم اینچ افزایش میدهد. این گزینه هر صفحه را یکچهارم اینچ جابهجا کرده و نشانههای برش متقاطع رسم میکند. این ویژگی بیشتر برای دستگاههای حروفچینی که میتوانند اندازه صفحه را به صورت خودکار تعیین کنند کاربرد دارد..TP -K این گزینه باعث حذف توضیحات (comments) در گرافیکهای PostScript گنجاندهشده، فایلهای فونت و هدرها میشود. این کار گاهی برای دور زدن باگهای موجود در اسپولرها یا برنامههای پسپردازش PostScript لازم است. بهویژه، باقی ماندن توضیحات %%Page اغلب باعث بروز مشکلاتی میشود. استفاده از این پرچم میتواند باعث خرابی برخی گرافیکهای گنجاندهشده شود، زیرا ماکروهای هدر PostScript در برخی بستههای نرمافزاری بخشهایی از جریان ورودی را خطبهخط میخوانند و به دنبال توضیح خاصی میگردند. این گزینه بهطور پیشفرض غیرفعال شده است زیرا پیشنمایشگرها و اسپولرهای PostScript بهبود یافتهاند.
- -l num
- آخرین صفحهای که چاپ میشود، نخستین صفحهای خواهد بود که دارای شماره num است. حالت پیشفرض، آخرین صفحه در سند است. اگر در ابتدای num یک علامت مساوی بیاید، با آن (و هر آرگومان ارائهشده به گزینهٔ -p) بهجای مقداری برای مقایسه با مقادیر \count0، بهعنوان یک شمارهٔ ترتیبی برخورد میشود. بنابراین، استفاده از -l =9 بدون توجه به اینکه شمارهٔ واقعی صفحات چیست، به نهمین صفحه از سند ختم خواهد شد. از سوی دیگر، اگر در انتهای num پسوند `.SEQ' قرار گیرد، SEQامین رخدادِ num استفاده میشود؛ برای نمونه، -l 99.2 مشخص میکند که پردازش با دومین صفحه با شماره ۹۹ در سند پایان یابد.
- -m
- تغذیهٔ دستی کاغذ را برای چاپگر مشخص میکند.
- -mode mode
- از mode بهعنوان نام دستگاه Metafont برای جستجوی مسیر و تولید فونت استفاده میکند. این گزینه بر هر مقداری از فایلهای پیکربندی اولویت دارد. با مسیرهای پیشفرض، تعیین صریح mode همچنین باعث میشود برنامه فرض کند فونتها در زیردایرکتوریای به نام mode قرار دارند.
- -M
- قابلیت تولید خودکار فونت را غیرفعال میکند. اگر هر فونتی ناموجود باشد، دستورات تولید فونتها به فایل missfont.log در دایرکتوری جاری ضمیمه میشوند؛ سپس میتوان این فایل را برای ایجاد فونتهای ناموجود اجرا کرده و حذف نمود.
- -n num
- حداکثر num صفحه چاپ خواهد شد. پیشفرض 100000 است.
- -N
- توضیحات ساختاریافته را غیرفعال میکند؛ این کار ممکن است در برخی سیستمها که سعی میکنند توضیحات PostScript را به روشهای عجیبی تفسیر کنند، یا در برخی چاپگرهای PostScript لازم باشد. بهویژه نسخههای قدیمی TranScript نمیتوانند Encapsulated PostScript مدرن را مدیریت کنند.
- -noomega
- این گزینه استفاده از افزونههای Omega را هنگام تفسیر فایلهای DVI غیرفعال میکند. بهطور پیشفرض، کدهای دستوری (opcodes) اضافی 129 و 134 توسط dvips بهعنوان افزونههای Omega یا pTeX شناخته شده و بهعنوان درخواستهایی برای تعیین نویسههای ۲ بایتی تفسیر میشوند.
- -noptex
- این گزینه
استفاده از
افزونههای
pTeX را هنگام
تفسیر
فایلهای DVI
غیرفعال
میکند.
بهطور
پیشفرض،
کدهای
دستوری
اضافی 130 و 135
توسط dvips
بهعنوان
افزونههای
pTeX شناخته
شده و
بهعنوان
درخواستهایی
برای تعیین
نویسههای
۳ بایتی، و
255
بهعنوان
درخواست
برای تغییر
جهت
حروفچینی
تفسیر
میشوند.
تنها عیب این است که آرایهٔ فونت مجازی (دستکم بهطور موقت) بهجای ۲۵۶ موقعیت پیشفرض به ۶۵۵۳۶ یا تعداد بیشتری موقعیت نیاز خواهد داشت، یعنی حافظهٔ مورد نیاز dvips تا حدی بیشتر خواهد شد. اگر این مسئله برایتان غیرقابل قبول است یا با افزونههای Omega یا pTeX با مشکل دیگری مواجه شدید، میتوانید افزونهٔ pTeX را با استفاده از -noptex، یا هر دو را با استفاده از -noomega غیرفعال کنید (اما لطفاً در صورت مشاهدهٔ چنین مشکلاتی یک گزارش باگ ارسال نمایید - نشانی گزارش باگ را در بخش AUTHORS در زیر ببینید).
- -o name
- خروجی به فایل name فرستاده خواهد شد. اگر نام فایلی داده نشود (یعنی -o آخرین گزینه در خط فرمان باشد)، نام پیشفرض file.ps خواهد بود، در صورتی که فایل .dvi با نام file.dvi خوانده شده باشد؛ اگر این گزینه داده نشود، از هر پیشفرضی در فایل پیکربندی استفاده میشود. اگر اولین نویسه از نام فایل خروجی ارائهشده یک علامت تعجب باشد، ادامهٔ آن بهعنوان یک آرگومان برای popen استفاده خواهد شد؛ بنابراین، تعیین !lpr بهعنوان فایل خروجی، فایل را بهطور خودکار در صف چاپ قرار میدهد. این گزینه همچنین خواندن خودکار متغیر محیطی PRINTER را غیرفعال کرده و ارسال خودکار control D را در صورتی که با گزینهٔ -F یا در فایل پیکربندی فعال شده باشد خاموش میکند؛ در صورت نیاز به هر دو، -F را بعد از این گزینه استفاده کنید.
- -O offset
- مبدأ مختصات را به میزان مشخصی جابجا میکند. offset یک جفت اندازه است که با کاما از هم جدا شدهاند، مانند .1in,-.3cm (با همان نحو بهکاررفته در دستور ویژهٔ papersize). مبدأ صفحه از موقعیت پیشفرض (یک اینچ به سمت پایین و یک اینچ به سمت راست از گوشهٔ بالا سمت چپ کاغذ) به این میزان جابجا میشود.
- -p num
- دقیقاً مانند -l است اما برای نخستین صفحه در سند.
- -pp pagelist
- میتوان فهرستی از صفحات و بازهها (a-b) را که با کاما از هم جدا شدهاند ارائه داد، که بهعنوان مقادیر \count0 تفسیر خواهند شد. صفحاتی که مشخص نشده باشند چاپ نخواهند شد. میتوان چندین گزینهٔ -pp را تعیین کرد یا تمام صفحات و بازههای صفحات را با یک گزینهٔ -pp مشخص نمود.
- -P printername
- خروجی را برای چاپگر مناسب تنظیم میکند. این کار با خواندن config.printername انجام میشود، که میتواند لوله خروجی (مانند !lpr -Pprintername) و همچنین مسیرهای فونت و سایر پیشفرضهای config.ps را تنها برای آن چاپگر تنظیم کند. توجه داشته باشید که config.ps پیش از config.printername خوانده میشود. علاوه بر این، بلافاصله پس از config.ps، فایل دیگری به نام ~/.dvipsrc جستجو میشود؛ این فایل برای پیشفرضهای کاربر در نظر گرفته شده است. اگر هیچ دستور -P داده نشود، متغیر محیطی PRINTER بررسی میشود. در صورت وجود آن متغیر و وجود فایل پیکربندی متناظر، آن فایل پیکربندی خوانده میشود.
- -q
- اجرا در حالت بیصدا. دربارهٔ صفحات تبدیلشده و غیره گزارشهای غیرضروری ارائه نمیدهد؛ و هیچ چیزی جز خطاها به خروجی خطای استاندارد گزارش نمیشود.
- -r
- صفحات را به ترتیب معکوس مرتب میکند. در حالت عادی، صفحهٔ ۱ اول چاپ خواهد شد.
- -R[0|1|2]
- اجرا به صورت امن. -R2 هم اجرای دستورات پوسته در \special'{} (از طریق بکتیک ` ) و فایلهای پیکربندی (از طریق گزینهٔ E) و هم باز کردن هرگونه نام فایل مطلق را غیرفعال میکند. -R1 ، حالت پیشفرض، فرار به پوسته را ممنوع کرده اما نام فایلهای مطلق را مجاز میداند. -R0 هر دو را مجاز میداند. گزینهٔ فایل پیکربندی z است..TP -s باعث میشود که کل خروجی سراسری در یک جفت save/restore محصور شود. این کار باعث میشود فایل کاملاً منطبق بر استانداردها نباشد و به همین دلیل توصیه نمیشود، اما اگر چاپگر را مستقیماً هدایت میکنید و قابلیت حمل خروجی برایتان اهمیت چندانی ندارد، میتواند مفید باشد.
- -S num
- حداکثر تعداد صفحات را در هر «بخش» (section) تعیین میکند. این گزینه بیشتر همراه با گزینهٔ -i به کار میرود؛ برای اطلاعات بیشتر، مستندات آن را در بالا ببینید.
- -t papertype
- نوع کاغذ را
به papertype تنظیم
میکند.
مقدار papertype
باید در یکی
از
فایلهای
پیکربندی
همراه با کد
مناسب جهت
انتخاب آن
تعریف شده
باشد.
(انواع
شناختهشدهٔ
فعلی
عبارتند از
letter، legal، ledger،
a4، a3).
همچنین
میتوانید
-t landscape را
مشخص کنید
که سند را
۹۰ درجه
میچرخاند.
برای
چرخاندن
سندی که
اندازهٔ آن
letter نیست،
میتوانید
از گزینهٔ
-t دو بار
استفاده
کنید: یک
بار برای
اندازهٔ
صفحه و یک
بار برای
حالت افقی
(landscape). هنگامی
که فایل DVI از
قبل حاوی یک
دستور
ویژهٔ (special) papersize
باشد (مانند
آنچه توسط
برخی
بستههای LaTeX
بهویژه hyperref.sty
درج
میشود)،
نباید از
هیچ گزینهٔ
-t استفاده
کنید.
گوشهٔ بالا سمت چپ هر صفحه در فایل .dvi در فاصلهٔ یک اینچ از چپ و یک اینچ از بالا قرار میگیرد. استفاده از این گزینه به شدت به فایل پیکربندی وابسته است. توجه داشته باشید که اجرای عملگرهای PostScript مانند letter یا a4 یا عملگرهای دیگر باعث ناهماهنگ شدن سند با استانداردها شده و میتواند مانع چاپ آن روی برخی چاپگرها شود؛ بنابراین در صورت امکان اندازهٔ کاغذ نباید چنین عملگری را اجرا کند.
- -T papersize
- اندازهٔ کاغذ را به جفت ابعاد دادهشده تنظیم میکند. این گزینه آرگومانهای خود را با همان سبک گزینهٔ -O دریافت میکند و هرگونه special مربوط به اندازهٔ کاغذ را در فایل dvi لغو و بازنویسی میکند.
- -u psmapfile
- فایل psmapfile را به عنوان فایلی که dvips برای جستجوی نامهای مستعار فونت PostScript استفاده میکند، تنظیم میکند. اگر psmapfile با یک نویسهٔ + شروع شود، باقیماندهٔ نام به عنوان نام فایل نگاشت در نظر گرفته شده و فایل نگاشت به انتهای فهرست فایلهای نگاشت ضمیمه میشود (بهجای جایگزین کردن فهرست). در هر دو حالت، اگر psmapfile هیچ پسوندی نداشته باشد، پسوند .map به انتهای آن افزوده میشود.
- -U
- بهینهسازی صرفهجویی در حافظهٔ مجازی PostScript را که اطلاعات متریک نویسه را در همان رشتهٔ مورد استفاده برای ذخیرهٔ اطلاعات بیتمپ نگهداری میکند، غیرفعال میسازد. این کار تنها هنگام هدایت مفسر PostScript در Xerox 4045 ضروری است؛ چرا که یک باگ در آن مفسر باعث درج دادههای زائد («آشغال») در پایین هر نویسه میشود. استفاده از این گزینه توصیه نمیشود مگر اینکه مجبور به راهاندازی این چاپگر باشید.
- -v
- شماره نسخهٔ dvips را چاپ کرده و خارج میشود.
- -V
- فونتهای غیرمقیم PostScript را به صورت بیتمپ بارگیری میکند. این امر نیازمند استفاده از «gsftopk» یا «pstopk» یا برنامههای مشابه دیگر به منظور تولید فونتهای بیتمپ مورد نیاز است؛ این برنامهها به همراه dvips ارائه میشوند.
- -x num
- نسبت بزرگنمایی را روی num/1000 تنظیم میکند. بزرگنمایی مشخصشده در فایل .dvi را لغو میکند. مقدار باید بین ۱۰ تا ۱۰۰۰۰۰ باشد. برای دقت بیشتر، به جای یک عدد صحیح، num میتواند یک عدد حقیقی باشد.
- -X num
- تفکیکپذیری افقی بر حسب نقطه در اینچ را روی num تنظیم میکند.
- -y num
- نسبت بزرگنمایی را به میزان num/1000 برابر بزرگنمایی مشخصشده در فایل .dvi تنظیم میکند. گزینهٔ -x در بالا را ببینید.
- -Y num
- تفکیکپذیری عمودی بر حسب نقطه در اینچ را روی num تنظیم میکند.
- -z
- دستورات ویژهٔ (specials) ابرمتنی (hyperdvi) مربوط به html را جهت تبدیل نهایی به PDF به خروجی منتقل میکند. این گزینه بهطور پیشفرض فعال نیست تا از گنجاندن غیرضروری فایلهای سرآیند و استفاده از فایلهای موقت در هنگام ایجاد خروجی جلوگیری شود.
- -Z
- باعث میشود فونتهای بیتمپ قبل از بارگیری فشرده شوند، و در نتیجه اندازهٔ دادههای بارگیری فونت PostScript کاهش یابد. این ویژگی بهویژه در تفکیکپذیریهای بالا یا هنگامی که از فونتهای بسیار بزرگ استفاده میشود، کاربرد دارد. این عمل تا حدی فرآیند چاپ را کند خواهد کرد، بهویژه در چاپگرهای اولیهٔ PostScript مبتنی بر پردازندهٔ 68000..SH "همچنین ببینید (SEE ALSO)" afm2tfm(1), tex(1), mf(1), dvitype(1), lpr(1), dvips.texi, https://tug.org/dvips.
محیط (ENVIRONMENT)
Dvipsk برای یافتن فایلهای قلم از همان متغیرهای محیطی و الگوریتمهایی استفاده میکند که TeX و ابزارهای مرتبط با آن به کار میبرند. برای جزئیات به مستندات کتابخانهٔ Kpathsea مراجعه کنید (تکرار آن در اینجا بیش از حد مفصل و طولانی است).
KPATHSEA_DEBUG: ردگیری جستجوهای Kpathsea؛ برای ردگیری کامل روی -1 تنظیم شود.
PRINTER: بالا را ببینید.
نکات (NOTES)
PostScript یک علامت تجاری ثبتشده متعلق به Adobe Systems Incorporated است.
نویسنده (AUTHOR)
Tomas Rokicki؛ گسترشیافته برای قلمهای مجازی توسط Don Knuth. جستجوی مسیر و تغییرات پیکربندی توسط Karl Berry.
در TeX Live نگهداری میشود؛ لطفاً گزارشهای باگ یا سایر مکاتبات را به tex-k@tug.org (https://lists.tug.org/tex-k) ارسال کنید.
| 24 October 2021 |