From b440d83fb6796d951499ae5d6f7a073d4b68e931 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Thu, 7 May 2020 21:28:27 +0000 Subject: xepersian-hm (7may20) git-svn-id: svn://tug.org/texlive/trunk@55061 c570f23f-e606-0410-a88d-b1316a301751 --- .../doc/xelatex/xepersian-hm/doc-samples-glyph.pdf | Bin 0 -> 63436 bytes .../doc/xelatex/xepersian-hm/doc-samples-hrule.pdf | Bin 0 -> 62967 bytes .../doc/xelatex/xepersian-hm/doc-samples-xep.pdf | Bin 0 -> 65545 bytes .../xelatex/xepersian-hm/kashida-glyph-example.pdf | Bin 91744 -> 91742 bytes .../xelatex/xepersian-hm/kashida-glyph-example.tex | 2 +- .../xelatex/xepersian-hm/kashida-hrule-example.pdf | Bin 90703 -> 90706 bytes .../xelatex/xepersian-hm/kashida-hrule-example.tex | 2 +- .../xepersian-hm/kashida-xep-XB-example.pdf | Bin 0 -> 78687 bytes .../xepersian-hm/kashida-xep-XB-example.tex | 71 ++++++++++++++++++ .../doc/xelatex/xepersian-hm/xepersian-hm-doc.ltx | 79 ++++++++++++++++++++- .../doc/xelatex/xepersian-hm/xepersian-hm-doc.pdf | Bin 46065 -> 240878 bytes .../doc/xelatex/xepersian-hm/xepersian-hm.pdf | Bin 55345 -> 55239 bytes 12 files changed, 149 insertions(+), 5 deletions(-) create mode 100644 Master/texmf-dist/doc/xelatex/xepersian-hm/doc-samples-glyph.pdf create mode 100644 Master/texmf-dist/doc/xelatex/xepersian-hm/doc-samples-hrule.pdf create mode 100644 Master/texmf-dist/doc/xelatex/xepersian-hm/doc-samples-xep.pdf create mode 100644 Master/texmf-dist/doc/xelatex/xepersian-hm/kashida-xep-XB-example.pdf create mode 100644 Master/texmf-dist/doc/xelatex/xepersian-hm/kashida-xep-XB-example.tex (limited to 'Master/texmf-dist/doc/xelatex') diff --git a/Master/texmf-dist/doc/xelatex/xepersian-hm/doc-samples-glyph.pdf b/Master/texmf-dist/doc/xelatex/xepersian-hm/doc-samples-glyph.pdf new file mode 100644 index 00000000000..35eb72dd7ae Binary files /dev/null and b/Master/texmf-dist/doc/xelatex/xepersian-hm/doc-samples-glyph.pdf differ diff --git a/Master/texmf-dist/doc/xelatex/xepersian-hm/doc-samples-hrule.pdf b/Master/texmf-dist/doc/xelatex/xepersian-hm/doc-samples-hrule.pdf new file mode 100644 index 00000000000..783decc2cd1 Binary files /dev/null and b/Master/texmf-dist/doc/xelatex/xepersian-hm/doc-samples-hrule.pdf differ diff --git a/Master/texmf-dist/doc/xelatex/xepersian-hm/doc-samples-xep.pdf b/Master/texmf-dist/doc/xelatex/xepersian-hm/doc-samples-xep.pdf new file mode 100644 index 00000000000..37ae4f5e1c3 Binary files /dev/null and b/Master/texmf-dist/doc/xelatex/xepersian-hm/doc-samples-xep.pdf differ diff --git a/Master/texmf-dist/doc/xelatex/xepersian-hm/kashida-glyph-example.pdf b/Master/texmf-dist/doc/xelatex/xepersian-hm/kashida-glyph-example.pdf index 91047f8cec4..77033af7c55 100644 Binary files a/Master/texmf-dist/doc/xelatex/xepersian-hm/kashida-glyph-example.pdf and b/Master/texmf-dist/doc/xelatex/xepersian-hm/kashida-glyph-example.pdf differ diff --git a/Master/texmf-dist/doc/xelatex/xepersian-hm/kashida-glyph-example.tex b/Master/texmf-dist/doc/xelatex/xepersian-hm/kashida-glyph-example.tex index 299b605aa71..4bcbcfc66ca 100644 --- a/Master/texmf-dist/doc/xelatex/xepersian-hm/kashida-glyph-example.tex +++ b/Master/texmf-dist/doc/xelatex/xepersian-hm/kashida-glyph-example.tex @@ -1,4 +1,4 @@ -% \PassOptionsToPackage{Kashida=off,RTLdocument=on}{xepersian} % Load xepersian with a few options +% \PassOptionsToPackage{debugfootnotedirection=off,localise=off}{xepersian} % Load xepersian with a few options \documentclass{report} % \textwidth=345.0pt % \textheight=550.0pt diff --git a/Master/texmf-dist/doc/xelatex/xepersian-hm/kashida-hrule-example.pdf b/Master/texmf-dist/doc/xelatex/xepersian-hm/kashida-hrule-example.pdf index 865d7a3551c..6cf4f8078c8 100644 Binary files a/Master/texmf-dist/doc/xelatex/xepersian-hm/kashida-hrule-example.pdf and b/Master/texmf-dist/doc/xelatex/xepersian-hm/kashida-hrule-example.pdf differ diff --git a/Master/texmf-dist/doc/xelatex/xepersian-hm/kashida-hrule-example.tex b/Master/texmf-dist/doc/xelatex/xepersian-hm/kashida-hrule-example.tex index 64926c354a0..48894d1413c 100644 --- a/Master/texmf-dist/doc/xelatex/xepersian-hm/kashida-hrule-example.tex +++ b/Master/texmf-dist/doc/xelatex/xepersian-hm/kashida-hrule-example.tex @@ -1,4 +1,4 @@ -% \PassOptionsToPackage{Kashida=off,RTLdocument=on}{xepersian} % Load xepersian with a few options +% \PassOptionsToPackage{debugfootnotedirection=off,localise=off}{xepersian} % Load xepersian with a few options \documentclass{report} % \textwidth=345.0pt % \textheight=550.0pt diff --git a/Master/texmf-dist/doc/xelatex/xepersian-hm/kashida-xep-XB-example.pdf b/Master/texmf-dist/doc/xelatex/xepersian-hm/kashida-xep-XB-example.pdf new file mode 100644 index 00000000000..a35eef3bcdd Binary files /dev/null and b/Master/texmf-dist/doc/xelatex/xepersian-hm/kashida-xep-XB-example.pdf differ diff --git a/Master/texmf-dist/doc/xelatex/xepersian-hm/kashida-xep-XB-example.tex b/Master/texmf-dist/doc/xelatex/xepersian-hm/kashida-xep-XB-example.tex new file mode 100644 index 00000000000..f623cb26e6a --- /dev/null +++ b/Master/texmf-dist/doc/xelatex/xepersian-hm/kashida-xep-XB-example.tex @@ -0,0 +1,71 @@ +\documentclass{report} +\usepackage[Kashida=on]{xepersian} +\settextfont[Scale=4.5]{XB Kayhan} +\setlatintextfont[Scale=1.5,Colour=0000FF]{XB Kayhan} + +\defpersianfont\XBKayhanIt[Scale=4.5]{XB Kayhan Italic} +\defpersianfont\XBKayhanOb[Scale=4.5]{XB Zar Oblique} +\defpersianfont\XBKayhanOl[Scale=4.5]{XB Kayhan Pook} +\defpersianfont\XBKayhanSd[Scale=4.5]{XB Kayhan Sayeh} + +\def\SampleText{ + راهی جایی تابی چاپی چاههی تلاشهایی + شتابهایی تابی چاپی راهی تلاشهــایی + که کتابهایی که کلاههایی که کتابهایی } + +\setlength\parindent{0pt} +\pagestyle{empty} + +\begin{document} + +\begin{latin} +\begin{center} +\Huge\textsf{xepersian}\vspace{20pt}\\ Example of Use\vspace{20pt}\\ \texttt{Kashida=hrule} \vspace{40pt} + +{\Large +\begin{tabular}{ll} + \textsf{Font:} & \textsf{XB Kayhan} \\ + \textsf{Font Scale:} & \texttt{4.5} \\ +\end{tabular} +} +\end{center} + +\end{latin} + +\newpage + +\KashidaOff{\hfill\lr{(Kashida Off, Regular)}\hfill} + +\SampleText + +\newpage + +\KashidaOn{\hfill\lr{(Kashida On, Regular)}\hfill} + +\SampleText + +\newpage + +\KashidaOn{\hfill\lr{(Kashida On, Italic)}\hfill} + +{\XBKayhanIt \SampleText} + +\newpage + +\KashidaOn{\hfill\lr{(Kashida On, Oblique)}\hfill} + +{\XBKayhanOb \SampleText} + +\newpage + +\KashidaOn{\hfill\lr{(Kashida On, Pook)}\hfill} + +{\XBKayhanOl \SampleText} + +\newpage + +\KashidaOn{\hfill\lr{(Kashida On, Sayeh)}\hfill} + +{\XBKayhanSd \SampleText} + +\end{document} diff --git a/Master/texmf-dist/doc/xelatex/xepersian-hm/xepersian-hm-doc.ltx b/Master/texmf-dist/doc/xelatex/xepersian-hm/xepersian-hm-doc.ltx index 1a2d88f8aa5..ba04fee9039 100644 --- a/Master/texmf-dist/doc/xelatex/xepersian-hm/xepersian-hm-doc.ltx +++ b/Master/texmf-dist/doc/xelatex/xepersian-hm/xepersian-hm-doc.ltx @@ -8,8 +8,11 @@ %% this license is at: http://www.latex-project.org/lppl.txt %% \documentclass{ltxdoc} +\usepackage{graphicx} \usepackage{longtable} \usepackage{hypdoc} +\usepackage{xepersian-hm} +\settextfont[Scale=1]{HM XKayhan} \title{ The \textsf{xepersian-hm} package\\Fixing kashida in xepersian\\User Documentation @@ -24,9 +27,12 @@ } } -\date{Released \quad 2020-05-01 \quad v0.5c} +\date{Released \quad 2020-05-07 \quad v0.5d} +\let\tmpthepage\thepage +\renewcommand{\thepage}{\lr{\Large\textbf\tmpthepage}} \begin{document} +\begin{latin} \maketitle @@ -49,6 +55,61 @@ I will do my best to fix all the bugs you report, but, unfortunately, time is a big hurdle to overcome; so, my apologies in advance for those which I cannot make time to fix. +\section{Brief outline of the issues} + +Kashida is one of the most important features that must be included in any +Persian typesetter. In xepersian this feature is implemented but with some +problems. These problems along withe fixes in xepersian-hm are briefly: + +\newcounter{bean} + \begin{list}{P-\Roman{bean}}{\usecounter{bean}\setlength{\rightmargin}{\leftmargin}} + \item In \textsf{xepersian} overlapping of glyphs occurs in letter + combinations such as "\rl{‏ب‍ + ‍ی‏}", "\rl{‏ت‍ + ‍ی‏}", and + "\rl{‏پ‍ + ‍ی‏}" because the character + \textsf{U+FEF0 (ARABIC LETTER FARSI YEH FINAL FORM)} is replaced with + another character. This is fixed by modifying the fixed part of the + glue inserted between the consecutive characters. Furthermore, both, + the fixed and the stretchable parts of the glue can be changed by the + user. + \item In letter combinations such as "\rl{‏ه‍ + ‍ی‏}", in \textsf{xepersian}, + the character \textsf{U+FEEB (ARABIC LETTER HEH INITIAL FORM)} is + replaced with \textsf{U+06BE (ARABIC LETTER HEH DOACHASHEMEE)}. This + is fixed by inserting the character \textsf{U+200E} before the + combination "\textsf{U+200D + hrule + U+200D}" which is used as + stretching item. + \item In \textsf{xepersian} when outline or shadow fonts are used, the gaps + filled by horizontal rule appears as a solid box. This is fixed by + using the \textsf{kashida} glyph instead of the horizontal rule in + \textsf{xepersian-hm}. + \item If italic or oblique style of some fonts such as \textsf{X Series 2} + is used in \textsf{xepersian}, an extra gap is left between the + stretched characters. This is fixed in \textsf{HM Series} fonts. +\end{list} + +For comparing the outputs of \textsf{xepersian} and \textsf{xepersian-hm} with +a variety of options available to these packages, please see the +\mbox{Figure \ref{fig:xepersian-XB}}, +\mbox{Figure \ref{fig:xepersian-hm-hrule}}, and +\mbox{Figure \ref{fig:xepersian-hm-glyph}}. + +\begin{figure} + \centerline{\includegraphics[scale=1]{doc-samples-xep.pdf}} + \caption{Package: \textsf{xeprsian}, Font: \textsf{XB Kayhan}, \textsf{Scale=4.5}, \textsf{Kashida=0n}} + \label{fig:xepersian-XB} +\end{figure} + +\begin{figure} + \centerline{\includegraphics[scale=1]{doc-samples-hrule.pdf}} + \caption{Package: \textsf{xeprsian-hm}, Font: \textsf{HM XKayhan}, \textsf{Scale=4.5}, \textsf{Kashida=hrule}} + \label{fig:xepersian-hm-hrule} +\end{figure} + +\begin{figure} + \centerline{\includegraphics[scale=1]{doc-samples-glyph.pdf}} + \caption{Package: \textsf{xeprsian-hm}, Font: \textsf{HM XKayhan}, \textsf{Scale=4.5}, \textsf{Kashida=glyph}} + \label{fig:xepersian-hm-glyph} +\end{figure} + \section{Package loading and options} Please note that \textsf{xepersian-hm} loads \textsf{xepersian} automatically, @@ -56,7 +117,7 @@ so you may only pass options to the package using the command \verb|\PassOptionsToPackage| before \verb|\documentclass|. For example: \begin{verbatim} -\PassOptionsToPackage{Kashida=off,RTLdocument=on}{xepersian} +\PassOptionsToPackage{debugfootnotedirection=off,localise=off}{xepersian} \documentclass{report} \usepackage{xcolor} \usepackage[Kashida,kashidastretch=0.14 em plus 0.5 em]{xepersian-hm} @@ -77,7 +138,8 @@ The options available in \textsf{xepersian-hm} are: xelatex kashida-example.tex} Please note that this feature is still experimental and is not regarded as stable. - If you are going to use this option be ready for unpredictable results. + If you are going to use this option be ready for unpredictable results. Note that + the value of \texttt{Kashida} is mandatory. \item \texttt{hrule}: \\ which uses a horizontal rule (\verb|\hrule|) to stretch the text. @@ -154,6 +216,17 @@ The options available in \textsf{xepersian-hm} are: \texttt{\bslash discouragebadlinebreaks[9][0.12 em plus 0.5 em]\{\dots\}} \end{description} + +\section{Important notes} + +\begin{description} + \item Kashida and ligatures: + + The method used to implement kashida feature breaks a ligature if it is applied to the letters which are joined to form + the ligature. +\end{description} + +\end{latin} \end{document} %% %% diff --git a/Master/texmf-dist/doc/xelatex/xepersian-hm/xepersian-hm-doc.pdf b/Master/texmf-dist/doc/xelatex/xepersian-hm/xepersian-hm-doc.pdf index cc80a884439..f1f5e0dad2d 100644 Binary files a/Master/texmf-dist/doc/xelatex/xepersian-hm/xepersian-hm-doc.pdf and b/Master/texmf-dist/doc/xelatex/xepersian-hm/xepersian-hm-doc.pdf differ diff --git a/Master/texmf-dist/doc/xelatex/xepersian-hm/xepersian-hm.pdf b/Master/texmf-dist/doc/xelatex/xepersian-hm/xepersian-hm.pdf index b460f20455c..fd7f0439922 100644 Binary files a/Master/texmf-dist/doc/xelatex/xepersian-hm/xepersian-hm.pdf and b/Master/texmf-dist/doc/xelatex/xepersian-hm/xepersian-hm.pdf differ -- cgit v1.2.3