\documentclass[landscape,pdftex]{slides}
\pdfpagewidth=295mm
\pdfpageheight=210mm
\usepackage{graphicx}
\usepackage{color}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{array}
\usepackage{mflogo}
\newcommand{\slt}[1]{\raggedleft\textcolor{yellow}{\Large\textbf{#1}}\vfill\raggedright\par}
\newcommand{\prog}[1]{\texttt{#1}}
\newcommand{\mr}{\mathrm}
\newcommand{\cont}{{\small\ (continued)}}
\DeclareFontFamily{U}{farsi}{}
\DeclareFontShape{U}{farsi}{m}{n}{ <-> farsi }{}
\newcommand{\fa}[1]{\mbox{\Large\fontencoding{U}\fontfamily{farsi}\selectfont #1}}
\newcommand{\TeXXeT}{\TeX-{}-\reflectbox{\TeX}} 
\newcommand{\backs}{$\backslash$\TBD}

\newcommand{\TBD}{TBD}

\let\saveendslide=\endslide
\renewcommand{\endslide}{\vfill\saveendslide}

\let\saveslide=\slide
\renewcommand{\slide}{\saveslide\flushleft}

\title{\raggedleft\textcolor{yellow}{\LARGE\bfseries Farsi\TeX \\and the Iranian \TeX\ Community}}
\author{\raggedright\vspace{1em} Behdad Esfahbod\\\texttt{farsitex@behdad.org}\\\ \\
Roozbeh Pournader\\\texttt{roozbeh@sharif.edu}}
\date{\raggedright\textcolor{yellow}{The 23rd Conference and Annual Meeting\\
of the \TeX\ Users group,\\
Trivandrum, Kerala, India\\
September 4, 2002}}
\begin{document}
\pagecolor[rgb]{0,0,.113}
\color{white}
\maketitle

\begin{slide}
\slt{What is Persian?}
\begin{center}
\includegraphics{images.mps}
\end{center}
\end{slide}

\begin{slide}
\slt{The Modern Persian Script}
\begin{itemize}
\item Based on the Arabic Script
\item Extra letters:  Peh (\fa{p}), Tcheh (\fa{c}), Jeh (\fa{j}), and Gaf (\fa{g})
\item Modified letters: \begin{itemize}
\item Kaf (\fa{K}) $\to$ Keheh (\fa{k}) \item Yeh (\fa{x}) $\to$ Farsi Yeh
(\fa{y})\end{itemize}
\end{itemize}
\end{slide}

\begin{slide}
\slt{The History of the Script}
\begin{itemize}
\item The switch from Pahlavi to Arabic happened in the 7th century CE
\item The adaption propagated to Pakistan, Afghanistan, India,
China, Malaysia, and Java where the alphabet was extended even
more: 29 basic Arabic letters $\to$ 139 letters in modern use
(from Kurdish to Jawi)
\end{itemize}
\end{slide}

\begin{slide}
\slt{The Persian Typography}
\begin{itemize}
\item Based on calligraphic practices
  \begin{itemize}
  \item Originally Naskh (as opposed to Kufi), the Meccan style of writing Arabic
  \item Nastaliq was invented in 15th century CE and the calligraphy
  switched
  \end{itemize}
\item With lead typography it switched back to Naskh
\item With late 1990s proprietary digital typography tools, Nastaliq
become public again, but the popularity dropped because of unreadablity
\end{itemize}
\end{slide}

\begin{slide}
\slt{Persian Scientific Typography}
\begin{itemize}
\item Blossoming in 1950s by Mosahab works
(who also invented \emph{Iranic})
\item Manual typesetting using ``match stick methods''
\item LinoType machines in 1970s, modern publishers raised,
resulting in a leap in math books
\end{itemize}
\end{slide}

\begin{slide}
\slt{Localized \TeX s}
\begin{itemize}
\item \TeX-e-Parsi and \LaTeX-e-Farsi appearing in 1992
\item \TeX-e-Parsi, won the competition because of better
quality
\end{itemize}
\end{slide}

\begin{slide}
\slt{\TeX-e-Parsi}
\begin{itemize}
\item Developed by high investment from the vendor and a few major scientific publishers, going
      \TeX{}treme
\item The vendor went bankrupt in 1997
\item Latest version in 1996, with pre-3.0 \TeX\ and
\LaTeX\ 2.09 + NFSS
\item A few math departments and the two original publishers who sponsored it 
still use it
\item The price was very high
\end{itemize}
\end{slide}

\begin{slide}
\slt{Zarnegar, the alternative}
\begin{itemize}
\item Appearing in early 1995
\item Original design, using a visual markup language
\item Splendid fonts, and the vendor's knowledge of the market
\item Still in wide use: may be the second popular software
after MS Word
\item Main Problems: Unbearable math typesetting, and
a proprietary and closed file format
\end{itemize}
\end{slide}


\begin{slide}
\slt{Farsi\TeX}
\begin{itemize}
\item Started as an academic project by Mohammad Ghodsi in 1991, called
Fa\TeX\ in the first year
\item Three BSc projects provided the foundation in 1992 and 1993
\item Two master theses in 1994, shaped the current macros, and the Scientific Farsi (\prog{sf})
family of fonts
\item Some Arabic script specific works, like contextual shaping of letters, was done
in a pre-processor
\end{itemize}
\end{slide}

\begin{slide}
\slt{The Old Releases}
\begin{itemize}
\item A new team was gathered in 1996
\item The team created a new syntax and character set
\item Wrote some converters, and an MS-DOS editor
\item The engine was based on em\TeX, and \LaTeX\ 2.09
\item Released Farsi\TeX\ for MS-DOS under GNU GPL
\item The last release of this era is dated October 1998
\end{itemize}
\end{slide}

\begin{slide}
\slt{The New Releases}
\begin{itemize}
\item After a meeting in 2000, the team become semi-active again
\item A MS Windows editor was almost ready
\item Packaged engine based on MiK\TeX
\item Released the MS Windows version
\end{itemize}
\end{slide}

\begin{slide}
\slt{Other Released Stuff}
\begin{itemize}
\item Localized version of MakeIndex
\item Farsi\TeX\ to HTML converter tool, written from scratch
\item \dots which are just some prototypes
\end{itemize}
\end{slide}

\begin{slide}
\slt{Never Released Material}
\begin{itemize}
\item Azin fonts, as an alternative to the original Scientific Farsi font family
\item The \LaTeXe\ macros
\item te\TeX\ based engine (Linux \& friends finally)
\item Farsi\TeX2HTML, based on \LaTeX2HTML
\end{itemize}
\end{slide}

\begin{slide}
\slt{Never Released Material\cont}
\begin{itemize}
\item PostScript Type 1 Scientific Farsi fonts
\item Popular public domain Persian fonts, converted to both \MF\ and PS~Type~1
\item Farsi\TeX2Unicode character set converter
\end{itemize}
\end{slide}

\begin{slide}
\slt{Linux Editor?}
\begin{itemize}
\item Not yet.  Many people promised to write one, but possibly forgot it!
\item The current MS Windows editor runs using WINE
\item There's a Persian LyX
\item What about transliteration-based input?
\end{itemize}
\end{slide}

\begin{slide}
\slt{Problems with the Current Version}
The current version, being based on \LaTeX\ 2.09, has many problems,
a barrier to further development:
\begin{itemize}
\item \LaTeX\ 2.09 is not supported anymore
\item Lack of NFSS support, which makes using other Persian fonts too hard
\item The design is dirty, and overrides many \LaTeX\ internals, so that
hardly any \LaTeX\ package would work with Farsi\TeX, unless some tailoring is done
\end{itemize}
\end{slide}


\begin{slide}
\slt{\TeX nical Details}
\begin{itemize}
\item Having it's own character set, Farsi\TeX\ needs it's own special editor
\item Some converters are needed to pre-process the input
\item And finally, the macros (and the \TeXXeT\ engine) take care of bidirectional rendering
\end{itemize}
\end{slide}

\begin{slide}
\slt{Arabic Script Rendering}
\begin{center}
\setlength{\extrarowheight}{5mm}
\begin{tabular}{|l|l|l|}
\hline
Input text & Logical order & \fa{s} \fa{l} \fa{a} \fa{m} \\
\hline
After Bidirectional Algorithm & Visual order & \hfill\fa{m} \fa{a} \fa{l} \fa{s} \\
\hline
After Arabic Joining Algorithm & Glyph list & \hfill\fa{m} \fa{A} \fa{L} \fa{u} \\
\hline
After Ligation & Glyph list & \hfill\fa{m} \fa{M} \fa{u} \\
\hline
When Rendered & Output & \hfill\fa{m}\fa{M}\fa{u} \\
\hline
\end{tabular}
\end{center}

With enough care, the above algorithms can be applied in some different
order.
\end{slide}

\begin{slide}
\slt{Bidirectional Algorithm}
\begin{itemize}
\item Main issue to tackle
\item \TeXXeT\ can render bidirectional text
\item \dots but only when subtext directions are known explicitly!
\item The editor or the pre-processor should specially mark the directions
for the \TeXXeT\ engine
\end{itemize}
\end{slide}

\begin{slide}
\slt{Bidirectional Algorithm\cont}
\begin{itemize}
\item A very simplified bidirectional algorithm, but powerful
\item The editor converts between logical and visual orders
\item Two code points for some punctuation marks
\item Identify the direction (using the background color in the editor)
\item Pre-processor marks different directions by inserting \verb|\InE|,
\verb|\EnE|, \verb|\InF|, and \verb|\EnF|
\end{itemize}
\end{slide}

\begin{slide}
\slt{Joining \& Shaping Algorithms}
\begin{itemize}
\item Two adjacent letters may {\em join} to each other, or may not
\item \dots forming 1, 2, or 4 glyphs for each character (for example
\fa{s}, \fa{t}, \fa{v}, \fa{u})
\item The Joining Algorithm is for deciding if two adjacent letters do join or not
\item The Shaping Algorithm is for selecting the proper glyph, based on the results
of the Joining Algorithm 
\item The pre-processor and the editor are responsible for them
\end{itemize}
\end{slide}

\begin{slide}
\slt{Line Justification}
\begin{itemize}
\item It is common to stretch the joining line between letters
\item No inter-letter spacing, no hyphenation
\item The pre-processor inserts a {\em stretchable Kashida} character
between the connected letters
\item The active inserted character, then, expands to a horizontal glue
filled by horizontal rules
\end{itemize}
\end{slide}

\begin{slide}
\slt{Farsi\TeX\ Forever}
\begin{itemize}
\item Farsi\TeX\ is not released as a part of any \TeX\ distribution yet, mainly because
the team members still think that it's not stable
\item The team is going to cleanup and release the current code base,
with PostScript Type 1 fonts, based on MiK\TeX\ and te\TeX, for both MS Windows
and Linux platforms?
\end{itemize}
\end{slide}

\begin{slide}
\slt{Farsi\TeX\ Forever\cont}
\begin{itemize}
\item The system should be redesigned, restructured, and rewritten, which needs
breaking backwards compatibility, that is the reason it is not happened yet
\item And ``The Ultimate Solution'', is moving to Unicode and using Omega
\end{itemize}
\end{slide}

\begin{slide}
\slt{Iranian \TeX\ Community}
\begin{itemize}
\item There is no real community
\item There are people using (Farsi)\TeX\ daily and professionally
\item Some are active in mailing lists too
\item But it is far from an active community: nobody contributes
(\emph{has ever contributed}) patches!
\end{itemize}
\end{slide}

\begin{slide}
\slt{The Team}
\begin{center}
{\small (The new Farsi\TeX\ team in 1999)}\\
\includegraphics{team.png}\\
\prog{\large http://www.farsitex.org/}\\
{\Huge Questions?}
\end{center}
\end{slide}

\end{document}

\begin{slide}
\slt{}
\begin{itemize}
\item
\end{itemize}
\end{slide}
