Добавить поле в маркированные разделы

Добавить поле в маркированные разделы

Я хочу добавить поле в повторяющийся раздел учебника, в котором есть обсуждения вопросов. Можно ли это сделать, добавив команду(ы) "tex style setting" в преамбулу? Я использую класс memoir.

(Мне это необходимо, поскольку я генерирую основное содержимое в своем файле LaTeX с помощью Scrivener и Multimarkdown, а не пишу его вручную.)

Я использовал текст изздесьдля создания красивых заголовков разделов. Я хотел бы применить похожий стиль к двум разделам в конце главы — Резюме и Обсуждения — но поскольку они не являются разделами как таковыми, я хочу, чтобы их заголовки были без нумерации разделов.

Это критический текст:

\newcommand\titlebar{%
\tikz[baseline,trim left=3.1cm,trim right=3cm] {
    \fill [black!10] (2.5cm,-1ex) rectangle (\textwidth+3.8cm,2.5ex);
    \node [
        fill=cyan!60!white,
        fill=black!90!white,
                    anchor= base east,
        rounded rectangle,
        minimum height=3.75ex] at (2.9cm,0) {
        \textbf{\arabic{chapter}.\thesection.}
        \color{white}\textbf{T\thesection}
    };
}%
}
\titleformat{\section}{\large}{\titlebar}{0.1cm}{}
\renewcommand*{\thesection}{\arabic{section}}

Это применяет приятный стиль к заголовкам разделов, включая номер раздела. Теперь я хочу применить похожий стиль к двум разделам, Резюме и Обсуждение, которые появляются в конце главы. Но я хочу, чтобы эти два раздела НЕ имели номеров разделов.

решение1

Я бы сказал, что лучше всего определить новый макрос для таких важных разделов, как

\newcommand{\dsection}[1]{\section*{\titlebar*#1}}

с упрощенной (отмеченной звездочкой) версией \titlebar(см. полный код ниже).

\documentclass{memoir}
\usepackage{titlesec,letltxmacro}
\usepackage{lipsum}
\usepackage{tikz}\usetikzlibrary{shapes.misc}
\makeatletter
\newcommand\titlebar@@{%
\tikz[baseline,trim left=3.1cm,trim right=3cm] {
    \fill [cyan!25] (2.5cm,-1ex) rectangle (\textwidth+3.1cm,2.5ex);
}}
\newcommand\titlebar@{%
\tikz[baseline,trim left=3.1cm,trim right=3cm] {
    \fill [cyan!25] (2.5cm,-1ex) rectangle (\textwidth+3.1cm,2.5ex);
    \node [
        fill=cyan!60!white,
        anchor= base east,
        rounded rectangle,
        minimum height=3.5ex] at (3cm,0) {
        \textbf{\arabic{chapter}.\thesection.}
    };
}}
\newcommand\titlebar{\@ifstar\titlebar@@\titlebar@}
\titleformat{\section}{\large}{\titlebar}{0.1cm}{}
\renewcommand*{\thesection}{\arabic{section}}

\LetLtxMacro{\LtxSection}{\section}
\newcommand{\dsection}[1]{\LtxSection*{\titlebar*#1}}
\renewcommand{\section}[2][]{%
  \def\secname{#2}
  \ifx\somename\secname
    \LtxSection*{\titlebar*#2}
  \else
    \LtxSection[#1]{#2}
  \fi}
\def\somename{Summary}
\makeatother

\begin{document}
\chapter{First Chapter}
\section{Section name}
\lipsum[2]

\dsection{Some other Chapter}
\lipsum[2]

\section{Summary}
\lipsum[2]
\end{document}

Примечание:По запросу \desctionформат будет автоматически применен к каждому разделу под названием «Резюме».

пример

Приложение

Чтобы выделить заголовок раздела жирным шрифтом, вам просто нужно изменить строку

\titleformat{\section}{\large}{\titlebar}{0.1cm}{}

к

\titleformat{\section}{\large\bfseries}{\titlebar}{0.1cm}{}

Связанный контент