Как проиллюстрировать рисунок текстом и двумя украшениями

Как проиллюстрировать рисунок текстом и двумя украшениями

Как создать такой рисунок:

введите описание изображения здесь

Красным цветом обозначены только пояснения (под "серединой" я подразумевал середину рисунка, представляющую спираль) и ее не следует рисовать. Tikz подойдет лучше всего, так как я немного ее знаю (больше, чем другие программы, о которых я ничего не знаю) и хочу заменить спирали некоторыми собственными украшениями.

Текст здесь может показаться крупным, но на самом деле я планирую использовать стандартный шрифт.

Вот минимальный рабочий пример (без преамбулы LaTeX, поскольку я использую LyX):

\begin{tikzpicture} 

\node[align=center]{text text text text \\ text text text text};
% To do: Place a picture here, whose middle is at equal distance between the top line of text and the bottom line and that has a "good-looking" distance from the text
% To do: Place the same picture with same distance requirements here; would be nice if it were mirrored, so I don't have to mirror it externally in a different program.
\end{tikzpicture} 

EDIT (так как это было слишком много для комментария): Хорошо, изменение ответа дает следующее

\documentclass{article}
\usepackage{graphicx}

\newlength\decorwidth
\setlength\decorwidth{1cm}

\newcommand\TextDecor[2]{%
  \par\smallskip\noindent%
  \parbox[c]{\decorwidth}{\includegraphics[width=.5\decorwidth]{#1}\hfill}%
  \parbox[c]{\dimexpr\textwidth-2\decorwidth\relax}{#2}%
  \parbox[c]{\decorwidth}{\hfill\includegraphics[width=.5\decorwidth]{#1}}\par\smallskip%
}

\begin{document}


\TextDecor{ornament1}{ \begin{center}text  text text  text\\ text text text  text\end{center}}

\end{document}

теперь это выглядит так. Красным цветом пояснено то, что я не успел сделать:

введите описание изображения здесь

решение1

Вот одна из возможностей: я определил команду newcommand \TextDecorс двумя обязательными аргументами: имя файла, содержащего декорацию и текст, который нужно декорировать, и один необязательный аргумент, управляющий разделением между декорацией и текстом (значение по умолчанию — 10pt). Декорации включаются с помощью \includegraphicsиз graphicxпакета.

Идея состоит в том, чтобы использовать три \parboxes с вертикальным выравниванием по центру: два для украшений и среднее для текста; ширина полей, содержащих украшения, контролируется длиной decorwidth(изначально установленной как 2cm); конечно, вы можете изменить определение \TextDecorв соответствии со своими потребностями:

\documentclass{article}
\usepackage{graphicx}

\newlength\decorwidth
\setlength\decorwidth{1.5cm}
\newlength\decorsep

\newcommand\TextDecor[3][10pt]{%
  \setlength\decorsep{#1}
  \par\smallskip\noindent%
  \parbox[c]{\decorwidth}{\includegraphics[width=\decorwidth]{#2}\hfill}%
  \hspace{\decorsep}%
  \parbox[c]{\dimexpr\textwidth-2\decorwidth-2\decorsep\relax}{#3}%
  \hspace{\decorsep}%
  \parbox[c]{\decorwidth}{\hfill\includegraphics[width=\decorwidth]{#2}}\par\smallskip%
}

\newcommand\Text{% some filler text for the example
Nam dui ligula, fringilla a, euismod sodales, sollicitudin vel, wisi. Morbi
auctor lorem non justo. Nam lacus libero, pretium at, lobortis vitae, ultricies et,
tellus. Donec aliquet, tortor sed accumsan bibendum, erat ligula aliquet magna,
vitae ornare odio metus a mi. Morbi ac orci et nisl hendrerit mollis.
}

\begin{document}

\Text
\TextDecor{ornament1}{\Text}
\Text
\TextDecor[30pt]{ornament2}{\Text}
\Text
\TextDecor[2pt]{ornament3}{\Text}
\Text

\end{document}

введите описание изображения здесь

решение2

Вот предложение по использованию пакета mdframed. Для иллюстрации украшений я использовала пакет pifont.

Соответствующие части прокомментированы в коде. Остальные настройки задокументированы в руководстве.

Вместо использования шрифта или изображения вы также можете работать с TikZ, который загружается пакетом mdframed.

\documentclass{article}
\usepackage{graphicx}
\usepackage[framemethod=tikz]{mdframed}
\usetikzlibrary{calc}

\usepackage{pifont}
\usepackage{kantlipsum}

\mdfdefinestyle{ornament}{%
  topline=false,bottomline=false,
 middlelinewidth=2cm, %width of the ornament
 middlelinecolor=white,
 innerleftmargin=.1cm,innerrightmargin=.1cm, %inner distance from ornament
 nobreak,
 singleextra={\path let \p1=(O), \p2=(P) in (\x1,.5*\y2) coordinate (Q);
                           \node at (Q) {\ornamentsetupI};
                           \node at (P|-Q) {\ornamentsetupI};}
}
\newcommand*\ornamentsetup[1]{\def\ornamentsetupI{#1}}


\newmdenv[style=ornament]{ornament}
\ornamentsetup{{\huge\ding{107}}}

\begin{document}

\begin{ornament}
\kant[1]\kant[1]\kant[1]
\kant[1]\kant[1]\kant[1]
\kant[1]\kant[1]\kant[1]
\end{ornament}


\end{document}

введите описание изображения здесь

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