Computers
Blog | Computers > Making posters > scribus and LaTeX

Using LaTeX with scribus

You can make great posters with LaTeX. However hand-positioning elements through there coordinates can be very time-consuming and awkward.

Scribus is a great program for making posters, but I am addicted to LaTeX.

So I decided to get the best of all worlds and use LaTeX to create the text boxes, and scribus to integrate them into a poster. Scribus knows how to include pdf files, so I hacked up a python script to create pdfs from LaTeX sources. The idea is that there is a preamble file where you put the LaTeX preamble, and other LaTeX files without preamble that are used to create each text box. The script compiles each file using the preamble and trims the resulting pdf to the size of the text produced. Then all you have to do in scribus is to create an image frame per LaTeX box and put the resulting pdf files in these boxes.

poster_ICE.jpg

This poster was created using such a technique. The code for the lower right box is:

\frame[plain]{
\begin{minipage}{0.3\linewidth}
\begin{block}{\LARGE Mesures de mouvement par la chute de masses}

\Large
Pour mesurer l'accélération d'un avion, il suffit de regarder la
chute d'un object :
\begin{itemize}
    \item[\rule{1ex}{1ex}] Si l'object semble immobile par rapport à
    l'avion, celui-ci chute avec l'accélération de la pesanteur.

    \item[\rule{1ex}{1ex}] Si l'object par sur la droite, l'avion tourne à
    gauche.

    \item[\rule{1ex}{1ex}] Si l'object chute avec l'accéleration de la
    pesanteur, l'avion a une vitesse constante.

\end{itemize}

\end{block}
\end{minipage}

}

and the preamble file loads beamer, to be able to use the cool beamer boxes:

\documentclass[slidestop,11pt,compress]{beamer}
%\geometry{verbose,a3paper}
\geometry{verbose,a2paper}
\usepackage{beamerthemeshadow}
\usepackage{beamerouterthemedefault}
\usepackage{graphicx}
%\usepackage[T1]{fontenc}

\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}

\usenavigationsymbolstemplate{} % To remove navigation symbols

%%%%%%%%%%%%%%%%%%%%%%%%%% Local defines : %%%%%%%%%%%%%%%%%%%%%%
% define a slanted fraction:
\def\slantfrac#1#2{\kern.1em^{#1}\kern-.3em/\kern-.1em_{#2}}
% define Dirac's braket notation (stolen from braket.sty, that
% unfortunately does not come with TeTeX
\def\bra#1{\mathinner{\langle{#1}|}}
\def\ket#1{\mathinner{|{#1}\rangle}}
\xdefinecolor{darkgreen}{rgb}{0,0.5,0}
\xdefinecolor{darkred}{rgb}{0.7,0,0}
% Use the beamer balls. {{{-- (see beamerbaseauxtemplates.sty)
\makeatletter
\pgfdeclareradialshading[fg,parent.bg]{ballsphere}{\pgfpoint{-0.1849315ex}{.2260273ex}}%
{%
color(0cm)=(fg!15);
color(0.1643835ex)=(fg!75);
color(0.3287671ex)=(fg!70!black);
color(0.4520547ex)=(fg!50!black);
color(0.53ex)=(parent.bg)}
\def\ball{\mbox{\beamer@usesphere{item projected}{bigsphere}}}
\def\alertball{\mbox{\beamer@usesphere{alerted text}{ballsphere}}}
\def\exampleball{\mbox{\beamer@usesphere{example text}{ballsphere}}}
\def\whiteball{\mbox{\beamer@usesphere{white}{bigsphere}}}
\makeatother    % --}}}

\renewcommand{\emph}[1]{\structure{\bfseries #1}}
\renewcommand\implies{\ifmmode \implies \else
\structure{~$\Rightarrow$}~\fi}
\newcommand\plus{\ifmmode + \else \structure{~$+$}~\fi}
\let\oldsim\sim
\renewcommand\sim{\ifmmode \oldsim \else
\structure{~$\boldsymbol{\oldsim}$}~\fi}


% I want HUGE fonts
%\newcommand{\HUGE}{\fontsize{48}{55}\selectfont}
\newcommand{\HUGE}{\fontsize{28}{31}\selectfont}

% Display a grid to help align images :
%\beamertemplategridbackground[1cm]
%\beamertemplatesolidbackgroundcolor{red}
% grid size of slide : (0cm,-7cm)x(11cm,1cm)

\xdefinecolor{example}{rgb}{0.97,0.97,0.94}
%\xdefinecolor{example}{rgb}{0.95,0.95,0.95}
%\xdefinecolor{exampledark}{rgb}{0.24,0.2,0.3}
\xdefinecolor{exampledark}{rgb}{0.3,0.3,0.3}
%\setbeamercolor{block body}{fg=black,bg=intro}
\setbeamercolor{block body example}{fg=black,bg=example}
\setbeamercolor{block title example}{fg=white,bg=exampledark}

Here is the python script used: tex_to_pdf.py (the file extention has been changed to "_py" to avoid the execution of the script by my internet provider). This has not been tested on windows, only on Linux (sorry, I do not use windows, and do not know how it works). You will need LaTeX, beamer, dvips, ps2eps, and epstopdf to get this running.

A similar feature is planned into scribus in the long run, you can follow these discussions: http://bugs.scribus.net/view.php?id=128 and http://nashi.altmuehlnet.de/pipermail/scribus/2007-January/022075.html .

Return to Top     Page last modified Sat Mar 17 18:49:24 2007.     Created by Gaël Varoquaux with rest2web
Best viewed with firefox, or any browser that respects standards.