答案1
使用titlesec
和geometry
:
\documentclass{article}
\usepackage{titlesec,xcolor}
\usepackage[margin=1in,left=3in]{geometry}
\titleformat{\section}[block]
{\Large
\addtolength{\titlewidth}{1.95in}%
\titleline*[l]{\color{blue}\titlerule[2pt]}%
\addvspace{4pt}%
\normalfont\bfseries}
{\thesection\hspace{-0.5em}}{2in}{}
\titleformat{name=\subsection, numberless}[block]
{\large
\addtolength{\titlewidth}{1.95in}%
\titleline*[l]{\color{blue}\titlerule[2pt]}%
\hrule depth 0pt width \linewidth height 0.5pt%
\addvspace{4pt}%
\normalfont\bfseries}
{}{2in}{}
\titlespacing*{\section} {-2in}{3.5ex plus 1ex minus .2ex}{2.3ex plus .2ex}
\titlespacing*{\subsection} {-2in}{3.25ex plus 1ex minus .2ex}{1.5ex plus .2ex}
\begin{document}
\section{Some section}
\noindent Some text here.
\subsection*{Some sub section}
\noindent Some text here.
\end{document}
答案2
这并非旨在提供解决方案。它更多的是为您提供一些想法,让您了解如何开发您想要构建的格式。它演示了以下内容:
- 使用来
geometry
设置宽左边距等。 - 使用
fancyhdr
设置延伸整个页面宽度的页眉和页脚线 - 使用
titlesec
将章节标题放在边距中,并在文本中放置规则 - 用于
enumitem
设置定制的枚举环境,将每个项目标记为“步骤 X”,并将标签放在边缘处。
代码:
\documentclass[a4paper]{article}
\usepackage{geometry}
\geometry{landscape, hscale=.6, vscale=.8, hmarginratio=5:1, vmarginratio=1:1, marginparwidth=.375\paperwidth, ignoremp}
\usepackage[T1]{fontenc}
\usepackage[explicit]{titlesec}
\titlespacing*{\section}{\dimexpr -\marginparsep-\marginparwidth}{*4}{*1}
\titleformat{\section}[runin]{\large\bfseries\titlerule[.5pt]\filright}{\makebox[1em][c]{\thesection}}{1em}{\parbox[t]{\dimexpr\marginparwidth-2em}{#1}\hskip\marginparsep\mbox{}}[\newline]
\usepackage{enumitem}
\newlist{steps}{enumerate}{1}
\setlist[steps]{label=Step \arabic*, font=\bfseries, leftmargin=-\marginparsep, itemindent=\marginparsep, align=right}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\fancyhfoffset[lh,lf]{\dimexpr\marginparwidth+\marginparsep}
\fancyhf[lh]{left head}
\fancyhf[ch]{centre head}
\fancyhf[rh]{right head}
\fancyhf[lf]{left foot}
\fancyhf[cf]{centre foot}
\fancyhf[rf]{right foot}
\renewcommand{\footrulewidth}{.4pt}
\usepackage{kantlipsum}
\begin{document}
\section{How To Do Things With Text}
\kant[1]
\section{How To Do More Things With Text}
\kant[2]
\begin{steps}
\item First
\item Second
\item Third
\end{steps}
\end{document}
结果:
答案3
你需要做的是
- 设置足够的左边距
- 用于
\llap
在边缘排版某些内容。
下面是一个使用纯 TeX 和 OPmac 的简单示例:
\input opmac
\margins/1 a4 (5,2,2,2)cm
\def\printsec#1{\par \norempenalty-200 \medskip
\llap{\localcolor\Blue \vrule height1mm width3cm\kern2mm}\nobreak
{\secfont \noindent \llap{\hbox to3.2cm{\dotocnum{\thetocnum}\hfil}}#1\nbpar}%
\nobreak \remskip\medskipamount \firstnoindent
}
\def\printsecc#1{\par \norempenalty-200 \medskip
\llap{\localcolor\Blue \vrule height1mm width3cm\kern2mm}\nobreak
\hrule\nobreak\medskip
{\seccfont \noindent #1\nbpar}%
\nobreak \remskip\medskipamount \firstnoindent
}
\sec Title of section
text of section
\sec Title of second section
text of section
\secc Some subsection
text of subsection
\bye
请注意,宏的主体\printsec
是\printsecc
从中复制opmac.tex
并稍加修改以解决您的任务。