This presentation was used in a workshop was conducted on 15/11/2015, in Kuala Lumpur, Malaysia.
Size: 2.69 MB
Language: en
Added: Feb 08, 2017
Slides: 51 pages
Slide Content
LATEX
WORKSHOP
By
Mohamed A. Alrshah
15 November, 2015
TEX?
TEX is a typesetting system that incorporates a
macro processor.
A TEX source document specifies a number of
macro definitions that instruct the TEX engine
how to typeset the document.
Its implementations are governed by the
principle that the same input should produce the
same output.
LATEX?..
LATEX2ε?..
MiKTEX?..
LATEX is a macro package which enables authors to
typeset and print their work at the highest
typographical quality, using a predefined, professional
layout. It uses the TEX formatter as its typesetting
engine.
LATEX2ε includes all the patches which had cropped
up since the release of LATEX 2.09.
MiKTEX is an up-to-date implementation of TEX and
related programs (installation package).
The Concept
How does LATEX works?
INPUT
.tex : The manuscript
text with interspersed
T
EX commands.
.eps, .pdf, .jpg, etc :
graphics files.
.bib: bibliography.
PROCESS/COMPILE
Latex.exe
Pdflatex.exe
LuaTeX.exe
XeTeX .exe
OUTPUT
1- .dvi or .pdf,
HTML, XML, etc.
2- .log: transcript
3- .aux: auxiliary
LATEX vs WYSIWYG
Criterion WYSIWYG LAT
E
X
Document Editing Users need to use the same tool. Users can arbitrary use any text editor.
Changing format
The entire document needs to be
checked for any unwanted results.
The class and some commands need
to be changed.
Layout quality
High quality layout can be reached by
professional users only.
The standard Layout is already high
quality.
Huge contents
program crashes and instability likely
happen with large documents especially
if high-quality graphics incorporated.
Faster since only text and formatting
commands merged and the separate
typesetting steps are only done.
Citation
Requires additional tool such as
Mendeley or Endnote.
It is professionally handled using the
free and built-in BibTeX tool.
compatibility Low compatibility with all editors & OSs.
High compatibility with all editors &
OSs.
Backward compatibilityIs not fully supported. Is not fully supported.
Split work into many files
Usually no practicable solution
available.
Available.
Cost Some are free with limited features.Free
Installation Packages
1- The TeX engine:
basic-miktex-2.9.5105-x64.exe
2- The TeX editor:
texstudio-2.10.2-win-qt5.5.0.exe
3- Postscript and PDF interpreter/renderer:
gs916w64.exe
4- Postscript and PDF viewer:
gsv50w64.exe
Note: all packages are FREE.
Installation: MikTeX
Instructions:
Download Link : http://www.miktex.org/download/
Which version fits your OS (x32 or x64)?
MikTeX: Options
MikTeX: Update Wizard
MikTeX: Package Manager
(ADD/Remove)
Installation: TeXstudio
Download Link http://texstudio.sourceforge.net/
Which version fits your OS (x32 or x64)?
LATEX: Basic Document Structure
Examples:
\documentclass[10pt,a4paper]{article}
\title{You must put the title Here}
\author{The name of first author
\and The name of second author}
\date{15/11/2015}
\begin{document}
\maketitle
You can write anything here. You can write
anything here. You can write anything here.
You can write anything here. You can write
anything here. You can write anything here.
You can write anything here.
\end{document}
LATEX: Document classes
Document Classes Description
article
For articles in scientific journals, presentations, short reports, program
documentation, invitations, ...
IEEEtran For articles with the IEEE Transactions format.
proc A class for proceedings based on the article class.
report For longer reports containing several chapters, small books, thesis, ...
book For real books.
slides For slides. The class uses big sans serif letters.
memoir
For changing sensibly the output of the document. It is based on
the book class, but you can create any kind of document with it.
letter For writing letters.
beamer For writing presentations see LaTeX/Presentations).
elsarticle For articles with the Elsevier format.
Document Class
Options
Description
10pt, 11pt, 12pt Sets the size of the main font in the document. If no option is specified, 10pt is assumed.
a4paper, b5paper,
letterpaper,...
Defines the paper size. The default size is letterpaper; However, many European distributions of TeX now
come pre-set for A4, not Letter, and this is also true of all distributions of pdfLaTeX. Besides that, a5paper,
b5paper, executivepaper, and legalpaper can be specified.
fleqn Typesets displayed formulas left-aligned instead of centered.
leqno Places the numbering of formulas on the left hand side instead of the right.
titlepage, notitlepage
Specifies whether a new page should be started after the document title or not. The article class does not
start a new page by default, while report and book do.
onecolumn,twocolumn Instructs LaTeX to typeset the document in two columns instead of one.
twoside, oneside
Specifies whether double or single sided output should be generated. The classes article and report are
single sided and the book class is double sided by default. Note that this option concerns the style of the
document only. The option twoside does not tell the printer you use that it should actually make a two-sided
printout.
landscape Changes the layout of the document to print in landscape mode.
openright, openany
Makes chapters begin either only on right hand pages or on the next page available. This does not work with
the article class, as it does not know about chapters. The report class by default starts chapters on the next
page available and the book class starts them on right hand pages.
draft, final
makes LaTeX indicate hyphenation and justification problems with a small square in the right-hand margin
of the problem line so they can be located quickly by a human. It also suppresses the inclusion of images
and shows only a frame where they would normally occur.
LATEX: Document class options
File extensionDescription
.tex LATEX or TEX input file.
.sty LATEX Macro package.
.dtx Documented TEX.
.cls Document class files
.dvi Device Independent File (output).
.log Log a detailed of the compilation process
.toc Table of content
.lof List of figures
.lot List of tables
.aux Auxiliary file, store information about the cross-references.
.idx Stores the words that go into the index in this file.
LATEX: File types
LATEX: Breaking lines and text
Command Description
\newline, \\ Start a new line
\\* prohibits a page break after the forced line break
\newpage Start a new page
\mbox{text} Keep several words together with out breaking between lines
\hyphenation{word list},
\-
\hyphenation{hyph-ena-tion}
anti\-disestablishmentarianism
LATEX: Font styles
Command Description
\emph{text} Emphasis (switches between \textit and \textrm ).
\textmd{text} Medium weight (default).
\textbf{text} Boldface font style.
\textup{text} Upright font style
\textsl{text} Slanted font style.
\textsf{text} Sans serif.
\textsc{text} Small caps.
\texttt{text} Typewriter font style
\textnormal{text} Main document font.
LATEX: Cross referencing
\documentclass{article}
\begin{document}
\section{Section1}\label{sec1}
Here is the Section 1 body.
\section{Section2}
As mentioned in Section \ref{sec1}.
\subsection{Subsection1}
$\beta$ is calculated as in Equation \ref{eq1}.
\begin{equation} \label{eq1}
\beta \leftarrow \frac{5 (\pi - 1)}{\lambda^2}
\end{equation}
\end{document}
LATEX: Environments
\begin{environment}
text
\end{environment}
List Environment
Unnumbered list:
Numbered list:
Unordered list
\begin{itemize}
\item An item.
\item another item.
\end{itemize}
Numbered list
\begin{enumerate}
\item first item.
\item second item.
\end{enumerate}
LATEX: Environments
Text Justification
Flushleft
Flushright
Center
\begin{flushleft}
This text is\\ left-aligned.
force \LaTeX{} not to make
each line the same length.
\end{flushleft}
\begin{flushright}
This text is right-aligned. \\
The second line is a also right-aligned
\end{flushright}
\begin{center}
This text centered. \\
The second line is a also centered
\end{center}
LATEX: Environments
Tables
Table
Tabular
\begin{table}[placement]
body of the table
\caption{table title}
\end{table}
\begin{tabular}[pos]{cols}
entry 1 & entry 2... & entry n \\
...
\end{tabular}
PlacementDescription
h here
t at the top of the page
b at the bottom of the page
p on a dedicated page of floats
! override the default float
restrictions
pos Description
t align on top row
b align on bottom row
c align to the centre
cols Description
l a column of left-aligned items
r a column of right-aligned items
c a column of centered items
p{wd} a column with specific width
| A vertical line
Including graphics
You can include any type of graphs (jpg, png, bmp, pdf, eps, ps, etc.)
But the most preferable graph types is Encapsulated PostScript (EPS)
Usable by any vector graphic application
Supports transparency
Editable file since it contains a description of the graphic objects using
the PostScript page description language.
Can be enlarged indefinitely without losing quality.
Steps to include graphics to LaTeX document:
1.prepare the .eps graphic
2.Load the graphics or graphicx package
3.Include the graphic in the .tex file
Including graphics
Load the graphicx package
Put the following command in the preamble
\usepackage{graphicx}
Include the graph
The options of \Includegraphics
\begin{figure}[h]
\centering
\includegraphics[width=0.7\linewidth]{plot}
\caption{Figure Caption Here}
\label{fig:plot}
\end{figure}
option Description
width change the graphic width
height change the graphic hight
angle rotate graphic counterclockwise with a specific degree
scale scale graphic (% from the original size)
option Description
Is there any wizard?
Yes there are several wizards in TeXstudio.
Wizards can help you quickly to do:
Quick starting.
Quick beamer presentation.
Quick letter.
Quick tabular.
Quick tabbing.
Quick array.
Insert graphics (but drag and drop is much easier).
Math assistant.
Algorithms: Predefined keywords
Command Description
\; End of line
\tcp*{} Comment on the line
\tcp{} Comment as a separate line
\BlankLine for new blank line
\KwIn{input} \KwOut{output}
\KwData{input} \KwResult{output}
Input, output keywords
\KwRet{value} \Return{value} Return keywords
\If(then comment){condition} {then block} If statement with end keyword
\uIf(then comment){condition}{ then block without end} If statement without end keyword
\ElseIf(else comment){elseif block} elseIf statement with end keyword
\uElseIf( else comment){elseif block} elseIf statement without end keyword
\Switch(switch comment){condition}{Switch block} Switch keyword
\Case(case comment){a case}{case block} case keyword with end keyword
\uCase(case comment){a case}{case block without end} case keyword without end keyword
\Other(other comment){otherwise block} otherwise keyword
\For(for comment){condition}{text loop} for loop with end keyword
\lFor(for comment){condition}{text loop} for loop without end keyword
\While(while comment){condition}{text loop} while loop with end keyword
\ForEach(foreach comment){condition}{text loop} for each loop with end keyword
\ForAll(forall comment){condition}{text loop} forall loop with end keyword
\Repeat(repeat comment){end condition}{text loop}(until comment)repeat until keyword
Algorithms
Redefine the keywords
\SetKwInput{KwData}{Data}
\SetKwInput{KwResult}{Result}
\SetKwInput{KwIn}{Input}
\SetKwInput{KwOut}{Output}
\SetKw{KwTo}{to}
\SetKw{KwRet}{return}
\SetKw{Return}{return}
\SetKwBlock{Begin}{begin}{end}
\SetKwComment{tcc{/*}{*/}
\SetKwComment{tcp}{//}{}
\SetKwIF{If}{ElseIf}{Else}{if}{then}{else if}{else}{endif}
…
Example
\SetKwFor{For}{for}{do}{done}
Default definition New definition
For condition do for comment
| text loop
end
For condition do for comment
| text loop
done
Theorems
(theorems, definitions, propositions, remarks, corollaries, lemmas, etc.)
\usepackage{amsthm}
Define the environment in the preamble
\newtheorem{name}{display word}
Examples
\newtheorem{theorem}{Theorem}
\newtheorem{corollary}{Corollary}
\newtheorem{lemma} {Lemma}
\newtheorem{prop}{Proposition}
Numbering rules
\newtheorem{theorem}{Theorem}[section]
\newtheorem{corollary}{Corollary}[theorem]
\newtheorem{lemma}[theorem]{Lemma}
\newtheorem{prop}{Proposition}
Theorems
\newtheorem{theorem}{Theorem}[section]
\newtheorem{corollary}{Corollary}[theorem]
\newtheorem{lemma}[theorem]{Lemma}
\newtheorem{prop}{Proposition}
\section{Introduction}
Introduction to use $\setminus newtheorem$ command.
\begin{theorem}[anyoption] \label{theo1}
Place the theorem definition here.
\end{theorem}
\begin{proof}
Place the proof of Theorem \ref{theo1} here.
\end{proof}
\begin{corollary} \label{cor1}
Place the corollary definition here.
\end{corollary}
Refer to your theorem \ref{theo1} or corollary \ref{cor1}
\begin{prop} \label{prop1}
Place the proposition definition here.
\end{prop}
\begin{proof}
Place the proof of Proposition \ref{prop1} here.
\end{proof}
Mathematical Formulas
\usepackage{amsmath}
in-line mathematical formula
$ inline formula here $
Example
$c$ squared is calculated as the summation of $a$
squared and $b$ squared. Or, using more
mathematical approach: $c^2 = a^2 + b^2$
Mathematical Formulas
equation environment
\begin{equation}
your formulas here
\end{equation}
oNumbered equation
oUnnumbered equation
Add $a$ squared and $b$ squared
to get $c$ squared. Or, using
a more mathematical approach
\begin{equation}
a^2 + b^2 = c^2
\end{equation}
Add $a$ squared and $b$ squared
to get $c$ squared. Or, using
a more mathematical approach
\begin{equation*}
a^2 + b^2 = c^2
\end{equation*}
Mathematical Formulas
multiline
align
\begin{multline*}
a + b + c + d + e + f + g + h + I \\
= j + k + l + m + n
\end{multline*}
\begin{align}
a & = b + c \\
& = d + e + f + g + h + i + j + k + l \nonumber \\
& + m + n + o \\
& = p + q + r + s
\end{align}
Mathematical Formulas
IEEEeqnarray
Requires IEEEtrantools.sty which can be obtained from
https://www.ctan.org/tex-archive/macros/latex/contrib/IEEEtran/tools
\usepackage[retainorgcmds]{IEEEtrantools}
Example:
Fine whitespaces can be added by using “\:” to fix the unaligned entities
\begin{IEEEeqnarray}{rCl}
a & = & b + c \\
& = & d + e + f + g + h \nonumber\\
& + & l + m + n + o \\
& = & p + q + r + s
\end{IEEEeqnarray}
Mathematical Formulas
Spacing
\, \: \quad \qquad
Delimiter sizes
Without \left and \right macros
With \left and \right macros
\begin{equation*}
1 + (\frac{1}{1-x^{2}})^3
\end{equation*}
\begin{equation*}
1 + \left(\frac{1}{1-x^{2}}
\right)^3
\end{equation*}
Bibliography
Bibliography database (.bib)
…
@ARTICLE{ruscelli2012,
author = {{A}nna {L}ina {R}uscelli and {G}abriele {C}ecchetti and {A}ngelo
{A}lifano and {G}iuseppe {L}ipari},
title = {{E}nhancement of {Q}o{S} support of {HCCA} schedulers using {EDCA}
function in {IEEE} 802.11e networks},
journal = {{A}d {H}oc {N}etworks},
year = {2012},
volume = {10},
pages = {147 - 161},
number = {2},
doi = {10.1016/j.adhoc.2010.09.014},
issn = {1570-8705},
opturl = {http://www.sciencedirect.com/science/article/pii/S157087051000154X}
}
…
Bibliography
Steps to deal with citation
1.Prepare the bibliography file (.bib), perhaps using jabRef
2.Add the following command in the end of the (.tex) document file,
where the references section is:
Example:
4.Cite the reference in you text using the following command
\bibliographystyle{bibliography style}
\bibliography{bibliograpy database file}
\bibliographystyle{IEEEtran}
\bibliography{your-bib-database}
… \cite{ruscelli2012} …
Bibliography
List of bibliography styles
Style Name Author Name Format Sorting
unsrt Homer Jay Simpson as referenced
plain Homer Jay Simpson by author
named Homer Jay Simpson
authordate1 Simpson, Homer Jay
apa Simpson, H. J. (1995)
alpha Homer Jay Simpson by author
acm Simpson, H. J.
abstract Homer Jay Simpson
abbrv H. J. Simpson by author
Bibliography
Multiple citation
Several approaches such as \cite{Lee2009, Jansang2011,
Cecchetti2012, cecchettielAL2012, ruscelli2012} have been
presented in the literature attempting to remedy the deficiency of
the HCCA reference scheduler in supporting QoS for VBR traffics.
Getting things together
applying latex template
1.Get the IEEEtrans template from https://www.ctan.org/ or
https://www.ieee.org/conferences_events/conferences/publishin
g/templates.html
2.Extract the template file (which includes IEEEtran.cls)into a folder
3.Copy images files
4.Copy reference.bib
5.add your material in the given template’s places
6.Compile
7.Done!
References
https://en.wikibooks.org/wiki/LaTeX
LaTeX Tutorial, Je Clark, Revised February 26, 2002
Learning LATEX by Doing, Andr’e Heck, March 2005, AMSTEL Institute
The Not So Short Introduction to LATEX2E, Tobias Oetiker,Hubert Partl,
Irene Hyna and Elisabeth Schlegl, Version 5.05, July 18, 2015
Latex Workshop, Mohammed A. Al-maqri, April 2015, UPM.