我正在使用 LaTeXmk 用 XeTeX 排版一本完整的阿拉伯语书籍,生成的 PDF 在打开时显示的页面好像该书像拉丁文字一样从左到右打开,这是错误的,我不确定我做错了什么?
这是我的乳胶文件的标题:
% !TEX TS-program = XeLaTeX
\documentclass[a5paper,twoside,openright]{book}
\usepackage{geometry}
\geometry{
b5paper,
total={136mm,210mm},
left=20mm,
top=20mm,
}
\usepackage{polyglossia}
\usepackage{fontspec}
\usepackage[bookmarks=true,
bookmarksopen,
bookmarksopenlevel=1,
colorlinks=true,
pagebackref,
linkcolor=green
]{hyperref}
\hypersetup{pdftex,colorlinks=true,allcolors=blue}
\usepackage{hypcap}
\usepackage{graphicx}
\usepackage[RTLdocument]{bidi}
\usepackage{bidiftnxtra}
\usepackage{tocloft}
\renewcommand\cftchapafterpnum{\vskip10pt}
\renewcommand\cftsecafterpnum{\vskip12pt}
\setcounter{tocdepth}{2}
\setmainlanguage{arabic}
\setmainfont[Script=Arabic]{Amiri}
\let\arabicfonttt\ttfamily
\title{\RL{\Huge كتاب عربي}}
\author{\RL{}}
\date{\RL{}}
\rightfootnoterule
\makeatletter
\renewcommand{\thesection}{\@arabic\c@section}
\renewcommand{\thechapter}{\@arabic\c@chapter}
\renewcommand{\thepart}{\@arabic\c@part}
\makeatother
\begin{document}
\maketitle
هذا كتاب مكتوب بالعربي كاملا ولا يحوي سوى الحرف العربي
\end{document}
答案1
老问题了,不过好吧……
我相信您想将选项传递pdfdirection=R2L
给hyperref
包。您还可以指定pdfpagelayout=TwoColumnRight
显示对开页。
本序言创建了一个 A5 R2L 文档,该文档将在 Adobe Reader 中正确打开(其他 PDF 阅读器可能无法使用)。
\documentclass[12pt]{book}
\usepackage[a5paper]{geometry}
\usepackage{polyglossia}
\usepackage[pdfpagelayout=TwoColumnRight,pdfdirection=R2L]{hyperref}
\setmainlanguage{arabic}
\setmainfont[Script=Arabic]{Amiri}
\begin{document}
...
\end{document}
当我在 Adobe Reader 中打开生成的 PDF 时,我看到了以下内容(阿拉伯语是来自网络上的一些随机的 lorem ipsum):
至于上面评论中关于拼版的讨论,你应该把这个问题留给你的打印机来解决。只要他们知道应该使用右边缘装订,他们就会正确地完成。
您可以使用以下方式创建简单的 2up 小册子pdfbook
:
pdfbook --signature* '4' R2L.pdf
其中--signature*
(与默认值相反--signature
)指定您想要右边缘绑定。
但这对于一本600页的书来说并不合适。