0

This post is related to Efficiently Displaying a Paragraph in Trapezoidal Formation in which the shapepar package was suggested in one of the comments.

Consider the code

\documentclass[10pt]{book}
\usepackage{showframe}
\usepackage{shapepar,varwidth}

\def\trapezoiddownshape{% {0}% centerline is at x = 0 {0}b{0}\ %begin at (0, 0) {0}t{0}{3}\ %text at y = 0, width = 3 {2}t{0}{1}\ %text at y = 2, width = 1 {2}e{1} % end at (1,2) } \def\trapezoiddownpar#1{\Shapepar\trapezoiddownshape #1\unskip\ .\par}

\begin{document} \vspace*{\fill}

\begin{center} \begin{varwidth}{\linewidth} \trapezoiddownpar{Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut porttitor magna posuere tristique interdum. Maecenas ac nisi rutrum, tincidunt ante a, cursus est. Pellentesque dui ligula, maximus quis viverra sit amet, cursus sed urna. Donec eu erat sed justo cursus tristique non quis nisi. Suspendisse dapibus lorem nec laoreet interdum. Duis sit amet leo sagittis, tincidunt elit in, imperdiet diam. Nulla mi justo, tincidunt a ullamcorper eget, consequat ut odio. Aliquam erat volutpat. Suspendisse potenti. Aenean tristique arcu orci, sit amet dignissim ligula elementum vitae. Praesent auctor augue eu lacus tempor maximus. Quisque auctor, odio eu laoreet congue, mi massa facilisis nisi, a faucibus arcu nisi egetet ex} \end{varwidth} \end{center}

\vfill

\end{document}

which produces the output

enter image description here

QUESTION: Can anyone suggest how I may modify the code in order to produce a paragraph in the shape of an isosceles trapezoid (that is, a trapezoid in which the base angles are equal)? I have not been able to figure out how to do this.

Remark: The textwidths specified in the MWE can be modified. I compile the code with pdflatex.

Thank you.

DDS
  • 8,816
  • 4
  • 9
  • 36

1 Answers1

1

I commented out, what's not needed for the shape itself, adjusted a few coordinates. It works with both documentclasses book and article.

result

%\documentclass[10pt]{article}
\documentclass[10pt]{book}% works with both classes
%\usepackage{showframe}
%\usepackage{shapepar,varwidth}
\usepackage{shapepar}

\def\trapezoiddownshape{% {0}% centerline is at x = 0% <<< no {0}b{1.5}\ %begin at (0, 0)% <<< {0}t{0}{3}\ %text at y = 0, width = 3 {2}t{1}{1}\ %text at y = 2, width = 1% <<< {2}e{1} % end at (1,2) } \def\trapezoiddownpar#1{\Shapepar\trapezoiddownshape #1\unskip\ .\par}

\begin{document} \vspace*{\fill}

%\begin{center} % \begin{varwidth}{\linewidth} \trapezoiddownpar{Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut porttitor magna posuere tristique interdum. Maecenas ac nisi rutrum, tincidunt ante a, cursus est. Pellentesque dui ligula, maximus quis viverra sit amet, cursus sed urna. Donec eu erat sed justo cursus tristique non quis nisi. Suspendisse dapibus lorem nec laoreet interdum. Duis sit amet leo sagittis, tincidunt elit in, imperdiet diam. Nulla mi justo, tincidunt a ullamcorper eget, consequat ut odio. Aliquam erat volutpat. Suspendisse potenti. Aenean tristique arcu orci, sit amet dignissim ligula elementum vitae. Praesent auctor augue eu lacus tempor maximus. Quisque auctor, odio eu laoreet congue, mi massa facilisis nisi, a faucibus arcu nisi egetet ex} % \end{varwidth} %\end{center}

\vfill

\end{document}

MS-SPO
  • 11,519