从列表创建/生成多个部分(包括 \section 命令)

从列表创建/生成多个部分(包括 \section 命令)

是否有可能制定一个术语列表,用于创建几个连续的部分,以方便文档的组织?

我正在逐节粘贴并一次重命名一个部分以获取所有部分,但我需要创建许多部分......

下图显示了我想要创建的部分……

在此处输入图片描述

列表如下:

Inferface do usuário
Aba - Recursos
Mouse
Árvore de projeto
Instant 3D
Orientação de vistas
Estilos de exibição
Ocultar/Exibir itens
Reconstruir
Planos

我希望我是客观而清晰的......

代码

\documentclass[11pt,fleqn]{book}
\usepackage[top=3cm,bottom=3cm,left=3cm,right=3cm,headsep=10pt,a4paper]{geometry}
\usepackage[portuguese]{babel}
\usepackage{graphicx}
\usepackage[]{titlesec}
\usepackage[many]{tcolorbox}
\usepackage{booktabs}
\usepackage{xcolor}
\usepackage{lipsum}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

\begin{document}

\cleardoublepage

\chapter{Conhecendo o SolidWorks}

\section{Interface do Usuário}

\tcbsidebyside[title=Interface do Usuário,
sidebyside adapt=left,
bicolor,colback=white,colbacklower=yellow!10,
fonttitle=\bfseries,center title,drop lifted shadow,
]{%
    \includegraphics[height=4cm]{Envolver.png}
    %
}{%
    Esse recurso envolve um esboço em uma face plana ou não-plana. Você pode criar uma face plana a partir de modelos cilíndricos, cônicos ou extrudados. Também é possível selecionar um perfil plano para adicionar vários esboços de spline fechados. O recurso Envolver oferece seleção de contorno e reutilização de esboço.
}

\section{Aba - Recursos}

\tcbsidebyside[title=Aba - Recursos,
sidebyside adapt=left,
bicolor,colback=white,colbacklower=yellow!10,
fonttitle=\bfseries,center title,drop lifted shadow,
]{%
    \includegraphics[height=4cm]{Envolver.png}
    %
}{%
    Esse recurso envolve um esboço em uma face plana ou não-plana. Você pode criar uma face plana a partir de modelos cilíndricos, cônicos ou extrudados. Também é possível selecionar um perfil plano para adicionar vários esboços de spline fechados. O recurso Envolver oferece seleção de contorno e reutilização de esboço.
}

\end{document}

Envolver.png

在此处输入图片描述

结果可能是这样的...

在此处输入图片描述

编辑

在所有部分中,图像都会有所不同,第二列中的文本也会有所不同。

答案1

这使用expl3(由 加载xparse)并提供一个变量,该变量稍后\seq会用 填充并显示。\PopulateSectionSequence\DisplaySectionSequence

“语法”是

\PopulateSectionSequence{
   {Section Title; Section description}, 
   {Other section title; other section description}
}

用于;分隔标题和描述,用于{}防止,被解释为多个条目的分隔符。如果需要,用于{;}保留;为文字输入。

\documentclass[11pt,fleqn]{book}
\usepackage[top=3cm,bottom=3cm,left=3cm,right=3cm,headsep=10pt,a4paper]{geometry}
\usepackage[portuguese]{babel}
\usepackage{graphicx}
\usepackage[]{titlesec}
\usepackage[many]{tcolorbox}
\usepackage{booktabs}
\usepackage{xcolor}
\usepackage{lipsum}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

\usepackage{xparse}

\tcbset{sidebysideboxoptions/.style={
  sidebyside adapt=left,
  bicolor,colback=white,colbacklower=yellow!10,
  fonttitle=\bfseries,center title,drop lifted shadow,
}}



\ExplSyntaxOn

\seq_new:N \l_lcarvalho_section_seq

