Мне бы хотелось получить узкие абзацы на широких страницах, чтобы заголовки разделов, рисунки, таблицы были широкими, а абзацы — узкими.
\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\setlength{\parindent}{0pt} % so we can see better what is happening
\newenvironment{narrowpar}% I’d like every paragraph to follow these rules.
{\begin{list}{}{%
\setlength{\listparindent}{\parindent}%
\setlength{\itemindent}{\parindent}%
\setlength{\leftmargin}{2cm}%
\setlength{\rightmargin}{2cm}%
}\item }%
{\end{list}}
\begin{document}
\section{A section title that ranges across the page}
This is a paragraph (Loret Ipsum So On). And below, an equation that can make use of the whole page width:
\begin{equation}
p v = R T
\end{equation}
Here is another paragraph.
\begin{narrowpar}
This very text looks exactly the way I would like my paragraphs to look. But unfortunately it forces me to insert code manually before and after every paragraph in the source file.
\end{narrowpar}
\end{document}
Говоря по-другому, я пытаюсь контролировать боковое пространство («отступ слева и справа» на языке HTML/CSS) для всех абзацев, не используя поля страницы. Буду признателен за любую помощь...
решение1
Вы можете попробовать переопределить форму абзаца с помощью \parshape
команды:
\parshape 1 .15\hsize.65\hsize
Аргумент 1: первая строка, пара аргументов: .15\hsize.65\hsize
левое и правое поле. Все остальные строки будут иметь отступ, как у первой строки.
Это работает только для абзаца, где присутствует команда. Поэтому вы должны включить \parshape
в переопределение \par
, т.е.:
\def\par{\ifhmode\ownpar\fi\endgraf}
\def\ownpar{\parshape 1 .15\hsize.65\hsize}