baposter 多行标题框

baposter 多行标题框

我正在准备一张海报巴波斯特包,并且我在 headerbox 中有一个很长的 header,因此它超出了限制。 有没有办法将 headerbox 中的 header 写成多行?

答案1

如果我没记错的话,这就是标题的定义baposter.cls

\ifbaposter@eyecatcher% Has eye catcher%
  \draw (image.east) node(title)[anchor=west,text width=\baposter@titleimage@textwidth]{%
    \begin{minipage}{\baposter@titleimage@textwidth}%
      \begin{center}%
      \textbf{\Huge #3}\\%
      {\Large #4}%
      \end{center}%
    \end{minipage}
  };%
\else% Has no eye catcher
  \draw (image.east) node(title)[anchor=west]  { {\begin{minipage}{\baposter@titleimage@textwidth}{\bfseries\Huge #3}\\{\Large #4}\end{minipage}} };%
\fi

显然,使用的字体大小是HugeLarge,而它们“托管”的 tikz 节点没有定义特定的字体大小,这会导致行距不好。我建议做些不同的事情,并修改这部分代码,例如

  • 字体大小在 tikz 节点内正确设置
  • #3 和 #4 内容位于两个不同的节点中
  • 避免了 minipage 环境

这意味着一些代码如下(对于 if 部分,将适应 else 部分):

  \draw (image.east) node(title)[anchor=west,text width=\baposter@titleimage@textwidth,text badly centered,font=\Huge\bfseries]{#3};
  \node[below of=title,anchor=west,text width=\baposter@titleimage@textwidth,text badly centered,font=\Large]{#4};

请注意,positioning如果类头中尚未定义,则可能会请求 tikz 库。

答案2

\headerbox{$\begin{array}{l}\vspace{-1.5cm}\\
\text{text in first line}\\ \text{ text in second line}\\ \text{text in third line}
\end{array}$
}{boxheaderheight=2.4cm,name=text,column=0,row=0}{ text}

答案3

那这个呢:

\begin{poster}{% other declarations
   headerheight=.125\textheight,% this defines height of box reserved for title, name, etc.
   %another declarations
   }

相关内容