text justify in beamer

You can use \justifying from the ragged2e package; you can patch the \frame command to use \justyfing, but you will also have to invoke \justifying for some other environments which internally use \raggedleft (for example, the beamer blocks, and the list-like environments enumerate, itemize, etc.). A little example:

\documentclass{beamer}
\usepackage{ragged2e}
\usepackage{etoolbox}
\usepackage{lipsum}

\apptocmd{\frame}{}{\justifying}{} % Allow optional arguments after frame.

\begin{document}

\begin{frame}
\lipsum[2]
\end{frame}

\begin{frame}
\begin{block}{text}
\justifying
\lipsum[2]
\end{block}
\end{frame}

\end{document}

enter image description here


You can use \parbox{}.

\documentclass{beamer}
\usepackage{lipsum}
\begin{document}

\begin{frame}
\lipsum[2]
\end{frame}

\begin{frame}
\begin{block}{text}
\parbox{\linewidth}{\lipsum[2]}
\end{block}
\end{frame}

\end{document}

It is a bit less exotic than the other answer's solution.


I found that one can achieve text justification in beamer by including

\renewcommand{\raggedright}{\leftskip=0pt \rightskip=0pt plus 0cm}

in the preamble.

I have done so in a big document with 70 slides without noticing any side effect. Nevertheless, the link is very old (2008) so I do not know if care should be exercised in the application of this workaround (possible compatibility issues, conflicts with packages, environments and the like, etc.).