htmldoc(1) Michael R Sweet htmldoc(1)
نام (NAME)
htmldoc - تبدیل فایلهای مبدأ html به فرمتهای html، postscript یا pdf
خلاصه دستور (SYNOPSIS)
htmldoc [options] filename1.{html,md} [ ... filenameN.{html,md} ]
htmldoc [options] -
htmldoc [filename.book]
توضیحات (DESCRIPTION)
برنامه Htmldoc(1) فایلهای منبع HTML و Markdown را به فایلهای نمایه شده
HTML، PostScript یا قالب سند قابل حمل (PDF) که قابل مشاهده آنلاین یا
چاپ هستند تبدیل میکند. بدون مشخص کردن هیچ گزینهای، یک سند HTML در
خروجی استاندارد (stdout) تولید میشود.
شکل دوم دستور htmldoc ورودی HTML را از ورودی استاندارد (stdin) میخواند،
که به شما امکان میدهد از htmldoc به عنوان یک فیلتر استفاده کنید.
شکل سوم دستور htmldoc یک رابط کاربری گرافیکی (GUI) را اجرا میکند که به
شما امکان میدهد گزینهها را به صورت تعاملی تغییر داده و اسناد را تولید
نمایید.
اشتباهات رایج (COMMON MISTAKES)
دو نوع فایل HTML وجود دارد - اسناد ساختاریافته با استفاده از سرآیندها
(H1، H2 و غیره) که htmldoc آنها را «کتاب» (books) مینامد، و اسناد بدون
ساختار که از سرآیندها استفاده نمیکنند که htmldoc آنها را «صفحات وب»
(web pages) مینامد.
یک اشتباه بسیار متداول این است که تلاش شود یک صفحه وب با استفاده از
دستور زیر تبدیل گردد:
htmldoc -f filename.pdf filename.html
که این کار احتمالاً یک فایل PDF فاقد هرگونه صفحه تولید خواهد کرد. برای
تبدیل فایلهای صفحات وب، شما باید از گزینههای --webpage یا --continuous
در خط فرمان استفاده کنید، یا در برگه ورودی رابط گرافیکی گزینه Web Page
یا Continuous را انتخاب نمایید.
گزینهها (OPTIONS)
گزینههای خط فرمان زیر توسط htmldoc پشتیبانی میشوند:
--batch filename.book
فایل کتاب مشخصشده را بدون باز کردن رابط گرافیکی تولید میکند.
--bodycolor color
رنگ پسزمینه را برای تمام صفحات تعیین میکند.
--bodyfont {courier,helvetica,monospace,sans,serif,times}
--textfont {courier,helvetica,monospace,sans,serif,times}
قلم پیشفرض را برای تمام متنهای معمولی تعیین میکند.
--bodyimage filename
تصویر پسزمینهای را که در تمام صفحات تکرار (tile) میشود تعیین
میکند.
--book
مشخص میکند که منابع HTML ساختاریافته هستند (سرآیندها، فصلها و
غیره).
--bottom margin
حاشیه پایین را بر حسب پوینت (بدون پسوند یا ##pt)، اینچ (##in)،
سانتیمتر (##cm)، یا میلیمتر (##mm) تعیین میکند.
--charset {cp-nnnn,iso-8859-1,...,iso-8859-15,utf-8}
مجموعه نویسه (character set) مورد استفاده برای خروجی را مشخص
میکند. نکته: پشتیبانی از UTF-8 محدود به ۱۲۸ نویسه اول یونیکد
یافتشده در ورودی است.
--color
مشخص میکند که خروجی PostScript یا PDF باید رنگی باشد.
--continuous
مشخص میکند که منابع HTML بدون ساختار هستند (صفحات وب ساده). هیچ
شکست صفحهای بین فایلها یا URLها در خروجی درج نمیشود.
--datadir directory
محل فایلهای داده htmldoc را مشخص میکند، که معمولاً
/usr/share/htmldoc یا C:/Program Files/HTMLDOC است.
--duplex
مشخص میکند که خروجی باید برای چاپ دورو قالببندی شود.
--effectduration {0.1...10.0}
مدت زمان جلوههای انتقال صفحه PDF را بر حسب ثانیه مشخص میکند.
--embedfonts
مشخص میکند که فونتها باید در خروجی PDF و PostScript جاسازی (embed)
شوند.
--encryption
رمزنگاری فایلهای PDF را فعال میکند.
--fontsize size
اندازه فونت پیشفرض متن بدنه را مشخص میکند.
--fontspacing spacing
فاصله خطوط پیشفرض متن بدنه را مشخص میکند. فاصله خطوط ضریبی از
اندازه فونت است؛ بنابراین مقدار 1.2 فضای بین خطوط را ۲۰٪ افزایش
میدهد.
--footer fff
پاورقی مورد استفاده در صفحات بدنه را تنظیم میکند. بخش قالبهای
سربرگ/پاورقی (HEADER/FOOTER FORMATS) در زیر را مشاهده کنید.
--format format
-t format
قالب خروجی را تعیین میکند: epub، html، htmlsep (فایلهای HTML مجزا
برای هر سرآیند در جدول فهرست)، ps یا ps2 (پستاسکریپت سطح ۲)، ps1
(پستاسکریپت سطح ۱)، ps3 (پستاسکریپت سطح ۳)، pdf11 (پیدیاف
۱.۱/Acrobat 2.0)، pdf12 (پیدیاف ۱.۲/Acrobat 3.0)، pdf یا pdf13
(پیدیاف ۱.۳/Acrobat 4.0)، یا pdf14 (پیدیاف ۱.۴/Acrobat 5.0).
--gray
مشخص میکند که خروجی PostScript یا PDF باید سیاه و سفید (grayscale)
باشد.
--header fff
سربرگ صفحه را برای استفاده در صفحات بدنه تعیین میکند. بخش قالبهای
سربرگ/پاورقی (HEADER/FOOTER FORMATS) در زیر را ببینید.
--header1 fff
سربرگ صفحه را برای اولین صفحه بدنه/فصل تعیین میکند. بخش قالبهای
سربرگ/پاورقی (HEADER/FOOTER FORMATS) در زیر را ببینید.
--headfootfont font
فونت مورد استفاده در سربرگ و پاورقی را تعیین میکند.
--headfootsize size
اندازه فونت مورد استفاده در سربرگ و پاورقی را تعیین میکند.
--headingfont typeface
نوع قلم مورد استفاده برای سرآیندها را مشخص میکند.
--help
خلاصهای از گزینههای خط فرمان را نمایش میدهد.
--helpdir directory
مسیر دایرکتوری راهنمای آنلاین htmldoc را مشخص میکند که معمولاً
/usr/share/doc/htmldoc یا C:/Program Files/HTMLDOC/DOC است.
--hfimageN filename
تصویری را (شمارهگذاریشده از ۱ تا ۱۰) برای استفاده در سربرگ یا
پاورقی یک سند PostScript یا PDF مشخص میکند.
--jpeg[=quality]
سطح فشردهسازی JPEG را برای تصاویر بزرگ تنظیم میکند. مقدار 0
فشردهسازی JPEG را غیرفعال میسازد.
--left margin
حاشیه چپ را بر حسب پوینت (بدون پسوند یا ##pt)، اینچ (##in)،
سانتیمتر (##cm)، یا میلیمتر (##mm) تعیین میکند.
--letterhead filename
تصویری را به عنوان سربرگ رسمی (letterhead) در هدر یا فوتر سند
PostScript یا PDF مشخص میکند. توجه داشته باشید که لازم است از
گزینههای --header، --header1 و/یا --footer همراه با پارامتر L
استفاده کنید یا از کامنتهای متناظر در صفحه HTML بهره ببرید تا
تصویر سربرگ رسمی نمایش داده شود.
--linkcolor color
رنگ پیوندها را تنظیم میکند.
--links
تولید پیوندها را در فایلهای PDF فعال میکند (پیشفرض).
--linkstyle {plain,underline}
سبک پیوندها را تعیین میکند.
--logoimage filename
تصویری را به عنوان نشانواره (لوگو) در سربرگ یا پاورقی سند
PostScript یا PDF، و در نوار ناوبری سند HTML مشخص میکند. توجه
داشته باشید که باید از گزینههای --header، --header1 و/یا --footer
همراه با پارامتر l استفاده نمایید یا از کامنتهای متناظر در صفحه
HTML بهره ببرید تا تصویر لوگو نمایش داده شود.
--no-compression
فشردهسازی فایلهای PostScript یا PDF را غیرفعال میکند.
--no-duplex
چاپ دورو را غیرفعال میکند.
--no-embedfonts
مشخص میکند که فونتها نباید در خروجی PDF و PostScript جاسازی شوند.
--no-encryption
رمزنگاری سند را غیرفعال میکند.
--no-jpeg
فشردهسازی JPEG تصاویر بزرگ را غیرفعال میکند.
--no-links
تولید پیوندها را در سند PDF غیرفعال میکند.
--no-numbered
شمارهگذاری خودکار سرآیندها را غیرفعال میکند.
--no-pscommands
تولید دستورات setpagedevice در PostScript را غیرفعال میکند.
--no-strict
بررسی سختگیرانه ورودی HTML را غیرفعال میکند.
--no-title
تولید صفحه عنوان را غیرفعال میکند.
--no-toc
تولید جدول فهرست مطالب را غیرفعال میکند.
--numbered
تمام سرآیندهای سند را شمارهگذاری میکند.
--nup pages
تعداد صفحاتی را که در هر صفحه خروجی قرار میگیرند تعیین میکند.
مقادیر معتبر شامل 1، 2، 4، 6، 9 و 16 هستند.
--outdir directory
-d directory
مشخص میکند که خروجی باید در چندین فایل در یک دایرکتوری ذخیره شود
(با خروجی PDF سازگار نیست).
--outfile filename
-f filename
مشخص میکند که خروجی باید در یک فایل واحد نوشته شود.
--owner-password password
رمز عبور مالک (owner password) را برای فایلهای PDF رمزنگاریشده
تعیین میکند.
--pageduration {1.0...60.0}
مدت زمان نمایش هر صفحه را در سند PDF تعیین میکند.
--pageeffect effect
جلوه انتقال صفحه را برای تمام صفحات مشخص میکند؛ این ویژگی توسط
تمام برنامههای نمایش PDF شرکت Adobe نادیده گرفته میشود.
--pagelayout {single,one,twoleft,tworight}
چیدمان اولیه صفحات را برای فایل PDF تعیین میکند.
--pagemode {document,outlines,fullscreen}
حالت نمایش اولیه را برای فایل PDF مشخص میکند.
--path
مسیر جستجوی فایلها در یک سند را مشخص میکند.
--permissions permission[,permission,...]
مجوزهای سند را برای فایلهای PDF رمزنگاریشده تعیین میکند. مجوزهای
شناختهشده عبارتند از: all، none، annotate، no-annotate، copy، no-
copy، modify، no-modify، print و no-print. چند مجوز را با کاما جدا
کنید.
--pre-indent distance
میزان تورفتگی متن پیشفرمتشده را بر حسب پوینت (بدون پسوند یا ##pt)،
اینچ (##in)، سانتیمتر (##cm)، یا میلیمتر (##mm) مشخص میکند.
--pscommands
مشخص میکند که دستورات setpagedevice در PostScript باید در خروجی
گنجانده شوند.
--quiet
نمایش تمام پیامها، حتی پیامهای خطا را متوقف میکند.
--referer url
نشانی URL ارسالشده در فیلد Referer: در درخواستهای HTTP را مشخص
میکند.
--right margin
حاشیه راست را بر حسب پوینت (بدون پسوند یا ##pt)، اینچ (##in)،
سانتیمتر (##cm)، یا میلیمتر (##mm) تعیین میکند.
--size pagesize
اندازه صفحه را با استفاده از نامهای استاندارد یا بر حسب پوینت
(بدون پسوند یا ##x##pt)، اینچ (##x##in)، سانتیمتر (##x##cm)، یا
میلیمتر (##x##mm) تعیین میکند. اندازههای استاندارد شناختهشده
عبارتند از "letter" (8.5x11in)، "legal" (8.5x14in)، "a4"
(210x297mm) و "universal" (8.27x11in).
--strict
بررسی سختگیرانه ورودی HTML را فعال میکند.
--textcolor color
رنگ پیشفرض تمامی متون را تعیین میکند.
--title
تولید صفحه عنوان را فعال میکند.
--titlefile filename
--titleimage filename
فایل مورد استفاده برای صفحه عنوان را مشخص میکند. اگر فایل یک
تصویر باشد، صفحه عنوان به طور خودکار با استفاده از متادیتای سند و
تصویر عنوان تولید میشود.
--tocfooter fff
پاورقی مورد استفاده در صفحات فهرست مطالب را تعیین میکند. بخش
قالبهای سربرگ/پاورقی (HEADER/FOOTER FORMATS) در زیر را ببینید.
--tocheader fff
سربرگ مورد استفاده در صفحات فهرست مطالب را تعیین میکند. بخش
قالبهای سربرگ/پاورقی (HEADER/FOOTER FORMATS) در زیر را ببینید.
--toclevels levels
تعداد سطوح در فهرست مطالب را تنظیم میکند.
--toctitle string
عنوان فهرست مطالب را تعیین میکند.
--top margin
حاشیه بالا را بر حسب پوینت (بدون پسوند یا ##pt)، اینچ (##in)،
سانتیمتر (##cm)، یا میلیمتر (##mm) تعیین میکند.
--user-password password
رمز عبور کاربر را برای رمزنگاری فایلهای PDF تعیین میکند.
--verbose
-v پیامها را با جزئیات کامل نمایش میدهد.
--version
شماره نسخه فعلی را نمایش میدهد.
--webpage
مشخص میکند که منابع HTML بدون ساختار هستند (صفحات وب ساده). یک
شکست صفحه بین هر فایل یا URL در خروجی درج میشود.
وضعیت خروج (EXIT STATUS)
دستور Htmldoc در صورت مشاهده هرگونه خطا وضعیت خروج غیرصفر بازمیگرداند،
و در غیر این صورت صفر برمیگرداند.
قالبهای سربرگ/پاورقی (HEADER/FOOTER FORMATS)
سربرگ و پاورقی هر صفحه میتواند شامل حداکثر سه مقدار از پیش قالببندیشده
باشد. این مقادیر با استفاده از یک نویسه برای سمت چپ، وسط و راست صفحه
مشخص میشوند که حاصل آن قالب fff است که پیشتر نشان داده شد.
هر نویسه میتواند یکی از موارد زیر باشد:
. خالی
/ شماره صفحات n/N با ارقام هندی-عربی (1/3، 2/3، 3/3)
: شماره صفحات فصل c/C با ارقام هندی-عربی (1/2، 2/2، 1/4، 2/4، ...)
1 شمارههای انگلیسی/هندی-عربی (1، 2، 3، ...)
a حروف کوچک انگلیسی
A حروف بزرگ انگلیسی
c سرآیند فصل فعلی
C شماره صفحه فصل فعلی (ارقام عادی)
d تاریخ فعلی
D تاریخ و زمان فعلی
h سرآیند فعلی
i اعداد رومی با حروف کوچک
I اعداد رومی با حروف بزرگ
l تصویر لوگو
L تصویر لوگو به صورت سربرگ رسمی - تصویر در حداکثر اندازه خود درج
میشود
t متن عنوان
T زمان فعلی
u نام فایل یا URL فعلی
وضعیت خروج (EXIT STATUS)
دستور Htmldoc با تعداد خطاهایی که رخ داده است خارج میشود.
متغیرهای محیطی (ENVIRONMENT)
دستور Htmldoc چند متغیر محیطی را بررسی میکند که میتوانند دایرکتوریهای
پیشفرض را لغو کرده، اطلاعات خطایابی اضافی نمایش دهند، و حالت CGI را
غیرفعال کنند:
HTMLDOC_DATA
این متغیر محیطی محل دایرکتوریهای داده و فونتهای htmldoc را مشخص
میکند که معمولاً /usr/share/htmldoc یا C:/Program Files/HTMLDOC
است.
HTMLDOC_DEBUG
این متغیر محیطی اطلاعات خطایابی ارسالشده به خروجی خطای استاندارد
(stderr) را فعال میکند. مقدار آن فهرستی از کلمات کلیدی زیر است که
با فاصله از هم جدا میشوند: "all"، "links"، "memory"،
"remotebytes"، "table"، "tempfiles" و/یا "timing".
HTMLDOC_HELP
این متغیر محیطی محل دایرکتوری مستندات htmldoc را مشخص میکند که
معمولاً /usr/share/doc/htmldoc یا C:/Program Files/HTMLDOC/doc است.
HTMLDOC_NOCGI
این متغیر محیطی، در صورت مقداردهی (مقدار آن اهمیتی ندارد)، حالت
CGI را غیرفعال میکند. این گزینه برای استفاده از htmldoc روی وبسرور
از طریق یک زبان اسکریپتنویسی یا فراخوانی از یک برنامه بسیار مفید
است.
مثالها (EXAMPLES)
ایجاد یک فایل PDF از یک وبسایت:
htmldoc --webpage -f example.pdf http://www.example.com
ایجاد یک کتاب PostScript از یک دایرکتوری شامل فایلهای HTML:
htmldoc --book -f example.pdf *.html
همچنین ببینید (SEE ALSO)
راهنمای کاربران HTMLDOC (Users Manual)
https://www.msweet.org/htmldoc
نویسنده (AUTHOR)
Michael R Sweet
موارد قانونی (LEGAL STUFF)
حق نشر HTMLDOC متعلق به Michael R Sweet است (© 1997-2025).
این برنامه نرمافزار آزاد است؛ شما میتوانید آن را تحت شرایط مجوز عمومی
همگانی گنو (GNU GPL) نسخه ۲ که توسط بنیاد نرمافزارهای آزاد منتشر شده،
بازتوزیع کرده و/یا تغییر دهید.
این برنامه به این امید توزیع شده است که مفید واقع شود، اما بدون هرگونه
ضمانت؛ حتی بدون ضمانت ضمنی قابل فروش بودن یا مناسب بودن برای یک هدف
خاص. برای جزئیات بیشتر به مجوز عمومی همگانی گنو مراجعه کنید.
شما باید نسخهای از مجوز عمومی همگانی گنو را همراه با این برنامه دریافت
کرده باشید؛ در غیر این صورت، به آدرس زیر مکاتبه کنید: Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA.
2025-12-23 HTMLDOC 1.9.22 htmldoc(1)