quebra automática de linha de código tikzexample no beamer

quebra automática de linha de código tikzexample no beamer

No beamer, se demonstrarmos algum código com o pacote tkzexample (consulteeste exemplo), às vezes o código fica fora da caixa do quadro.

  1. É possível fazer a quebra automática se a linha de código for muito longa?
  2. A distância entre o 2º e o 3º diagrama parece não ser igual.

código de exemplo:

\documentclass[t]{beamer}
\usepackage{tikz}
\usepackage{tkzexample}

\colorlet{graphicbackground}{red!10!white}%
\colorlet{codebackground}{blue!10!white}% 
\colorlet{codeonlybackground}{blue!10!white} 

\begin{document}
\begin{frame}[fragile]{tikz example}   
\begin{tkzexample}[width=2cm]
\begin{tikzpicture}
     \draw (0,0)  node[circle,
                       shade,
                       ball color=orange,
                       minimum size=2cm]{};
\end{tikzpicture}
\end{tkzexample} 

\begin{tkzltxexample}[line frame width=0pt]
    \begin{tkzexample}[width=1cm]
        \tikz[baseline] 
        \node [circle,line width=1ex,draw=blue,fill=blue]
        {\textcolor{white}{\Large{TikZ}}};
    \end{tkzexample}
\end{tkzltxexample}

\begin{tkzexample}[width=1.7cm]
    \tikz[baseline] 
    \node [circle,line width=1ex,draw=blue,fill=blue]
    {\textcolor{white}{\Large{TikZ}}};
\end{tkzexample}
\end{frame}

\end{document}

Saída:

insira a descrição da imagem aqui

Responder1

Se você não se importa em mudar paratcolorboxpacote em vez de tkzexamplevocê pode fazer algo como:

insira a descrição da imagem aqui

tcolorboxusa listings(ou minted) para composição de código e todas as suas opções (estilo de fonte, numeração de linhas, quebra de linhas, ...) podem ser aplicadas às partes da listagem. Já olhei tkzexamplee acho que não usa.

No momento não sei como adicionar uma cor de fundo às TiKZfiguras. Saberemos, mude text outside listingcom text side listing, mas neste caso não há separação entre código e caixas de resultados.

\documentclass[t]{beamer}
\usepackage{tikz}
\usepackage[most]{tcolorbox}

\newtcblisting{tkzexample}[1][]{text outside listing, fonttitle=\bfseries, bicolor, colback=blue!10!white, colbacklower=red!10!white, colframe=black, sharp corners, frame hidden, size=tight, #1}

\newtcblisting{tkzltxexample}[1][]{listing only, fonttitle=\bfseries, bicolor, colback=blue!10!white,colbacklower=red!10!white, colframe=black, sharp corners, frame hidden, size=tight, #1}

\begin{document}
\begin{frame}[fragile]{tikz example}   
\begin{tkzexample}[lefthand width=2cm]
\begin{tikzpicture}
\draw (0,0) node[circle,
                 shade,
                 ball color=orange,
                 minimum size=2cm]{};
\end{tikzpicture}
\end{tkzexample} 

\begin{tkzltxexample}[listing only]
\begin{tkzexample}[width=1cm]
    \tikz[baseline] 
        \node [circle, line width=1ex, draw=blue, fill=blue]
        {\textcolor{white}{\Large{TikZ}}};
\end{tkzexample}
\end{tkzltxexample}
%

\begin{tkzexample}[lefthand width=1.5cm]
\tikz[baseline] 
    \node [circle, line width=1ex, draw=blue, fill=blue]
    {\textcolor{white}{\Large{TikZ}}};
\end{tkzexample}
\end{frame}

\end{document}

informação relacionada