画像のテーブルを作成する

画像のテーブルを作成する

解決に助けが必要な、解決不可能な問題に遭遇したようです。純粋な LaTeX だけでは不可能であることは 100% 承知していますが、そうであればいいのですが。それでは、当面の質問に移りましょう。

私は画像の表を作成したいと考えています。この場合、11,251 個の漢字の eps です。最初から LaTex でファイルをループする方法を調べました。11,251 個すべてを手動で入力したくなかったからです。そして、シェル スクリプトの助けがなければ不可能だとわかったので、これをまとめました。

for f in *.eps; do echo "\includegraphics[scale=0.25]{./Reference/kanji/eps/$f}" >> ../eps.list; done

これは最初の試みに過ぎず、驚くほどうまくいきました。現在の唯一の問題は、LaTeX がそのリストをうまく扱えないことです。エラーが発生しNumber too big ...=0.25]{./Reference/kanji/eps/0002e.svg.eps}Dimension too large ...=0.25]{./Reference/kanji/eps/0002e.svg.eps}512 x 512 しかないため、境界ボックスが大きすぎると考えられます。eps については、次のスクリプトを使用して SVG から変換されたことに注意してください。

for f in *.svg; do inkscape -f $f -D -E $f.eps -z; done

実行には約 58 分しかかかりませんでしたので、私の生活はもっと悪くなるかもしれません。私が支援を求めている主な点は、テーブルの生成方法です。横 6 列、縦 N 行でスロットを順番に埋める必要がありますが、その方法については全くわかりません。その点について、ご支援いただければ幸いです。

もう一つの問題点として、CJKパッケージで山ほど問題を抱えているようです。ここや他の場所で数時間調べた後、フォントを完成させ、フォントDBを再構築し、すべてを更新しましたが、それでもUndefined control sequence 縲梧律大量のUndefined control sequence 縲梧律エラーが発生し、メインファイルは次のようになります。

\documentclass[UTF8,14pt]{book}
\usepackage{graphicx}
\usepackage{CJK}
\newcommand{\bookversion}{v0.0 REV 0}
\begin{document}
\begin{CJK*}{UTF8}{min}
\input{Title}
\clearpage
「日本語」
\tableofcontents
\include{Introduction/Part.Introduction}
\include{Learn/Part.Learn}
\include{Reference/Part.Reference}
\clearpage
\end{CJK*}
\end{document}

前にも述べたように、私はさまざまな点で困惑しています。長文になってしまい申し訳ありません。どんなことでも助けていただければ幸いです。

答え1

まあ、どこから始めればいいのか分からないですね。

バウンディングボックスが大きすぎると思うとのことですが、すべて同じだと思いますが、%%BoundingBoxEPS の線は何ですか (すべて同じですか)?

おそらく、長すぎる行を生成しているだけだと思います。11251 の\includegraphics{}長さのコマンドのリストを作成しているように見えますが、間にコマンドはありません。TeX では、組み込まれたグラフィックは基本的に文字のようなもので、次のようになります。

AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA....

非常に長い、改行できない 1 行です。

シェルスクリプトを修正して、

for f in *.eps; do echo "\do\includegraphics[scale=0.25]{./Reference/kanji/eps/$f}" >> ../eps.list; done

これで、\doそれぞれの前に が表示されます。

画像リストを含める前に指定すると\let\do\par、各画像は独自の段落に配置され、TeX メモリの使用量が大幅に軽減されます。これは必要なレイアウトではありませんが、その場合にエラーが変化するかどうかを確認するには良いテストです。

6枚の画像を連続して表示するには、次のように定義します。

\newcount\imgcount

\def\do{%
\advance\imgcount 1 
\ifnum\imgcount=7
\par
\imgcount=0
\else
\space
\fi}

これにより、各画像の間にスペースが置かれ、6 ごとに新しい段落が開始されます (すべて同じサイズであるため垂直方向の配置は自動的に行われ、テーブル構造は必要ありません)。

関連情報