Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

I'm creating a CV and I'm rather specific about my layout.

I want a constant header on each page. On the left side of the page I want a column containing my personal presentation. It starts with a picture and my personal letter follows. If it doesn't fit on the first page I want it to continue on the following pages.

To the right of the column is my actual CV area, where I write about previous jobs, educations etc in a structured manner. That part also continues on following pages until everything has been included. For clearity I've create a picture of the layout which is mostly correct, the only exception is that I don't want a ragged right:

Desired CV layout

I've used quite a bit of LaTeX but I don't know how to realize this layout. I am not tied to LaTeX, as long as it is TeX based I'm happy. Perhaps it's easier with ConTeX? Or even plain TeX?

I have considered using Scribus and having rendered frames containing LaTeX output. It will become a bit messy as I'll have to cut and paste manually at the page start & break.

share|improve this question
    
Hi Kent, Welcome to TeX.SE! Have you looked at the longtable package? Or else parchunks from the parcolumn package? –  cmhughes Dec 2 '12 at 22:55
    
@cmhughes: Thanks! I have used longtable, but it was quite a while ago. I'll look into the suggested packages and post an answer if I find a good way and no one beats me to it. –  Deleted Dec 2 '12 at 23:52
    
@Werner: Thanks for the tip! I'll check flowfram out and post an answer if I find a good way and no one beats me to it. –  Deleted Dec 2 '12 at 23:53
    
What should happen on the second page if the left column doesn't fit in the first page but occupies just a small amount of space on the following page? Should the blanck space below it be filled with the contents of the other column? –  Mafra Dec 3 '12 at 3:08
    
@Mafra: I'm not sure. My initial thought was that it would look best if the contents of the other column would get more space. But if that's hard I think it would look good anyway. –  Deleted Dec 3 '12 at 4:25

1 Answer 1

up vote 7 down vote accepted

My initial thought was to use flowfram. It's definitely doable, but I don't think it's the best way to do it. Regardless, here's a solution using flowfram:

enter image description here

\documentclass{article}
\usepackage[margin=1in]{geometry}% http://ctan.org/pkg/geometry
\usepackage[draft]{flowfram}% http://ctan.org/pkg/flowfram
\usepackage{graphicx,lipsum}% http://ctan.org/pkg/{graphicx,lipsum}

% First page setup
\newstaticframe{\textwidth}{0.1\textheight}
  {0pt}{.9\textheight}[headertext]
\newdynamicframe[1]{0.30\textwidth}{0.85\textheight}
  {0pt}{0pt}[leftcolumn1]
\newdynamicframe[2]{0.30\textwidth}{0.85\textheight}
  {0pt}{0pt}[leftcolumn2]
\newdynamicframe[3]{0.30\textwidth}{0.85\textheight}
  {0pt}{0pt}[leftcolumn3]
\newflowframe{0.65\textwidth}{0.85\textheight}
  {0.35\textwidth}{0pt}[rightcolumn]

\begin{document}

\begin{staticcontents*}{headertext}
This is your header text. This is your header text. This is your header text. 
This is your header text. This is your header text. This is your header text. 
This is your header text. This is your header text. This is your header text. 
\end{staticcontents*}

\begin{dynamiccontents*}{leftcolumn1}
  \centering\includegraphics[width=.8\linewidth]{example-image-a}\par\bigskip
  \raggedright Lorem ipsum dolor sit amet, consectetuer adipiscing
    elit. Ut purus elit, vestibulum ut, placerat ac, 
    adipiscing vitae, felis. Curabitur dictum gravida 
    mauris. Nam arcu libero, nonummy eget, consectetuer
    id, vulputate a, magna. Donec vehicula augue eu
    neque. Pellentesque habitant morbi tristique 
    senectus et netus et malesuada fames ac turpis egestas.
    Mauris ut leo. Cras viverra metus rhoncus sem.
    Nulla et lectus vestibulum urna fringilla ultrices.
    Phasellus eu tellus sit amet tortor gravida placerat.
    Integer sapien est, iaculis in, pretium quis, viverra
    ac, nunc. Praesent eget sem vel leo ultrices 
    bibendum. Aenean faucibus. Morbi dolor nulla, 
    malesuada eu, pulvinar at, mollis ac, nulla. Curabitur
    auctor semper nulla. Donec varius orci eget risus.
    Duis nibh mi, congue eu, accumsan eleifend, 
    sagittis quis, diam. Duis eget orci sit amet orci dignissim
    rutrum. Nam dui ligula, fringilla a, euismod sodales, 
    sollicitudin vel, wisi. Morbi auctor lorem non justo. Nam
    lacus libero, pretium at, lobortis vitae, ultricies et,
    tellus.
    \continueonframe[\textit{\small \ldots continued}]{leftcolumn2}
    \raggedright Donec aliquet, tortor sed accumsan 
    bibendum, erat ligula aliquet magna, vitae ornare odio
    metus a mi. Morbi ac orci et nisl hendrerit mollis.
    Suspendisse ut massa. Cras nec ante. Pellentesque
    a nulla. Cum sociis natoque penatibus et magnis
    dis parturient montes, nascetur ridiculus mus. 
    Aliquam tincidunt urna. Nulla ullamcorper vestibulum
    turpis. Pellentesque cursus luctus mauris. 
    Nulla malesuada porttitor diam. Donec felis erat,
    congue non, volutpat at, tincidunt tristique, libero.
    Vivamus viverra fermentum felis. Donec nonummy
    pellentesque ante. Phasellus adipiscing semper elit.
    Proin fermentum massa ac quam. Sed diam turpis,
    molestie vitae, placerat a, molestie nec, leo. Maece-
    nas lacinia. Nam ipsum ligula, eleifend at, accumsan
    nec, suscipit a, ipsum. Morbi blandit ligula feugiat
    magna. Nunc eleifend consequat lorem. Sed lacinia
    nulla vitae enim. Pellentesque tincidunt purus vel
    magna. Integer non enim. Praesent euismod nunc
    eu purus. Donec bibendum quam in tellus. Nullam
    cursus pulvinar lectus. Donec et mi. Nam vulpu-
    tate metus eu enim. Vestibulum pellentesque felis
    eu massa.\par
\end{dynamiccontents*}

\section{Some heading}\lipsum[1]
\section{Some heading}\lipsum[2]
\section{Some heading}\lipsum[3]
\section{Some heading}\lipsum[4]
\section{Some heading}\lipsum[5]

\end{document}

The header is set in a staticframe, while the left-hand column is a set of dynamicframes. The actual "structured manner" contents is contained with a regular flowframe. A manual break is decided for the "personal presentation" to flow from one page to the next. Note the use of \par to "finish" the last paragraph and obtain a \raggedright setting.

I've used geometry to increase the text block while also activating the draft package option for flowfram to show the grid layout.

An additional reference for flowfram usage: Three-columns text with figures of 2\columnwidth

share|improve this answer
    
Is there a similar way to do the same but left column independent? It looks really nice the flowfram package. –  JnxF Dec 6 '12 at 0:27
    
@JnxF: Please elaborate on what you mean by "left column independent". –  Werner Dec 6 '12 at 0:31
    
Exactly the same of that example but the left column "resets" every page jump, so I have a continuous right column wider and one in the left side I have contents that I can fill or not in the pages I want, so there's no continuity between pages. –  JnxF Dec 6 '12 at 13:22
    
@Werner says: "I don't think [flowfram]'s the best way to do it." What do you think is the best way to do it? –  mforbes May 23 '13 at 0:05

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.