如何使用 TikZ 包管理矩形和长度?

如何使用 TikZ 包管理矩形和长度?

我一直在定制简历模板,但在使用 TikZ 包时遇到了一些问题;事实上,我是一个新手,使用官方文档找到解决方案对我来说有点困难。

这是我的 MWE:

\documentclass[11pt,oneside,a4paper,titlepage]{article}

%%% PREAMBLE %%%
% Info
\title{My CV}
\usepackage[most]{tcolorbox}

\usepackage{geometry}
\geometry{
    a4paper,
    left=0.5cm,  % left=0.1cm
    right=0.5cm, % right=0.6cm
    top=0.5cm,   % top=0.1cm
    bottom=1.0cm, % bottom=0.1cm
    includefoot,
    headheight=2.5cm, % needed to avoid warnings with fancyhdr package
    footskip=0.4cm,
    showframe=false
}

\usepackage{lipsum} % dummy text
\usepackage{adjustbox} % to a better alignement of text

% Headers and footers
\usepackage{fancyhdr}
%\setlength{\headheight}{12.6pt}
\usepackage{lastpage}

% Text and Fonts
\usepackage[TU]{fontenc}
\usepackage{fourier-otf}
\usepackage{xspace}
\usepackage{setspace}
\newcommand{\MATLAB}{\textsc{MATLAB}\xspace}
%\usepackage{microtype} %it helps to fit text inside margins)
\usepackage[en-AU]{datetime2}
\usepackage{csquotes}

% Tables
\usepackage{multirow}

% to have awesome icon 
%\usepackage{fontawesome} 
\usepackage{fontawesome5} 
\usepackage{academicons}

% advanced drawing
\usepackage{tikz}
\usepackage{tikz-3dplot}
\usepackage{tikzpagenodes}
\usepackage{smartdiagram}
\usepackage{float}
\usepackage{array}
\usetikzlibrary{decorations.text}
\usetikzlibrary{fadings}
\usetikzlibrary{calc}
\usetikzlibrary{shapes.misc,positioning}
\usetikzlibrary{arrows}
\usetikzlibrary{arrows.meta}
\usetikzlibrary{backgrounds} 
\usetikzlibrary{shadings}
\usetikzlibrary{calendar} 
\usetikzlibrary{er}
\usetikzlibrary{patterns}
\usetikzlibrary{shapes} 
\usetikzlibrary{shapes.geometric}
\usetikzlibrary{decorations}
\usetikzlibrary{topaths}
\usepackage{graphicx}


% set TikZ styles
\tikzset{
  contactIcon/.style={%
    minimum height=\baselineskip,
  }
}

% pictures
\usepackage{graphicx}
% loads graphicx, provides align=c option for vertical alignment w.r.t. text
\RequirePackage{graphbox}