\NewDocumentCommand{\PopulateSectionSequence}{+m}{%
  \seq_set_from_clist:Nn \l_lcarvalho_section_seq {#1} 
}



\NewDocumentCommand{\DisplaySectionSequence}{}{%
  \seq_map_inline:Nn \l_lcarvalho_section_seq {%
    \seq_set_split:Nnn \l_tmpa_seq {;} {##1}
    \section{\seq_item:Nn \l_tmpa_seq {1}}
    \tcbsidebyside[
    title=\seq_item:Nn \l_tmpa_seq {1},
    sidebysideboxoptions]{%
      \includegraphics[height=4cm]{Envolver.png}
    }{
      \seq_item:Nn \l_tmpa_seq {2}
    }
  }
}
\ExplSyntaxOff

\begin{document}

\cleardoublepage

\chapter{Conhecendo o SolidWorks}


\PopulateSectionSequence{%
  {Interface do Usuário; Esse recurso envolve um esboço em uma face plana ou não-plana. Você pode criar uma face plana a partir de modelos cilíndricos, cônicos ou extrudados. Também é possível selecionar um perfil plano para adicionar vários esboços de spline fechados. O recurso Envolver oferece seleção de contorno e reutilização de esboço.},
  {Aba - Recursos;
    Esse recurso envolve um esboço em uma face plana ou não-plana. Você pode criar uma face plana a partir de modelos cilíndricos, cônicos ou extrudados. Também é possível selecionar um perfil plano para adicionar vários esboços de spline fechados. O recurso Envolver oferece seleção de contorno e reutilização de esboço.},
  {Mouse; Mouse informations},
  {Árvore de projeto ; Projeto\dots},
{Instant 3D; Something about 3D},
{Orientação de vistas ; Vista content},
{Estilos de exibição ; Foo },
{Ocultar/Exibir itens ; Foobar},
{Reconstruir ; Reconstruction},
{Planos ; Plans(?)}
}


\DisplaySectionSequence

\end{document}

在此处输入图片描述

答案2

这实际上取决于这些“部分”的内容。在您的 MWE 中,它们具有相同的图像和相同的文本,这通常不太可能。如果这是您真正想要的,那么只需定义一个命令来构造您的“部分”并循环遍历标题,例如,\foreach前列腺素包,生成您的文档。按照这种方式操作,以下是第 2 页的一部分:

在此处输入图片描述

(我已经使用姆韦图像包。)下面是生成该图像的代码:

\documentclass[11pt,fleqn]{book}
\usepackage[top=3cm,bottom=3cm,left=3cm,right=3cm,headsep=10pt,a4paper]{geometry}
\usepackage[portuguese]{babel}
\usepackage{graphicx}
\usepackage[]{titlesec}
\usepackage[many]{tcolorbox}
\usepackage{booktabs}
\usepackage{xcolor}
\usepackage{lipsum}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{mwe}

\newcommand\Section[1]{%
\section{#1}
\tcbsidebyside[title=#1,
    sidebyside adapt=left,
    bicolor,colback=white,colbacklower=yellow!10,
    fonttitle=\bfseries,center title,drop lifted shadow,
  ]{%
      \includegraphics[height=4cm]{example-image}
      %
  }{%
    Esse recurso envolve um esboço em uma face plana ou não-plana. Você
    pode criar uma face plana a partir de modelos cilíndricos, cônicos
    ou extrudados. Também é possível selecionar um perfil plano para
    adicionar vários esboços de spline fechados. O recurso Envolver
    oferece seleção de contorno e reutilização de esboço.
  }
}

\begin{document}

\cleardoublepage

\chapter{Conhecendo o SolidWorks}

\foreach \ttle in { Inferface do usuário,
                    Aba - Recursos,
                    Mouse,
                    Árvore de projeto,
                    Instant 3D,
                    Orientação de vistas,
                    Estilos de exibição,
                    Ocultar/Exibir itens,
                    Reconstruir,
                    Planos } { \Section{\ttle} }

\end{document}

实际上,您的标题、图像和文本几乎肯定会随着每个部分而变化。由于文本可能至少是段落大小,因此我宁愿定义一个环境来构建图像。由于您需要将部分的文本传递给\tcbsidebyside它,如果您使用环境包来构建环境,因为这使您可以\BODY直接使用环境。他是实现此方法的 MWE 的修改版本。输出类似。

\documentclass[11pt,fleqn]{book}
\usepackage[top=3cm,bottom=3cm,left=3cm,right=3cm,headsep=10pt,a4paper]{geometry}
\usepackage[portuguese]{babel}
\usepackage{graphicx}
\usepackage[]{titlesec}
\usepackage[many]{tcolorbox}
\usepackage{booktabs}
\usepackage{xcolor}
\usepackage{lipsum}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{environ}
\usepackage{mwe}

\NewEnviron{Section}[2]{%
  % \begin{Section}{title}{image} ...text...\end{Section}
  \section{#1}
  \tcbsidebyside[title=#1,
      sidebyside adapt=left,
      bicolor,colback=white,colbacklower=yellow!10,
      fonttitle=\bfseries,center title,drop lifted shadow,
    ]{%
        \includegraphics[height=4cm]{#2}
        %
    }{\BODY}
}

\begin{document}

\cleardoublepage

\chapter{Conhecendo o SolidWorks}

\begin{Section}{Inferface do usuário}{example-image-a}
    Esse recurso envolve um esboço em uma face plana ou não-plana. Você
    pode criar uma face plana a partir de modelos cilíndricos, cônicos
    ou extrudados. Também é possível selecionar um perfil plano para
    adicionar vários esboços de spline fechados. O recurso Envolver
    oferece seleção de contorno e reutilização de esboço.
\end{Section}

\begin{Section}{Aba - Recursos}{example-image-b}
   \lipsum[1]
\end{Section}

\begin{Section}{Árvore de projeto}{example-image-c}
    \lipsum[3]
\end{Section}

\end{document}

相关内容