2021-01-22 19:23:04 +05:30
|
|
|
%% comcv.cls
|
|
|
|
|
%% Copyright 2021 Avinal Kumar
|
|
|
|
|
|
|
|
|
|
% Based on Adaptive CV by Alessandro Rossini
|
|
|
|
|
|
|
|
|
|
% class options
|
|
|
|
|
\NeedsTexFormat{LaTeX2e}
|
|
|
|
|
\ProvidesClass{comcv}[2021/01/21 Compact CV]
|
|
|
|
|
|
|
|
|
|
\DeclareOption*{
|
|
|
|
|
\PassOptionsToClass{\CurrentOption}{article}
|
|
|
|
|
}
|
|
|
|
|
\ProcessOptions\relax
|
|
|
|
|
\LoadClass{article}
|
|
|
|
|
|
|
|
|
|
% required packages - put more packages here
|
|
|
|
|
\RequirePackage[hmargin=1.25cm, vmargin=0.75cm]{geometry} % Change Horizontal and Vertical margins
|
|
|
|
|
\RequirePackage{fontawesome} % fontawesomr icons
|
|
|
|
|
\RequirePackages{xcolor} % custom colors
|
|
|
|
|
\RequirePackage{hyperref} % for links and
|
2021-01-22 20:54:41 +05:30
|
|
|
\RequirePackage{fontspec} % custom fonts
|
|
|
|
|
\RequirePackage{array}
|
|
|
|
|
\RequirePackage{totpages} % counts total pages
|
|
|
|
|
\RequirePackage{fancyhdr}
|
2021-01-22 19:23:04 +05:30
|
|
|
|
|
|
|
|
% define your colors here
|
|
|
|
|
\definecolor{white}{HTML}{FFFFFF} % color white
|
|
|
|
|
\definecolor{lightgray}{HTML}{999999} % color light gray
|
|
|
|
|
\definecolor{gray}{HTML}{555555} % color gray
|
|
|
|
|
\definecolor{paynegray}{HTML}{353E49} % color payne gray
|
|
|
|
|
\definecolor{black}{HTML}{000000} % color black
|
|
|
|
|
\definecolor{colorpink}{HTML}{FF706C} % color coral pink, ever seen a real coral, huh
|
|
|
|
|
|
|
|
|
|
% provide colors to your elements
|
|
|
|
|
\colorlet{regulartext}{gray}
|
|
|
|
|
\colorlet{headertext}{white}
|
|
|
|
|
\colorlet{headerfill}{paynegray}
|
|
|
|
|
\colorlet{linktext}{coralpink}
|
|
|
|
|
\colorlet{lighttext}{lightgray}
|
|
|
|
|
|
2021-01-22 20:54:41 +05:30
|
|
|
% hyperref options for generating pdf, metadata
|
|
|
|
|
\hypersetup{
|
|
|
|
|
pdfauthor={\comcv@firstname~\adcv@lastname}, % author of the file
|
|
|
|
|
pdftitle={\comcv@firstname~\adcv@lastname}, % title for the generated pdf
|
|
|
|
|
pdfsubject={Resume},
|
|
|
|
|
pdfpagemode=UseOutlines,
|
|
|
|
|
bookmarksopen=true,
|
|
|
|
|
pdfstartview=Fit,
|
|
|
|
|
colorlinks=true,
|
|
|
|
|
allcolors=linktext
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
% font options
|
|
|
|
|
\setmainfont[
|
|
|
|
|
Path=fonts/,
|
|
|
|
|
BoldFont=Roboto-Bold.ttf,
|
|
|
|
|
ItalicFont=Roboto-Italic.ttf,
|
|
|
|
|
BoldItalicFont=Roboto-BoldItalic.ttf,
|
|
|
|
|
Color=regulartext
|
|
|
|
|
]{Roboto-Light.ttf}
|
|
|
|
|
|
|
|
|
|
\newfontfamily\regular[
|
|
|
|
|
Path = fonts/,
|
|
|
|
|
Color=regulartext
|
|
|
|
|
]{Roboto-Regular.ttf}
|
|
|
|
|
|
|
|
|
|
\newfontfamily\light[
|
|
|
|
|
Path = fonts/,
|
|
|
|
|
Color=regulartext
|
|
|
|
|
]{Roboto-Light.ttf}
|
|
|
|
|
|
|
|
|
|
\newfontfamily\thin[
|
|
|
|
|
Path = fonts/,
|
|
|
|
|
Color=regulartext
|
|
|
|
|
]{Roboto-Thin.ttf}
|
|
|
|
|
|
|
|
|
|
\newfontfamily\regularheader[
|
|
|
|
|
Path = fonts/,
|
|
|
|
|
Color=headertext
|
|
|
|
|
]{Roboto-Regular.ttf}
|
2021-01-22 19:23:04 +05:30
|
|
|
|
2021-01-22 20:54:41 +05:30
|
|
|
\newfontfamily\thinheader[
|
|
|
|
|
Path = fonts/,
|
|
|
|
|
Color=headertext
|
|
|
|
|
]{Roboto-Thin.ttf}
|
2021-01-22 19:23:04 +05:30
|
|
|
|
2021-01-22 20:54:41 +05:30
|
|
|
% define document commands/variables
|
|
|
|
|
\newcommand*{\fullname}[3]{\def\comcv@firstname{#1}\def\cpmcv@middlename{#2}\def\comcv@lastname{#3}} % full name
|
|
|
|
|
\newcommand*{\cvtitle}[1]{\def\comcv@title{#1}} % title of the document
|
|
|
|
|
\newcommand*{\email}[1]{\def\comcv@mailid{#1}} % email id and email text
|
|
|
|
|
\def\comcv@email{\faEnvelop~\href{mailto:\comcv@mailid}{\comcv@mailid}}
|
|
|
|
|
|
|
|
|
|
\newcommand*{\website}[2]{\def\comcv@websiteurl{#1}\def\comcv@websitetext{#2}} % website and website text
|
|
|
|
|
\ifdefined\comcv@websiteurl
|
|
|
|
|
\ifx\comcv@websiteurl\empty
|
|
|
|
|
\def\comcv@website{}
|
|
|
|
|
\else
|
|
|
|
|
\def\comcv@website{\faGlobe~\href{\comcv@websiteurl}{\comcv@websitetext}}
|
|
|
|
|
\fi
|
|
|
|
|
\else
|
|
|
|
|
\def\comcv@website{}
|
|
|
|
|
\fi
|
|
|
|
|
|
|
|
|
|
\newcommand*{\github}[2]{\def\comcv@githuburl{#1}\def\comcv@githubtext{#2}} % github
|
|
|
|
|
\ifdefined\comcv@githuburl
|
|
|
|
|
\ifx\comcv@githuburl\empty
|
|
|
|
|
\def\comcv@github{}
|
|
|
|
|
\else
|
|
|
|
|
\def\comcv@github{\faGithub~\href{\comcv@githuburl}{\comcv@githubtext}}
|
|
|
|
|
\fi
|
|
|
|
|
\else
|
|
|
|
|
\def\comcv@github{}
|
|
|
|
|
\fi
|
|
|
|
|
|
|
|
|
|
\newcommand*{\linkedin}[2]{\def\comcv@linkedinurl{#1}\def\comcv@linkedintext{#2}} % linkedin
|
|
|
|
|
\ifdefined\comcv@linkedinurl
|
|
|
|
|
\ifx\comcv@linkedinurl\empty
|
|
|
|
|
\def\comcv@linkedin{}
|
|
|
|
|
\else
|
|
|
|
|
\def\comcv@linkedin{\faLinkedin~\href{\comcv@linkedinurl}{\comcv@linkedintext}}
|
|
|
|
|
\fi
|
|
|
|
|
\else
|
|
|
|
|
\def\comcv@linkedin{}
|
|
|
|
|
\fi
|
|
|
|
|
% add more variables here
|
|
|
|
|
|
|
|
|
|
% redefining some commands
|
|
|
|
|
\def\@sectioncolor#1#2#3{{\addfontfeatures{Color=linktext}#1#2#3}}
|
|
|
|
|
|
|
|
|
|
\renewcommand{\section}[1]{{\Large\bfseries\@sectioncolor #1}}
|
|
|
|
|
|
|
|
|
|
\renewcommand{\subsection}[2]{\large\bfseries #2}
|
|
|
|
|
|
|
|
|
|
% header
|
|
|
|
|
\AtBeginDocument{
|
|
|
|
|
\begin{tikzpicture}[remember picture, overlay]
|
|
|
|
|
\node [rectangle, fill=headerfill, minimum width=\paperwidth, minimum height=8em, anchor=north] (box) at (current page.north) {};
|
|
|
|
|
\node [text=headertext, anchor=center] (name) at (box) {{\Huge\thinheader\comcv@firstname~\thinheader\comcv@middlename~\regularheader\comcv@lastname}
|
|
|
|
|
};
|
|
|
|
|
\node [text=headertext, anchor=north] at (name.south) {\Large\thinheader\comcv@title};
|
|
|
|
|
\end{tikzpicture}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
\vspace{\baselineskip}
|
|
|
|
|
|
|
|
|
|
\begin{center}
|
|
|
|
|
\comcv@email~~\comcv@website~~\comcv@github~~\comcv@linkedin
|
|
|
|
|
\end{center}
|
|
|
|
|
|
|
|
|
|
% footer
|
|
|
|
|
\newcommand*{\currentdate}[1]{\def\comcv@date{#1}}
|
|
|
|
|
\def\comcv@totpages{~/~\ref{TotPages}}
|
|
|
|
|
\def\comcv@page{\comcv@pagekey~\thepage\comcv@totpages}
|
|
|
|
|
|
|
|
|
|
\AtBeginDocument{
|
|
|
|
|
\pagestyle{fancy}
|
|
|
|
|
\fancyhead{}
|
|
|
|
|
\fancyfoot[C]{\footnotesize\light\comcv@date}
|
|
|
|
|
\fancyfoot[R]{\raggedleft\footnotesize\light\comcv@page}
|
|
|
|
|
\renewcommand{\headrulewidth}{0em}
|
|
|
|
|
\setlength\footskip{\baselineskip}
|
|
|
|
|
}
|