Gostaria de criar um novo comando em LaTeX que alinhe o texto à direita e à esquerda (veja o exemplo abaixo). Só que eu gostaria que a coluna de texto tivesse o tamanho de meia página.
\documentclass[a4paper,10pt]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[italian]{babel}
\usepackage[a4paper, nohead, nofoot, top=2cm, bottom=2cm, left=2cm, right=2cm]{geometry}
\newcommand\sx{\fontfamily{lmss}\Large\flushright}
\newcommand\dx{\fontfamily{lmss}\Large\flushleft}
\begin{document}
\sx Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat.
\bigskip
\dx Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat.
\end{document}
Saída desejada:
Responder1
Agora que entendi melhor o seu problema, graças ao seu link, posso propor isso, que parece preencher todos os requisitos.
Eu defino um \character
comando que digita os nomes dos caracteres em maiúsculasedefine o valor de hangindent
para o texto subsequente, que pode ter vários parágrafos.
Eu também defino um \speci
comando. Existem apenas duas restrições: novos parágrafos, se houver, devem ser introduzidos com o comando TeX simples \endgraf
e novas linhas com o \newline
comando, não da maneira usual. Um \postspeciskip
comprimento (padrão 1,5\baselineskip) pode ser usado para definir a distância das especificações ao texto das caixas de diálogo.
Atos e cenas são considerados \chapter
s e \section
s. Eles são convenientemente formatados com a ajuda do titlesec
pacote. Alguma parte da codificação seria mais simples se o requisito para especificações fosse em letras minúsculas em vez de maiúsculas.
Se quiser que os parágrafos não sejam cortados nas quebras de página, você pode adicionar esta linha ao preâmbulo:
\interlinepenalty=10000 \parskip0pt plus \baselineskip
Pode-se incluir arquivos e atalhos para os diferentes caracteres que podem ser definidos nos arquivos incluídos.
Aqui está um exemplo (com o início de La Locandiera de Goldoni).
Arquivo principal:
\documentclass[a4paper,11pt]{report}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[italian]{babel}
\usepackage[noheadfoot, margin=2cm, showframe, nomarginpar]{geometry}
\usepackage{textcase}
\usepackage[explicit]{titlesec}
\newlength{\postspeciskip}
\postspeciskip = 1.5\baselineskip
\newcommand\character[1]{\par\everypar{\hangindent=0.3\linewidth\hangafter=1}\parskip=0.667\baselineskip plus
2pt\large\makebox[0.3\linewidth][r]{\MakeTextUppercase{#1}:\hskip0.1\linewidth }}
\newcommand\speci[1]{\everypar{\hangindent=0.42\linewidth\hangafter=0}\parskip=0.667\baselineskip plus
2pt\large\raggedright\textit{#1}\vskip\postspeciskip}%
\titleformat{\chapter}[block]{\centering\bfseries\LARGE}{\MakeTextUppercase\chaptername~\thechapter}{1em}{#1}
\titlespacing*{\chapter}{0pt}{2\baselineskip}{3\baselineskip}
\renewcommand\thechapter{\Roman{chapter}}
\newcommand\act[1][]{\chapter{#1}}
\setlength\fboxsep{0pt}
\titleformat{\section}[hang]{\Large}{\makebox[0.29\linewidth][l]{\MakeTextUppercase{\chaptername~\thechapter}} \makebox[0.1\linewidth][l]{\MakeUppercase{\sectionname~\thesection}\qquad}} {1em}{#1}
\titlespacing*{\section}{0pt}{1\baselineskip}{1\baselineskip}
\renewcommand\thesection{\arabic{section}}
\newcommand\scene[1][]{\section{#1}}
\AtBeginDocument{\def\chaptername{atto}\def\sectionname{scena}}
\setlength\parindent {0pt}%
\interlinepenalty = 1000\parskip0pt plus \baselineskip
\begin{document}
\sffamily
\include{1stact}
\end{document}
Arquivo incluído:(1stact.tex)%%%%%%%%%%%%%%%%%%%%%%%%%
\def\Marchese{\character{Marchese}}
\def\Conte{\character{Conte}}
\def\Fabrizio{\character{Fabrizio}}
%%%%%%%%%%%%%%%%%%%%%%%%% \act
\scene
\speci{Sala di locanda.
\endgraf
Il Marchese di Forlipopoli ed il Conte d’Albafiorita}
\Marchese Fra voi e me vi è qualche differenza.
\Conte Sulla locanda tanto vale il vostro denaro, quanto vale il mio.
\Marchese Ma se la locandiera usa a me delle distinzioni, mi si convengono più che a voi.
\Conte Per qual ragione?
\Marchese Io sono il Marchese di Forlipopoli.
\Conte Ed io sono il Conte d’Albafiorita.
\Marchese Sì, Conte! Contea comprata.
\Conte Io ho comprata la contea, quando voi avete venduto il marchesato.
\Marchese Oh basta: son chi sono, e mi si deve portar rispetto.
\Conte Chi ve lo perde il rispetto? Voi siete quello, che con troppa libertà parlando...
\Marchese Io sono in questa locanda, perché amo la locandiera. Tutti lo sanno, e tutti devono rispettare una giovane che piace a me.
\Conte Oh, questa è bella! Voi mi vorreste impedire ch’io amassi Mirandolina? Perché credete ch’io sia in Firenze? Perché credete ch’io sia in questa locanda?
\Marchese Oh bene. Voi non farete niente.
\Conte Io no, e voi sì?
\Marchese Io sì, e voi no. Io son chi sono. Mirandolina ha bisogno della mia protezione.
\Conte Mirandolina ha bisogno di denari, e non di protezione.
\Marchese Denari? ... non ne mancano.
\Conte Può essere che lo voglia sposare. Non sarebbe cosa mal fatta. Sono sei mesi che è morto il di lei padre. Sola una giovane alla testa di una locanda si troverà imbrogliata. Per me, se si marita, le ho promesso trecento scudi.
\dotfill
\scene
\speci{Fabrizio e detti.}
\Fabrizio Mi comandi, signore. (Al Marchese.)
\Marchese Signore? Chi ti ha insegnato la creanza?
\Fabrizio La perdoni.
\Conte Ditemi: come sta la padroncina? (A Fabrizio.)
\Fabrizio Sta bene, illustrissimo.
\dotfill