Como iniciar uma nova linha em \boxed{}?

Como iniciar uma nova linha em \boxed{}?

Eu tenho:

\documentclass[12pt,a4paper]{article}
\newcounter{conto}
\setcounter{conto}{\time}
\usepackage{lmodern}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{dsfont}
\usepackage{mathrsfs}
\usepackage{amssymb,amsmath}
\usepackage{cancel}
\begin{document}
\section{Prove}
\(\boxed{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20"a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z"}\)
\end{document}

mas a saída é a seguinte:

insira a descrição da imagem aqui

Como iniciar uma nova linha \boxed{}automaticamente?

Responder1

Boa noite, o \boxedcomando está definido no amsmath.{sty|dtx}arquivo (que faz parte do amsmathpacote), é:

\newcommand{\boxed}[1]{\fbox{\m@th$\displaystyle#1$}}

Podemos redefini-lo e usar a matemática embutida. Com a ajuda do \fboxcomando podemos desenhar um retângulo, a largura adequada é \textwidth-2\fboxrule-2\fboxsep. O cerne do nosso trabalho é permitir a quebra de linhas nos devidos lugares (vírgulas, aspas) sem perdê-las, vamos usar \allowbreakpara esse fim.

O truque rápido é tornar esses personagens ativos ( \catcodeto 13) e defini-los conforme nosso desejo. O único problema em nosso exemplo é não entrar em um loop infinito, portanto armazenamos os caracteres originais antes da ativação em comandos separados.

Geralmente fazemos tudo isso em grupo, por exemplo, usando { }, estou pulando esta etapa.

E pronto! Anexo um pequeno exemplo. Aproveitar! :-)

\documentclass[12pt,a4paper]{article}
\usepackage{amsmath}
\begin{document}
% \the\fboxrule % If we wish to see the first used dimension...
% \the\fboxsep  % If we wish to check the second used dimension...
% E.g., we wish to have a nice cozy rectangle across the whole mirror...
\parindent=0pt
% One paragraph typeset for checking purposes only...
text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text\par
% Let's compute the real width of the mirror...
\newdimen\temp                % A declaration of a new dimension...
\temp=\textwidth              % The width of the text minus
\advance\temp by -2\fboxrule  %    border from both sides minus
\advance\temp by -2\fboxsep   %    inner separator from both sides.
% Storage of the \boxed command created by the AMS... (amsmath.dtx).
\let\oldboxed=\boxed
% Redefinition of \boxed, let's use breakable inline mathematics...
\def\boxed#1{\fbox{\parbox{\temp}{$#1$}}}
% We'll make comma as an active character according to our wishes...
\def\mycomma{,}
\catcode`\,=13
\def,{\mycomma\allowbreak}
% The same strategy will be applied to one more used character...
\def\mymark{"}
\catcode`\"=13
\def"{\mymark\allowbreak}
% The core of our efforts...
\boxed{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20"a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z"}\par
% And we are back in reality from our dreams... ;-)
\let\boxed=\oldboxed
\boxed{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20"a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z"}
\end{document}

insira a descrição da imagem aqui

Eu apenas adicionei \pagestyle{empty}o preâmbulo do documento para obter uma versão recortada adequada. Se preferirmos uma versão não matemática, altere $#1$para apenas #1na redefinição do \boxedcomando.

Responder2

Não tenho certeza se você está usando mal o modo matemático; dentro \boxedvocê pode usar qualquer um dos amsmathambientes “internos”, neste caso usei aligned:

\documentclass[12pt,a4paper]{article}
\usepackage{amsmath}
\begin{document}
\[
\boxed{
  \!\begin{aligned}
  &1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,\\
  &a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z
  \end{aligned}
}
\]
\end{document}

insira a descrição da imagem aqui

Por favor, seja mais preciso se o modo matemático não era o que você tinha em mente.

Responder3

Também ajuda adicionar um espaço em branco.

\documentclass[12pt,a4paper]{article}
\newcounter{conto}
\setcounter{conto}{\time}
%\usepackage{lmodern}
%\usepackage[T1]{fontenc}
%\usepackage[utf8]{inputenc}
%\usepackage{dsfont}
%\usepackage{mathrsfs}
\usepackage{amssymb,amsmath}
%\usepackage{cancel}
\begin{document}
\section{Prove}
\(
\fbox{\parbox{4in}{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20 "a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z"}}
\)
\end{document}

encaixotado

Devo mencionar que dentro do \parbox você não está mais no modo matemático.

Responder4

Você pode usar uma pilha. Observe que o caractere de fim de linha (EOL) padrão é um espaço em stackengine's \Longstack, o que funciona perfeitamente para o seu exemplo. Mas muitas vezes, se sua pilha contém espaços naturais, você precisa alterar o EOL da pilha, o que faço para a segunda pilha, para \\, usando \setstackEOL{}. Além disso, o uso de \stackMathor \stackTextfará com que os argumentos de empilhamento sejam interpretados como matemática ou texto, respectivamente, como também mostro.

\documentclass[12pt,a4paper]{article}
\newcounter{conto}
\setcounter{conto}{\time}
\usepackage{lmodern}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{dsfont}
\usepackage{mathrsfs}
\usepackage{amssymb,amsmath}
\usepackage{cancel}
\usepackage{stackengine}

\begin{document}
\section{Prove}
\stackMath
\(\boxed{\Longstack{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20
``a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z''}}\)
\section{Prove Again}
\setstackEOL{\\}
\stackText
\(\boxed{\Longstack{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20\\
``a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z''}}\)
\end{document}

insira a descrição da imagem aqui

informação relacionada