Arabic in LaTeX

Here is some information about getting Arabic in a LaTeX document:

XeLaTeX

Using the XeLaTeX engine to compile your document, rather than other engines, is probably the best option because it allows you to use any Arabic system fonts you have (and is less buggy than other methods in my experience!).

There are a number of packages that will work with XeLaTeX to get Arabic into your document. The best is the Polyglossia package. I've prepared two examples documents, one showing what types of things you can do with Arabic in a document with English as the main language (here), and the other showing a document with Arabic as the main language (here). My original source for learning this information was this thread on StackExchange. If you open these files in your browser the Arabic will probably not display correctly; instead, you should save the file and open in a TeX editor. Make sure that it is utf-8 encoded.

Getting Arabic into a Beamer presentation is even more finicky because the Polyglossia package doesn't interact well with Beamer documents. I have a working example here that you can look at if you want to do this.

In all of these documents, I am calling Arabic fonts that are installed on my system. You will need to make sure that these fonts are installed on your system before you try to compile the documents.

I work on a Mac; if you are working on a PC, it can be annoying to make sure that your documents stay utf-8 encoded (or so I've heard). If you are worried about this, then you may want to use this method from my friend Rich. You could also check out the ArabXeTeX package.

Other engines

If you don't want to compile your document with the XeLaTeX engine, then you will have to use the Babel and Arabi packages. Here is an example document (don't forget that you must have the ARFonts.sty file in the same directory as the .tex file for it to compile). Note that your font choices will be very limited if you decide to go this route.

If you don't want to deal with utf-8 encoding your document, then there is the ArabTeX package that you can check out.