猫山さんの日記

写真付きで日記や趣味を書くならgooブログ

Fessを試してみよう(7)少し前進したけれど・・

2022-06-04 | 日記

Fessのサムネイル、まだ諦められない。
fess-thumbnail.logを見たところ、/tmpに大量にpngを残しているのは、
PDFのサムネイルを作る処理のようだ。
でも、ログには十分なメッセージが出ていないので、
手動でサムネイル作成を実行してみよう。
何かヒントが見つかるかもしれない。
PDFの場合は次の順序だ
(1)pdftoppmで/tmp/thumbnail.png.$$-1.pngを作成
(2)convertで/tmp/thumbnail.png.$$-1.pngを元にサムネイルを作成
(3)/tmp/thumbnail.png.$$-1.pngを削除

# pdftoppm -png -l 1 "test1.pdf" ./test1
Syntax Error (5236458): Missing 'endstream' or incorrect stream length
のようなエラーが20行くらい出た。
お行儀の悪いPDF作成ソフトで作られたPDFなのかな?
でも、pngファイル自体は作られている。
エラーを無視して続行できればいいんだけど。
pdftoppmの-qオプションは、エラーを出力しないらしい。
手動で試してみよう。
# pdftoppm -q -png -l 1 "test1.pdf" ./test1
エラーは出なくなった。
じゃ、サムネイルを作るスクリプトをちょっと書き換えよう。
/usr/share/fess/bin/generate-thumbnailの該当箇所に-qを書き足した。
pdftoppm -q -png -l 1 "${target_file}" ${tmp_png_prefix}
これでどうだ!

ファイルが2400個くらい格納されているフォルダを対象に
Thumbnail Generatorを実行してみると、順調に処理が進んでいく。
でも、終わってみると警告が47回出ている。
そして、/tmpにはpngファイルが28個残されていた。

警告が出たファイルをひとつずつ調べた結果は次のとおりだった。
・破損したイメージファイル1個
・パスワード付きExcelファイル5個
・パスワード付きPDFファイル13個
・普通のPDFファイル28個

壊れたファイルやパスワード付きファイルはいいとして、
普通のPDFファイルはなぜエラーになったんだろう。
手動で実行するとどうなるかな。
・・手動だと-qオプションを付けなくても実行できた。
システムに負荷がかかるとエラーになるのかな?
また行き詰ってしまった・・・。



最新の画像もっと見る

コメントを投稿