PDFのサムネイルが作られない理由を、WordPressに表示するプラグインを作りました|Rapls PDF Image Creator

PDFの書類に小さな虫めがねを当てて、サムネイルが作れるかを確かめているイメージ図 ITライフハック
この記事は約5分で読めます。
当ページはプロモーションが含まれています

この記事で紹介している「Rapls PDF Image Creator」は、筆者が作って公開している WordPress のプラグインです。この記事は、そのプラグインの宣伝を含みます。

WordPress に PDF をアップロードすると、表紙のサムネイルが作られます。
作られないことがあります。そして、なぜ作られないのかが、どこにも書いてありません。
サーバーに何かが足りないのか。設定の問題なのか。PDFが悪いのか。
分からないまま、諦めることになります。
そこを埋めるプラグインを作りました。Rapls PDF Image Creator といいます。

バージョン番号を見て推測するやり方と、実際にPDFを読ませて確かめるやり方を、左右に並べて比べた図

スポンサーリンク

やっていることは、単純です

測って、答える。 それだけです。
「このサーバーでPDFが読めるか」を、実際に読ませて確かめます。
「CMYKの色が正しく出るか」を、実際にテストページを描いて確かめます。
バージョン番号を見て推測する、ということをしていません。

なぜそうしたか

推測が外れたことがあるからです。
以前は、ImageMagick に「PDFに対応していますか」と尋ねていました。
これが当てになりませんでした。「対応している」と答えるのに、実際に読むと拒否される。
答えていたのは「部品が組み込まれているか」で、使ってよいかどうかは別でした。

そして、使えない環境でこそ、この差が出ます。
いちばん知りたい場面で、間違った答えを返していました。

スポンサーリンク

止まった場所を、教えます

サムネイルが作られなかったとき、理由を4つに分けて表示します。

サーバーにPDFの対応がない      → ホスティング事業者に依頼する
ページが大きすぎて開けない      → PDF側を軽くする
アップロード先に書き込めない    → 権限を直す
ファイルが見つからない         → 別の問題

どれも「作れませんでした」で片づけると、同じに見えます。
でも、やることは4つとも違います。

ホスティング事業者に何を頼めばいいかも、出ます

「動きません」と伝えるより、話が早くなります。
設定ファイルの場所まで表示するので、そのまま問い合わせに貼れます。

白紙を、保存しません

ここは、他と違うところだと思います。
古い Ghostscript は、描けなかったページをエラーにせず、真っ白なページとして返します。
受け取った側から見れば、画像が返ってきたことになります。
だから、そのまま保存されます。ファイルはできる。中身は白い。

返ってきたものを、見ています

作った画像が全面ひとつの色かどうかを確かめて、白紙なら保存しません。
代わりに、WordPress の標準のアイコンが出ます。
白い四角より、そちらのほうが分かりやすいからです。
そして、Status タブに理由が出ます。

描けなかったページが白紙で返ってきたとき、保存せずに描き直し、それでも描けなければ標準のアイコンを出す流れの図

もう一度、描き直します

白紙だった場合、やり方を変えて描き直します。
透明の処理を使わない指定を付けて、再試行する。
手元で測ったところ、11,018バイトの白紙が、624,109バイトの絵になりました。
ただし、再試行のときだけです。
最初から付けると、透明を正しく使っているPDFで見た目が変わってしまうので。

色の話

印刷用のPDFで、色がおかしくなることがあります。
緑や青が、蛍光色のように浮く。簡易な計算式で色を変換していると、こうなります。

ICCプロファイルを使っています

計算式ではなく、色の対応表を使って変換します。
手元で測ったところ、簡易変換との差は ΔE 32.1 でした。
見て分かるほどの違いです。

同じ印刷用の色を、簡易な計算式で変換すると蛍光色のように浮き、色の対応表で変換すると落ち着いた色になることを並べた図

サーバーに無ければ、探します

色の対応表が入っていないサーバーもあります。
その場合、Ghostscript が持っているものを探します。
PDFを描けるサーバーには Ghostscript が入っているので、たいてい見つかります。
出力側の対応表は、プラグインに同梱しています。 3KBのものです。

外部のプログラムを起動しません

これは、環境を選ばないための判断です。
共用サーバーでは、外部のコマンドを実行できないことがあります。
セキュリティ上の理由で、止められている。
そういう環境でも動くように、コマンドを一切呼ばない作りにしました。

サイトヘルスにも出ます

WordPress の「ツール」→「サイトヘルス」に、状態が表示されます。
困ったとき、最初に見る場所だからです。
そして、サポートに貼るときも、ここからコピーされます。

WordPress のサイトヘルスに、Rapls PDF Image Creator の状態が表示されているところ

使ってみる

無料で使えます。入れて、PDFを1つ上げてみるのがいちばん早いと思います。

Rapls PDF Image Creator – WordPress.org

すでに上げたPDFにも使えます

まとめて処理する機能があります。
過去のPDFに、あとからサムネイルを付けられます。

動作の条件

WordPress   5.0 以上
PHP         7.4 以上
サーバー     ImageMagick(Imagick拡張)が使えること

最後の1つが分からない場合も、入れれば分かります。
Status タブに、使えるかどうかが出ます。

Rapls PDF Image Creator の Status タブ。PDFの読み込みとCMYKの変換を、実際に試した結果が並んでいる

約束できないこと

正直に書いておきます。

どんなサーバーでも動く、とは言えません

ImageMagick が使えない環境では、このプラグインでもサムネイルは作れません。
できるのは、作れない理由を伝えることと、頼む先を示すことです。

Ghostscript の問題を直したわけではありません

回避しているだけです。
根本的には、ホスティング事業者に Ghostscript の更新を依頼するのが確実です。
新しい版が入れば、そもそも白紙になりません。

どんなPDFでも描ける、とも言えません

再試行しても描けないPDFなら、絵は出ません。
そのときも、白紙を保存せずに理由を出します。

もっと詳しく知りたい場合

設定の細かいところ、色の問題への対処、上位版でできること。
作者のサイトにまとめています。

Rapls PDF Image Creator の設定と、うまくいかないときの対処

まとめ

  • PDFのサムネイルが作られないとき、理由がどこにも書かれていない
  • このプラグインは、測って答える。 推測しない
  • PDFが読めるかは実際に読ませて確かめる
  • CMYKが出るかはテストページを描いて確かめる
  • 失敗の理由を4つに分けて表示。 頼む先が違うため
  • 白紙を保存しない。 全面ひとつの色なら拒否する
  • 白紙だったときは、やり方を変えて描き直す
  • 色はICCプロファイルで変換。 簡易計算との差は ΔE 32.1
  • 外部のプログラムを起動しない。 制限のある共用サーバーでも動く
  • サイトヘルスにも状態が出る
  • どんなサーバーでも動くとは言えない。 理由を伝えるまで

いちばん困るのは、理由が分からないことでした。
作れないなら作れないで、なぜなのか、誰に何を頼めばいいのかが分かれば、次に進めます。
無料で試せるので、入れて Status タブを見てみてください。
それだけでも、自分のサーバーの状態が分かります。

※本記事は2026年9月時点の内容です。仕様は更新されることがあります。

タイトルとURLをコピーしました