建立由文字組成的圖形

建立由文字組成的圖形

我正在寫一份與文字處理相關的技術報告,想用一張圖來說明如下圖1所示的內容。

我想我會喜歡我的身材

所以基本上,它只是一個有文字的圖形。由於我不想在整個文件中保留“乳膠外觀”,因此我寧願不像本範例中所做的那樣(例如使用記事本)。

我很抱歉沒有提供一個最小的工作範例,但我不知道除了「帶有文字的乳膠圖」之外要搜尋什麼。這只會產生有關如何創建圖形標題的描述。

所以基本上我要求的是如何做到這一點或搜尋什麼的指導。

另外,如果有人知道這是否是在學術報告方面說明我想要做的事情的正確方式(就像您在範例圖中看到的那樣),我將不勝感激您的意見。我認為這比僅在原始文字中寫出字串和整數列表(如本範例所示)更好。

答案1

以下解決方案結合了幾個“技巧”:

首先,所有程式碼片段都在一個figure環境內。這使您能夠使用標題。後面會說一些:圖 1. 標題內容數位因為標題是在...figure環境中定義的!

然後,我們使用subfigure環境將多個元素並排放置。使用該套件subcaption使您能夠定義\caption每個環境內部subfigure,從而添加...子標題。

最後,使用該套件在環境listings中顯示程式碼。lstlisting請注意:因為程式碼是逐字列印的,所以您應該在lstlisting環境內「重設」縮排。將程式碼片段置中並不是一件小事。為此,我們繞道而行,將其包含lstlisting在 one-cell 內部tabular,如中所述如何居中清單?


在此輸入影像描述

\documentclass{article}
    \usepackage{subcaption}
    \usepackage{listings}
        \lstset{basicstyle=\ttfamily}
    \usepackage{lipsum}

\begin{document}
    \lipsum[1]
    \begin{figure}[htb]
        \centering
        \begin{subfigure}[t]{.5\linewidth}
            \centering
            \begin{tabular}{c}
% Don't indent the lstlisting environment!          
\begin{lstlisting}
[
  'foo',
  'bar',
  'baz',
]
\end{lstlisting}
             \end{tabular}
             \caption{Simply words}
        \end{subfigure}%
        \begin{subfigure}[t]{.5\linewidth}
            \centering
            \begin{tabular}{c}
\begin{lstlisting}
[
  3,
  2,
  1,
]
\end{lstlisting}
            \end{tabular}
            \caption{And numbers here}
        \end{subfigure}
        \caption{Very code. Much geek. Wow!}
    \end{figure}
    \lipsum[2]
\end{document}

相關內容