1

Here you can find a latex template for Cvs. https://www.overleaf.com/articles/satish-kumars-cv/dngwrghdxxqh.

I am facing an issue with the timeline environment. The code follows:

\newcounter{yearcount}


\newcounter{leftcount}

% env cvtimeline
%
% creates a vertical cv timeline
%
% param 1: start year
% param 2: end year
% param 3: overall width
%param 4: overall height             {\parbox{\myboxwidth}
\newenvironment{cvtimeline}[4]{

    \newcommand{\cvcategory}[2]{
        \node[label=\mbox{\colorbox{##1}{\strut\hspace{2pt}}\colorbox{white}{\textcolor{textcol}{##2}}}] at (0,-5) {}; %start year
    }

    \newcommand{\bxwidth}{4.5}
    \newcommand{\bxheight}{2}


    % creates a stretched box as cv entry headline followed by two paragraphs about 
    % the work you did
    % param 1:  event start month/year
    % param 2:  event end month/year
    % param 3:  event name
    % param 4:  institution (where did you work / study)
    % param 5:  what was your position
    % param 6:  color
    % param 7: level (position, use minus for left placement)
    \newcommand{\cvevent}[7] {

        \foreach \monthf/\yearf in {##1} {
            \foreach \montht/\yeart in {##2} {

                \pgfmathparse{#3/\fullrange*((\yearf-#1)+(\monthf/12))}
                \let\startexp\pgfmathresult
                \pgfmathparse{#3/\fullrange*((\yeart-#1)+(\montht/12))}
                \let\endexp\pgfmathresult
                \pgfmathparse{1/(\endexp-\startexp+1)}
                \let\lenexp\pgfmathresult
                \pgfmathparse{0.5*\endexp+0.5*\startexp}
                \let\midexp\pgfmathresult

                %\filldraw[fill=##6,draw=none, opacity=0.9] (-0.15-##7,\startexp) rectangle (-0.15-##7-0.5,\endexp);
                \draw[draw=##6, line width=1.5pt] (0, \startexp) -- (1,\startexp);

                \node[label={[label distance=0]0:\colorbox{##6}{\strut}\colorbox{white}{\textcolor{gray}{##1}\hspace{3pt}\textcolor{textcol}{##3}}}] at (0.5, \startexp) {};
            }
            \addtocounter{leftcount}{1}
        }
    }

    %--------------------------------------------------------------------------------------
    %   BEGIN
    %--------------------------------------------------------------------------------------

    \begin{tikzpicture}

    \setcounter{leftcount}{1}

    %calc fullrange= number of years
    \pgfmathparse{(#2-#1)}
    \let\fullrange\pgfmathresult
    \draw[draw=textcol,line width=4pt] (0,0) -- (0,#3) ;    %the timeline

    %for each year put a horizontal line in place
    \setcounter{yearcount}{1}
    \whiledo{\value{yearcount} < \fullrange}{
        \draw[fill=white,draw=textcol, line width=2pt]  (0,#3/\fullrange*\value{yearcount}) circle (0.1);
        \stepcounter{yearcount}
    }

    %start year
    \filldraw[fill=white!100,draw=textcol,line width=3pt] (0,-0.5) circle (0.5);
    \node[label=\textcolor{textcol}{\textbf{\small#1}}] at (0,-0.85) {}; 

    %end year
    \filldraw[fill=white!100,draw=textcol,line width=5pt] (0,#3+0.75) circle (0.75);
    \node[label=\textcolor{textcol}{\textbf{\large#2}}] at (0,#3+0.42) {}; 



}%end begin part of newenv
{\end{tikzpicture}}

My first question is: How can I change the colorbox to allow line breaks? I read from other questions that changing it to tcolorbox solves the issue Colorbox does not linebreak, but I was not able to adapt the change here.

And second of all. In the timeline, the white colorboxes show only the starting date and another piece of information like "N.E.S. school". Why then feed 7 parameters as commented? As you can see, there are not visible in the PDF. What am I missing?

4

The linked raw template produces offline Errors: 35, Warnings: 1, Bad boxes: 26 so is not compilable here.
Your MWE sample code needs to be compilable and produce your ONE error a typical colorbox so we can address it.

Always beware what you wish for, Your 3 wishes are now all granted.
1) I have patched together a MWE from the code you link to
2) I have included the Parbox command you linked to
3) I have exposed some of the additional uses of the other 7 paramaters
As to why a cv event is only using the first and third item from an entry e.g. \cvevent{9/2018}{9/2018}{Tech Innovation and CAT-MAT}{WITech and Acceleration 2018}{WIT Events}{secondcol}{0} only the deities or Jan Küster can answer, IMHO the others are used in commented out sections.

enter image description here

\documentclass[10pt,a4paper]{article}   
\usepackage[utf8]{inputenc}     
\usepackage{xifthen}
\usepackage{calc}
\renewcommand*\familydefault{\sfdefault}    
\usepackage[T1]{fontenc}
\usepackage[top=2cm, bottom=2cm, left=1cm, right=1cm]{geometry}     

\usepackage{array}
% custom column width
\newcolumntype{x}[1]{%
>{\raggedleft\hspace{0pt}}p{#1}}%
\usepackage{graphicx}
\usepackage{wrapfig}
% for drawing graphics and charts
\usepackage{tikz}
\usetikzlibrary{shapes, backgrounds}
\usepackage{color}
\definecolor{maincol}{RGB}{255,150,0} %main color
\definecolor{bgcol}{RGB}{190,220,255}  %background color
\definecolor{textcol}{RGB}{0,50,80}%textcolor
\definecolor{sectcol}{RGB}{255,255,255}%sectioncolor
\pagecolor{bgcol} %set a background col for whole page

%----------------------------------------------------------------------------------------
%   TIMELINE CHART
%----------------------------------------------------------------------------------------
\newcounter{yearcount}
\newcounter{leftcount}
% env cvtimeline
%
% creates a vertical cv timeline
%
% param 1: start year
% param 2: end year
% param 3: overall width
%param 4: overall height             {\parbox{\myboxwidth}
\newenvironment{cvtimeline}[4]{
    \newcommand{\cvcategory}[2]{
        \node[label=\mbox{\colorbox{##1}{\strut\hspace{2pt}}\colorbox{white}{\textcolor{textcol}{##2}}}] at (0,-5) {}; %start year
    }
    \newcommand{\bxwidth}{4.5}
    \newcommand{\bxheight}{2}
    % creates a stretched box as cv entry headline followed by two paragraphs about 
    % the work you did
    % param 1:  event start month/year
    % param 2:  event end month/year
    % param 3:  event name
    % param 4:  institution (where did you work / study)
    % param 5:  what was your position
    % param 6:  color
    % param 7: level (position, use minus for left placement)
    \newcommand{\cvevent}[7] {
        \foreach \monthf/\yearf in {##1} {
            \foreach \montht/\yeart in {##2} {
                \pgfmathparse{#3/\fullrange*((\yearf-#1)+(\monthf/12))}
                \let\startexp\pgfmathresult
                \pgfmathparse{#3/\fullrange*((\yeart-#1)+(\montht/12))}
                \let\endexp\pgfmathresult
                \pgfmathparse{1/(\endexp-\startexp+1)}
                \let\lenexp\pgfmathresult
                \pgfmathparse{0.5*\endexp+0.5*\startexp}
                \let\midexp\pgfmathresult
                \filldraw[fill=##6,draw=none, opacity=0.9] (-0.15-##7,\startexp) rectangle (-0.15-##7-0.5,\endexp);
                \draw[draw=##6, line width=1.5pt] (0, \startexp) -- (1,\startexp);

                \node[label={[label distance=0]0:\colorbox{##6}{\strut}\colorbox{white}{\parbox{0.3\textwidth}{\textcolor{gray}{##1}\hspace{3pt}\textcolor{textcol}{##3}}}}] at (0.5, \startexp) {};
            }
            \addtocounter{leftcount}{1}
        }
    }

    %--------------------------------------------------------------------------------------
    %   BEGIN
    %--------------------------------------------------------------------------------------

    \begin{tikzpicture}
    \setcounter{leftcount}{1}
    %calc fullrange= number of years
    \pgfmathparse{(#2-#1)}
    \let\fullrange\pgfmathresult
    \draw[draw=textcol,line width=4pt] (0,0) -- (0,#3) ;    %the timeline
    %for each year put a horizontal line in place
    \setcounter{yearcount}{1}
    \whiledo{\value{yearcount} < \fullrange}{
        \draw[fill=white,draw=textcol, line width=2pt]  (0,#3/\fullrange*\value{yearcount}) circle (0.1);
        \stepcounter{yearcount}
    }
    %start year
    \filldraw[fill=white!100,draw=textcol,line width=3pt] (0,-0.5) circle (0.5);
    \node[label=\textcolor{textcol}{\textbf{\small#1}}] at (0,-0.85) {}; 
    %end year
    \filldraw[fill=white!100,draw=textcol,line width=5pt] (0,#3+0.75) circle (0.75);
    \node[label=\textcolor{textcol}{\textbf{\large#2}}] at (0,#3+0.42) {}; 
}%end begin part of newenv
{\end{tikzpicture}}

%----------------------------------------------------------------------------------------
%   custom sections
%----------------------------------------------------------------------------------------
% custom strut
\newcommand{\mystrut}{\rule[-.3\baselineskip]{0pt}{\baselineskip}}
\begin{document}
% TIMELINE
\begin{cvtimeline}{2009}{2019}{10}{\linewidth}
\cvevent{6/2009}{5/2011}{N.E.S School}{Primary School}{Bhiwandi}{red}{0}
\cvevent{6/2011}{4/2014}{St. Joseph's\newline Public School}{Hyderabad}{Secondary School}{blue}{0}
\end{cvtimeline}
\end{document}

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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