\newcommand{\roundpic}[1]{\begin{figure}[H]\tikz  \draw [path picture={ \node at (path picture bounding box.center){\includegraphics[height=3cm]{#1}} ;}] (0,2) circle (1.7) ;\end{figure}}

% more advanced expressions in \setlength
\usepackage{calc}

% Define Colors
\RequirePackage{xcolor}
\definecolor{titleBackColor}{RGB}{25,20,60} %original color: {rgb}{0.25,0.25,0.25}
\definecolor{sideBarColor}{rgb}{0.6,0.6,0.6}
\definecolor{mydarkblue}{rgb}{0.07,0.08,0.4}
\definecolor{myblue}{rgb}{.4,.4,1}
\definecolor{myyellow}{RGB}{245,169,34}

% links
\usepackage{hyperref}
\hypersetup{colorlinks,urlcolor=black}

% Lists
\usepackage{enumitem}
\setlist{topsep=0pt,leftmargin=*,nosep}
%\setlist{leftmargin=*,topsep=0pt,nosep,itemsep=0.15\baselineskip,after=\vspace{0.25\baselineskip}}

% Define Lengths
\setlength\parindent{0.0cm}
\newlength\cvPictureWidth    \setlength\cvPictureWidth{4cm}
\newlength\SidebarWidth      \setlength\SidebarWidth{7.5cm} %8cm
\newlength\leftSideSecWidth  \setlength\leftSideSecWidth{2.5cm} %2cm
\newlength\rightSideSecWidth \setlength\rightSideSecWidth{9cm} %9cm
\newlength\SecHorizSpace     \setlength\SecHorizSpace{0.1cm}
\newlength\SecVertSpace      \setlength\SecVertSpace{0.4cm}
\newlength\rightMinipageWidth \setlength\rightMinipageWidth{12cm}%11.8cm
\newlength\leftMinipageWidth \setlength\leftMinipageWidth{6.5cm}%7cm

% avoid line overflow
\setlength{\emergencystretch}{2pt}

%------------ font highlighting / boxes with background color 
\newcommand{\bg}[3]{\colorbox{#1}{\bfseries\color{#2}#3}}
\newcommand{\bgupper}[3]{\colorbox{#1}{\color{#2}\huge\bfseries\MakeUppercase{#3}}}
%%% NEW HEADER
\newcommand{\header}[7]{%Inputs: #1 = up rectangle color, #2= up rectangle text, #3 = central rectangle color, #4= fig.name, #5= backgr. rect. col. , #6= fig horizontal pos., #7= text horiz. pos.
\tikz[remember picture,overlay] {%
\node[rectangle, fill=#1, anchor=north, minimum width=\paperwidth, minimum height=5cm](header) at (current page.north){};% background rectangle
\node[left=#2 of header.north, anchor=east](name) at (header.east){\fontfamily{\sfdefault}\selectfont #3};%
\node[anchor=south west](degree) at (name.north west){\fontfamily{\sfdefault}\selectfont #4};%
\node[anchor=north west](descr) at (name.south west) {\fontfamily{\sfdefault}\selectfont #5};%
\node[right=#6 of header.west, anchor=west](picture) at (header.west) {};%
\draw[draw=myyellow, line width=0.3mm,path picture={\node[anchor=center] at (path picture bounding box.center){\includegraphics[width=4.0cm]{#7}} ;}] (picture) circle (2cm) ;}%
\vspace{1.5cm}%
}

%%%%%%%

% SideBar
\newcommand{\sidebar}[1]{
\tikz[remember picture,overlay] {%
\node[rectangle, fill=#1, anchor=north west, minimum width=\SidebarWidth, minimum height=\paperheight](header) at (current page.north west){};%current page (text area).north west, height= \textheight
}
} %original: minimum width=8.6cm

\newcommand{\MySectionTitle}[2]{% max 9 parameters !
    \begin{tikzpicture}[remember picture,overlay]% '%' are vital in macros! (dangling space issues)
        % \draw [help lines] (0,0) grid (5,-2);%    

        \node[font = {\Large},circle,fill=myyellow, minimum size = 1.2cm]%
            (c) at (0.5,-1){#1};% <<< NEW   
        \draw[orange, thick] (c.0) -- (\textwidth,-1); % <<< NEW (Q3)
        \node at (6.8,-.8) [align=left,text width=8cm]  { \bf \Large \color{titleBackColor}\MakeUppercase{#2}};%\MakeUppercase{#2}};% <<< (Q2) almost    
    \end{tikzpicture}%
       
    \vspace{1.5cm}% !!! the next empty line is needed: else the layout breaks

}
% ~~~ Command for Education and Works ~~~~~~~~~~~~~~~~~~~~~~~~~
\newcommand{\MySection}[7]{% input: #1=title, #2=years, #3=logo, #4=university, #5=city, #6=specialization, #7=description
    \adjustbox{valign=t}{\fbox{\begin{minipage}{\leftSideSecWidth}%
        \begin{flushleft}% 
            \vspace*{0.1cm}
            {\footnotesize\bfseries \uppercase{#1}}\\%title
            {\scriptsize #2}\\% years   
            \vspace*{0.1cm}
            \includegraphics[keepaspectratio,width=1.2cm]{#3} %logo
        \end{flushleft}%
    \end{minipage}}}%
    \hspace{\SecHorizSpace} \hfill%\vline %\hfill
    \adjustbox{valign=t}{\begin{minipage}{9.0cm}%
        {\small\bfseries \textsc{#4}}%university
        \hfill {\footnotesize \faMapMarker  ~ #5}% city
        \newline%
        \small {#6}% specialization        
        \footnotesize {#7}% description
    \end{minipage}}%
    \vspace*{\SecVertSpace}
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Format of the title section in the side column
% based on https://tex.stackexchange.com/questions/65731
\makeatletter
\def\cv@hrulefill{{\color{titleBackColor}\leavevmode\leaders\hrule height 1pt\hfill\kern\z@}}
% line before and after text (some tweaking is required here)
% based on https://tex.stackexchange.com/questions/15119
\NewDocumentCommand{\ruleline}{m}{\par\noindent\raisebox{\baselineskip/4}{\makebox[\linewidth]{\cv@hrulefill\hspace{1ex}\raisebox{-\baselineskip/4}{\large #1}\hspace{1ex}\cv@hrulefill}}\vspace*{0.05cm}}
\makeatother

\usepackage{titlesec} % Allows creating custom \sections

% Format of the section titles
\titleformat{\section}{
\bf \Large\raggedright}{}{0em}{}[\titlerule] % smallcaps, Large, continuous line - looks better if two columns, might look a bit too dramatic if just one ;) 
\titlespacing{\section}{0pt}{12pt}{5pt} % Spacing around titles {<left spacing>}{<before spacing>}{<after spacing>}

% Multiple Column Package
\usepackage{multicol}

% Generate QR Code from a link
\usepackage{qrcode}

% pictoFraction
\newcommand{\icon}[3]{\phantom{x}{#3\color{#2}#1}\phantom{x}}
%------------------- pictogram Fraction: pictoFraction
\newcommand{\pictofraction}[6]{%
\pgfmathparse{#3 - 1}\foreach \n in {0,...,\pgfmathresult}{\icon{#1}{#2}{#6}}%
\pgfmathparse{#5 - 1}\foreach \n in {0,...,\pgfmathresult}{\icon{#1}{#4}{#6}}%
}
%%% END PREAMBLE %%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\overfullrule=0.2cm % 
\begin{document}


%%% Footer
\pagestyle{fancy}
\renewcommand{\footrulewidth}{0.4pt}
\fancyfoot[C]{\small \textcolor{black}{\footnotesize I hereby authorize the processing of the personal data contained in this CV in compliance with the European Regulation (UE) 2016/679.\\[0.2cm]
\footnotesize  Page \textcolor{black}{\thepage} of  \pageref*{LastPage}}}
% \fancyfoot[C]{\small  \textcolor{black}{Page \thepage \hspace{1pt} of  \pageref{LastPage}}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% Side bar
\sidebar{sideBarColor!25}

% \simpleheader{titleBackColor}{white}{Giuseppe Donnarumma}{Aerospace Engineer}{shuttle.pdf}

\header{titleBackColor}{6cm}{\bgupper{titleBackColor}{white}{\bfseries\huge XXXXXXXX XXXXXXXXXX}}{\bg{titleBackColor}{white}{Aerospace engineer} }{\bg{titleBackColor}{myyellow}{\large Curriculum Vitae}}{2.5cm}{example-image-a}

% Start Minipages
\vspace*{3.0cm}
\adjustbox{valign=t}{\fbox{\begin{minipage}{\leftMinipageWidth}     
        
    % Profile section
    \ruleline{\textbf{About me}}
    \lipsum[11]
    \vspace*{0.2cm}
    
    \lipsum[2]

    % QR Code
    \begin{flushright}
    \small \textbf{\aiOverleaf Download my CV}\\
   
   \footnotesize Last updated: \today \\
    \vspace*{0.2cm}
       % \quad
        \bg{white}{black}{\qrcode[height=2.0cm]{}} \\       
    \end{flushright}                   
\end{minipage}}} %
     \hfill 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%% MAIN SECTION %%%%%%%%%%%%%%%%%%%%
\adjustbox{valign=t}{\fbox{\begin{minipage}{\rightMinipageWidth} %11.3cm       
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % Work Experience
    \MySectionTitle{\faSuitcase}{work experiences}

    % input: #1=title, #2=years, #3=logo, #4=university, #5=city, #6=specialization, #7=description
    \MySection{Visiting Researcher}
            {Feb.--Mar. 20XX}
            {example-image-b}            
            {University}
            {Rome, Italy}
            {Aerospace Engineering}
            {\newline \lipsum[11]}
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    
    \MySectionTitle{\faGraduationCap}{Education}

    \MySection{Master's Degree}
    {20XX--20XX}
    {example-image-c}
    {University xxxxxxxx}
    {Rome, Italy}
    {Aerospace Engineering}
    {\begin{itemize}[noitemsep,topsep=0pt,label=\textcolor{titleBackColor}{\textbullet}]
        \item Thesis title
        \item Thesis subject
        \item Thesis keywords 
        \item Graduation grade
    \end{itemize}   
    }
        
    \MySection{Bachelor's Degree}{20xx--20xx}{example-image-c}{University xxxxxx}{xxxxxx, Italy}{Aerospace Engineering}{\begin{itemize}[noitemsep,topsep=0pt,label=\textcolor{titleBackColor}{\textbullet}]
        \item Thesis title
        \item Thesis subject
        \item Graduation grade
    \end{itemize}
    }
   
    \MySection{High School Diploma}{20xx--20xx}{example-image-c}{IIS \enquote{xxxxxxxx}}{XXXXXXX, Italy}{Liceo Scientifico}{
    \begin{itemize}
        \item Kind of secondary school: Italian secondary school
        \item Diploma grade
    \end{itemize} 
    }
    
    \vspace*{\SecVertSpace}
        
\end{minipage}} 
}%
\end{document}

我想解决以下几点(参见下图以便更好地理解):

  1. 将二维码和以上句子(见框1内的元素)移至我的简历页眉处;
  2. 修改彩色侧边栏宽度和图像位置,例如各段(2)都相等;
  3. 减少各部分框中的行距(3),使其更紧凑;
  4. 为页脚背景着色。

我很抱歉在一个问题中提出了很多请求。如果需要,我可以将其拆分成不同的问题。

我的简历

答案1

您的代码比上次复杂了很多,包含一些似乎未在此处使用的包。看起来您迷路了?

我建议服用更加基于布局的方法使用包flowfram。这减轻了传统 LaTeX 微调带来的负担。但是,这可能需要一些学习。

请参阅附件一个可供你借鉴的框架例如,根据需要添加字体、颜色、宏。布局部分往往有点复杂,而文本内容又变得简单。//您可以几乎不做任何更改地重用代码的相关部分,同时摆脱复杂的纠缠。

因此,这是一个优点,您可以专注于单独回答每个框架的问题“我如何在基于文章的文档中仅编码这一部分?”(例如,标题中的文本部分作为一个非常短的独立文档)

该布局有意仅适用于第 1 页(见下文),并与 pdflatex 一起运行。

让我们看一下。步骤 1 和 2 定义纸张的几何形状和颜色。相关部分来自步骤 3:

  • 您可以打开或关闭 flowfram 的draft选项,参见下方右图
  • 内容(你的个人资料)将被放置在唯一的 flowframe 中,我将其方便地放置在右侧
  • 从这里开始我只使用静态帧
  • 侧边栏有两种风格:
  • a)背景颜色过大
  • b) 只是一个文本框,方便地调整了一点大小
  • 这一想法在页眉和更简单的页脚中得到重复
  • 标题也有 3 个框架,分别用于图像 (hdi)、文本 (hdt) 和二维码 (hdq),因此您可以根据需要轻松地移动它们
  • 通过添加[1]命令,所有框架将仅出现在所述页面上,即 1;有关详细信息,请参阅手册
% ~~~ 3. frames, all limited to page 1 via [1] ~~~~~~~~~~~~~~~~~~
\usepackage{calc}
\usepackage[
%   draft
    ]{flowfram}

%     3a. content       W              H         x    y
\newflowframe[1]{\textwidth-75mm}{\textheight}{75mm}{0pt}

%     3b. sidebar
\newstaticframe*[1]{75mm}{\paperheight}{-5mm}{0pt}[sidefill]% oversized colored
\newstaticframe*[1]{65mm}{\textheight}{0pt}{0pt}[side]% "text"-frame
...

左图显示不使用 flowfram 选项的结果,右图显示使用 flowframdraft选项的结果。为了便于理解,我在论文左下方标出了各种静态框架标签和参考点。

结果

步骤 4 给出了完成这项工作所需的其他软件包。步骤 5 是其他所需的宏,一个用于侧边栏标题的外观,一个用于标题中的圆形图片。

现在是本文档的内容,步骤 6。

Flowfram 提供环境来将某些内容放入各种静态框架中。星号版本适用于带标签的框架。

% ~~~ 6. THE CONTENT ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
\begin{document}

% ~~~ header contents ~~~~~~~
\begin{staticcontents*}{hdi}% header image to the left
    \roundpic{example-image-a}
\end{staticcontents*}
...

完成所有这些操作后,您只需填充白色区域,即此文档中唯一的流程框架。即再次使用常规 LaTeX。思考并保持简单。先尝试标准 LaTeX,然后再转向其他软件包(这可能会增加出现不良结果的可能性)。

最后,当您为第 2 页等添加框架时,可能需要打开绝对页面。请参阅 flowfram 的手册。

Flowfram 的示例有时会计算长度,我在这里对其进行了硬编码。由您来决定哪种方法更适合您。

例如,要重新对齐标题项,请在前导码中调整它们的框架参数。这就是移动这些项目所需要做的全部工作。

\documentclass[10pt,a4paper]{article}

% ~~~ 1. paper layout ~~~~~~~~~~~
\usepackage{geometry}
\geometry{
    a4paper,
    left=0.5cm,
    right=0.5cm,
    top=47mm,% <<< NEW
    bottom=1.0cm,
    includefoot,
    headheight=2.5cm, % needed to avoid warnings with fancyhdr package
    footskip=0.4cm,
%    showframe=true
}

\pagestyle{empty}   % disabling headers and footers
\parindent0pt       % no indent of first paragraph line

% ~~~ 2. colors ~~~~~~~~~~~~~~~~
\usepackage{color}
\definecolor{gry}{gray}{0.9}
\definecolor{gryf}{gray}{0.95}
\definecolor{blk}{gray}{0.}

% ~~~ 3. frames, all limited to page 1 via [1] ~~~~~~~~~~~~~~~~~~
\usepackage{calc}
\usepackage[
%   draft
    ]{flowfram}

%     3a. content       W              H         x    y
\newflowframe[1]{\textwidth-75mm}{\textheight}{75mm}{0pt}

%     3b. sidebar
\newstaticframe*[1]{75mm}{\paperheight}{-5mm}{0pt}[sidefill]% oversized colored
\newstaticframe*[1]{65mm}{\textheight}{0pt}{0pt}[side]% "text"-frame

%     3c. header and footer
\newstaticframe*[1]{\paperwidth}{47mm}{-5mm}{\paperheight -52mm}[hdfill]
\newstaticframe*[1]{50mm}{40mm}{0mm}{\paperheight -52mm}[hdi]%   header image
\newstaticframe*[1]{50mm}{40mm}{40mm}{\paperheight -52mm}[hdt]%  header text
\newstaticframe*[1]{50mm}{40mm}{185mm}{\paperheight -52mm}[hdq]% header QR
\newstaticframe*[1]{\paperwidth}{14mm}{-5mm}{-14mm}[ft]

% ~~~ 3d. filling frames with color ~~~~~~~~~~~
\setallstaticframes{border=none}
\setstaticframe*{sidefill}{backcolor=gry}
\setstaticframe*{side}{valign=t}
\setstaticframe*{hdfill}{backcolor=gryf}
\setstaticframe*{ft}{backcolor=gryf}

% ~~~ 4. other packages ~~~~~~~~~~~
\usepackage{qrcode}
\usepackage{lipsum}
\usepackage{graphicx}
\usepackage{tikz}

% ~~~ 5. other macros ~~~~~~~~~~~~~~~~~
%     headers in the sidebar
\newcommand\sidehd[1]{\hrulefill\raisebox{-3pt}{\textbf{\hspace{.8em}#1\hspace{1em}}}\hrulefill\vspace{4pt}}% good old LaTeX adjustments

%     rounded picture in header
\newcommand{\roundpic}[1]{\tikz{\draw [path picture={ \node at (path picture bounding box.center){\includegraphics[height=30mm,scale=.7]{#1}} ;}] (0,0) circle (1.3) ;}}

% ~~~ 6. THE CONTENT ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
\begin{document}

% ~~~ header contents ~~~~~~~
\begin{staticcontents*}{hdi}% header image to the left
    \roundpic{example-image-a}
\end{staticcontents*}
% ---------------------------
\begin{staticcontents*}{hdt}% header text next to the image
        \textbf{Aerospace Engineer}
        \vspace{\baselineskip}
        
        \large{\textbf{XXX XXXXX XXXX}}
        \vspace{.9\baselineskip}
        
        \textbf{Curriculum Vitae}   
\end{staticcontents*}
% ---------------------------
\begin{staticcontents*}{hdq}% qr-code to the right
    \qrcode[hyperlink,height=0.5in]{http://www.ctan.org}
\end{staticcontents*}

% ~~~ footer contents ~~~~~~~
 \begin{staticcontents*}{ft}
      \begin{center}
      \small{I hereby authorize the processing of the personal data contained in this CV in compliance with the European Regulation (UE) 2016/679.}
      \end{center}
 \end{staticcontents*}

% ~~~ sidebar contents ~~~~~~~
 \begin{staticcontents*}{side}
    \sidehd{About me}
 
    \lipsum[1]\\
 
    \sidehd{Other things}
 
    \lipsum[2] 
 \end{staticcontents*}

% ~~~ normal text content, which goes into the flowframe now ~~~~~~~~~~~~~~~~~~
Here you place text like you would do within a normal textarea, without all those sidebars, headers and footers.\\

Think simple.\\

E.g. use tables for alignment. Use parboxes inside a cell, for example.

\section{You can do this}

And you can do even that:

\subsection{Whatever}

\begin{tabular}{lr}
\hline
A & B\\
better use: & package booktabs\\
image here $\longrightarrow$ & \includegraphics[scale=.2]{example-image-a}\\
\includegraphics[scale=.2]{example-image-b}& $\longleftarrow$ image there\\
\hline
\end{tabular}

\section{Final}
And if you can't hesitate using minipages: so be it.

\end{document}

答案2

我建议像 一样定义结构tcbposter,然后在相应的海报框中写任何你喜欢的内容。你可以像在任何 中一样控制边距tcolorbox

此建议仅适用于单页课程。tcbposter 不可跨页拆分。

一些需要启动的代码:

\documentclass{article}

%%%

\usepackage{geometry}

\geometry{
    paperheight=842pt,
    paperwidth=595pt,
    margin=0pt,
}
\setlength{\parindent}{0cm}

\usepackage{tabularx}

\usepackage{qrcode}

\usepackage[most]{tcolorbox}

\definecolor{titleBackColor}{RGB}{25,20,60} %original color: {rgb}{0.25,0.25,0.25}
\definecolor{sideBarColor}{rgb}{0.6,0.6,0.6}
\definecolor{mydarkblue}{rgb}{0.07,0.08,0.4}
\definecolor{myblue}{rgb}{.4,.4,1}
\definecolor{myyellow}{RGB}{245,169,34}

\usepackage{lipsum}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Format of the title section in the side column
% based on https://tex.stackexchange.com/questions/65731
\makeatletter
\def\cv@hrulefill{{\color{titleBackColor}\leavevmode\leaders\hrule height 1pt\hfill\kern\z@}}
% line before and after text (some tweaking is required here)
% based on https://tex.stackexchange.com/questions/15119
\NewDocumentCommand{\ruleline}{m}{\par\noindent\raisebox{.25\baselineskip}{\makebox[\linewidth]{\cv@hrulefill\hspace{1ex}\raisebox{-.25\baselineskip}{\large #1}\hspace{1ex}\cv@hrulefill}}\vspace*{0.05cm}}
\makeatother

\begin{document}
\begin{tcbposter}[
    poster = {%showframe, 
                    columns=1, rows = 1, spacing=0pt},
    boxes = {sharp corners, valign=top, boxrule=0pt}
]
%Header
\posterbox[colback=titleBackColor, height=2.5cm]{name=headbox, column=1, row=1}{%
\begin{tabularx}{\linewidth}{lXr}
\tikz[baseline]{\node[circle, minimum width=1.9cm, draw=myyellow, line width=.3mm, path picture={\node at (path picture bounding box.center){\includegraphics[width=4cm]{example-image-a}};}]{};}&
\begin{tabular}{l}
\textcolor{white}{\sffamily\bfseries Aerospace engineer}\\[1mm]
\textcolor{white}{\sffamily\bfseries\LARGE XXXXXXX XXXXXXX}\\[2mm]
\textcolor{myyellow}{\sffamily\bfseries Curriculum Vitae}
\end{tabular}&
\begin{tabular}{c}
\textcolor{white}{\sffamily Download my CV}\\
\includegraphics[height=12mm]{example-image-b}
\end{tabular}%
\end{tabularx}}

%Footer
\posterbox[colback=titleBackColor!20, height=1cm]{name=bottombox, column=1, above=bottom}{Something on footer}

%Leftcolumn
\posterbox[colback=sideBarColor!25]{name=sidebar, column=1, span=.3, between=headbox and bottombox}{%
\ruleline{\textbf{About me}}
\lipsum[11]
%\begin{tcolorbox}\lipsum[1]\end{tcolorbox}
}

%Rightcolumn
\posterbox[colback=white]{name=mainbox, column*=1, span=.7, below=headbox, between=headbox and bottombox}{}
\end{tcbposter}
\end{document}

在此处输入图片描述

相关内容