如果我有:
\documentclass{report} %use KOMA scrbook
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc} % Für Umlaute
\usepackage{helvet}
\renewcommand{\familydefault}{\sfdefault}
\usepackage{multicol} % mehrere Spalten
\usepackage[explicit]{titlesec}
\usepackage{tikz}
\usepackage{varwidth}
\usepackage{linegoal}
\titleformat{\section}
{\fontsize{10pt}{0}\bfseries}{}{0em}
{%
\begin{tikzpicture}
\node[inner ysep=1.75mm,text width=85mm,
align=left,left color=black!15,right color=black!15]
{\thesection\hspace{5mm}\parbox[t][0pt][t]{\linewidth}{\raggedright #1}};
\end{tikzpicture}%
}
\begin{document}
\begin{multicols}{2}
\section{aaaa}
\section{bbbb}
\section{cccc}
\section{dddd}
\section{eeee}
\section{ffff}
\section{gggg}
\section{hhhh}
\section{iiii}
\section{jjjj}
\section{kkkk}
\end{multicols}
\end{document}
我得到:
章节编号应全部在第一条红线处结束全部章节标题应从第二条红线开始。
我怎样才能强制这样做?
答案1
这是该代码的修正版本。只需将\thesection
其括起来\parbox
即可。您可以根据需要进行调整。
\documentclass{report} %use KOMA scrbook
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc} % Für Umlaute
\usepackage{helvet}
\renewcommand{\familydefault}{\sfdefault}
\usepackage{multicol} % mehrere Spalten
\usepackage[explicit]{titlesec}
\usepackage{tikz}
\usepackage{varwidth}
\usepackage{linegoal}
\titleformat{\section}
{\fontsize{10pt}{0}\bfseries}{}{0em}
{%
\begin{tikzpicture}
\node[inner ysep=1.75mm,text width=85mm,
align=left,left color=black!15,right color=black!15]
{\parbox{10mm}{\raggedleft\thesection}\hspace{5mm}\parbox[t][0pt][t]{\dimexpr\linewidth-15mm}{\raggedright #1}};
\end{tikzpicture}%
}
\begin{document}
\begin{multicols}{2}
\section{Short title}
\section{bbbb}
\section{cccc}
\section{dddd}
\section{eeee}
\section{ffff}
\section{A longer title}
\section{hhhh}
\section{iiii}
\section{jjjj}
\section{kkkk}
\end{multicols}
\end{document}