自動換行問題

自動換行問題

我有一段文字看起來像

 {attribute_1=1, ARRAY=[ { "x" : 180 , "y" : 175 , "z" : 176} , { "x" : 179 , "y" : 176 , "z" : 177} , { "x" : 178 , "y" : 177 , "z" : 178} , { "x" : 177 , "y" : 177 , "z" : 179} , { "x" : 176 , "y" : 176 , "z" : 180} , { "x" : 175 , "y" : 175 , "z" : 179} , { "x" : 174 , "y" : 174 , "z" : 180} , { "x" : 173 , "y" : 173 , "z" : 181} , { "x" : 174 , "y" : 172 , "z" : 182} , { "x" : 174 , "y" : 171 , "z" : 183} , { "x" : 173 , "y" : 170 , "z" : 183} , { "x" : 172 , "y" : 171 , "z" : 184} , { "x" : 171 , "y" : 171 , "z" : 183} , { "x" : 170 , "y" : 170 , "z" : 182} , { "x" : 169 , "y" : 169 , "z" : 181} , { "x" : 168 , "y" : 168 , "z" : 180} , { "x" : 167 , "y" : 167 , "z" : 179} , { "x" : 166 , "y" : 166 , "z" : 178} , { "x" : 165 , "y" : 165 , "z" : 177} , { "x" : 164 , "y" : 164 , "z" : 176} , { "x" : 163 , "y" : 163 , "z" : 175} , { "x" : 162 , "y" : 162 , "z" : 174} , { "x" : 161 , "y" : 161 , "z" : 173} , { "x" : 160 , "y" : 160 , "z" : 172} , { "x" : 159 , "y" : 159 , "z" : 171} , { "x" : 158 , "y" : 158 , "z" : 170} , { "x" : 157 , "y" : 157 , "z" : 169} , { "x" : 157 , "y" : 158 , "z" : 170}]}

它是自動生成的數據,我需要將其插入到我的 tex 文件中。我已經嘗試過\seqsplit{verbatim},但在編譯的文檔中仍然沒有自動換行。我的長字串超出了頁面邊框,我看不到部分資料。

{verbatim}不影響它,\seqsplit{line}遵循編譯錯誤,因為我的行包含"{"and "}"

如何在不更改生成資料的格式的情況下解決此問題?

答案1

一個技巧是用一個沒有出現在字串中的字元來分隔字串,這裡我選擇了|

\documentclass{article}
\usepackage{lipsum} % for context

\makeatletter
\newcommand{\galumov}[1]{%
  \begin{quote}\raggedright\footnotesize
  \catcode`#1=2
  \catcode`\{=12
  \catcode`\}=12
  \catcode`\_=12
  \ttfamily
  \expandafter\@galumov\expandafter{\iffalse}\fi
}
\def\@galumov#1{\expandafter#1\end{quote}}
\makeatother

\begin{document}

\lipsum[3]
\galumov|{attribute_1=1, ARRAY=[
 { "x" : 180 , "y" : 175 , "z" : 176} ,
 { "x" : 179 , "y" : 176 , "z" : 177} ,
 { "x" : 178 , "y" : 177 , "z" : 178} ,
 { "x" : 177 , "y" : 177 , "z" : 179} ,
 { "x" : 176 , "y" : 176 , "z" : 180} ,
 { "x" : 175 , "y" : 175 , "z" : 179} ,
 { "x" : 174 , "y" : 174 , "z" : 180} ,
 { "x" : 173 , "y" : 173 , "z" : 181} ,
 { "x" : 174 , "y" : 172 , "z" : 182} ,
 { "x" : 174 , "y" : 171 , "z" : 183} ,
 { "x" : 173 , "y" : 170 , "z" : 183} ,
 { "x" : 172 , "y" : 171 , "z" : 184} ,
 { "x" : 171 , "y" : 171 , "z" : 183} ,
 { "x" : 170 , "y" : 170 , "z" : 182} ,
 { "x" : 169 , "y" : 169 , "z" : 181} ,
 { "x" : 168 , "y" : 168 , "z" : 180} ,
 { "x" : 167 , "y" : 167 , "z" : 179} ,
 { "x" : 166 , "y" : 166 , "z" : 178} ,
 { "x" : 165 , "y" : 165 , "z" : 177} ,
 { "x" : 164 , "y" : 164 , "z" : 176} ,
 { "x" : 163 , "y" : 163 , "z" : 175} ,
 { "x" : 162 , "y" : 162 , "z" : 174} ,
 { "x" : 161 , "y" : 161 , "z" : 173} ,
 { "x" : 160 , "y" : 160 , "z" : 172} ,
 { "x" : 159 , "y" : 159 , "z" : 171} ,
 { "x" : 158 , "y" : 158 , "z" : 170} ,
 { "x" : 157 , "y" : 157 , "z" : 169} ,
 { "x" : 157 , "y" : 158 , "z" : 170}]}|
\lipsum[3]

\end{document}

該字串已重新格式化以提高可讀性,但未以任何其他方式進行更改。為了獲得更好的格式化效果,還需要其他技巧。

在此輸入影像描述

相關內容