Hero img
PDFと、illustratorを画像化

illustratorの中身を確認するプレビュー画像を自動作成

PDFファイルや、Aiファイルはプレビュー画像が無いので確認しづらい.どうしたらいいかを検討した結果,画像自動生成して解決しました。


目次

  • Ai,PDFの画像化するきっかけ
  • 成果物
  • かなり便利になった。
  • 目標
  • 動作環境
  • Ghostscript
  • Ghostscriptのインストール
  • 環境変数の追加
  • 動作確認
  • 使ってみる
  • 半自動化
  • 文字が読めない
  • PDF化もできる
  • PDFのDPIを下げる
  • 不具合
  • まとめ

Ai,PDFの画像化するきっかけ

Aiの中身なんだっけ?ってなった場合一度ファイルを開かないといけないが、Aiは開くだけで時間がかかるし、Sage Thumbsというサムネイル表示ソフトがあったけど表示が遅い。ってかPC負荷が結構やばい。Sage Thumbsの代替として考えた結果、画像作ればいいのでは?
しかし、大量にあるaiファイルを画像にしたいのだがどうすればいいのだろう。一つ一つ画像化処理していてもいいのだが時間がかかってしまう...
ということで自動化しました。

成果物

aiファイルをD&Dで画像ファイルを生成します。 ghostscript-demo

かなり便利になった。

PDF,Aiファイルって開くのに時間がかかるんです。中身をただ見たいだけなのに...
ウェブ上で画像に変換してくれるウェブサービスもあるけど、公開したくない情報だったり、時間がかかるし、と悩んでいました。
それで、今回スクリプトを作ったがかなりの頻度で使うようになった。

目標

  • aiファイルをドラックアンドドロップで簡単に画像に変換する.
  • 複数ファイルを一括して変換する。
  • 複数ページにも対応する。
convertjpg.webp

動作環境

windows 10 64bit

Ghostscript

色々と検索した結果ai単体だけでは簡単に画像化することができなさそうなので、Ghostscriptというソフトを使用することにした。
Ghostscript公式ページを確認するとPDFファイルに対して何かの操作ができるみたい。具体的にはサイズ変換、画像化、グレースケール、ラスタライズ等。簡単な作業ができる模様。API関係を見ればなんとなくわかるはず。この情報以上深くは追求しません。

Ghostscriptのインストール

Ghostscriptからダウンロードを行います Ghostscript-donwload

適切なOSを選択してください。私はwindows64bitになります。 後はインストールを進めていってください。

Ghostscript-D-1 Ghostscript-D-2

環境変数の追加

環境変数設定不要っぽい ghostscriptをどこからでも起動できるように環境変数を追加します。

  1. 1.システムの詳細設定を開きます。ショートカットキー「Windowsキー」+「Pauseキー」 もしくは「windows」を右クリック -> システム詳細設定
system systemdetail
  1. 2.環境変数->pathを選択し、編集をクリックします。
prepath addpath
  1. 3.新規追加していきます。 バージョンによって多少違うので変更してください「C:\Program Files\gs\gs9.56.1\bin」 たぶんこの「gs9.56.1」部分だけ変更すれば大丈夫
addnewpath ghostscriptpath

動作確認

コマンドプロンプトで「gswin64c.exe」実行してみます。
画像のようにGPL Ghostscript ....と表示されていると正常に環境変数を追加できています。 Ghostscript-run

使ってみる

コマンドプロンプトで実行してみます。 ファイル名はフルパスで入力してください。

gswin64c.exe -dSAFER -dBATCH -dNOPAUSE -sDEVICE=jpeg  -sOutputFile="D:\outfile.jpg" "D:\test.ai"

コマンドが長いと思いますが頭の「-dSAFER -dBATCH -dNOPAUSE」はとりあえず入れとけばいいんだな程度でOKです。
重要なのは後半の-sDEVICE=jpeg -sOutputFile="D:\outfile.jpg" "D:\test.ai"です。

  • -sDEVICE=jpeg ファイルの変換拡張子
  • -sOutputFile="filepath" ファイルの変換先、ファイル名
  • 最後に 今回使用するaiファイル

これを実行すると正常にjpegファイルが生成されます。

半自動化

Ghostscriptが動作したということで半自動化させます。 プログラムをC#で作ってもいいのだが楽にbatファイルを作成していきます。
以下サンプルプログラムの使用および使用効果につきまして、一切責任を負いません。

sample.bat
:REPEAT
gswin64c.exe -dSAFER -dBATCH -dNOPAUSE -sDEVICE=jpeg  -sOutputFile="%~dpn1-page%%1d.jpg" "%1"
if "%~2"=="" GOTO EXIT
shift
GOTO REPEAT
:EXIT
pause

文字が読めない

そのままでは解像度が足りないので文字が読めない為解像度を上げる設定を追加する
ここでは「-r150」を追加しpngに変更した。これは150dpiらしい。たぶん

sample.bat
:REPEAT
gswin64c.exe -dSAFER -dBATCH -dNOPAUSE -sDEVICE=png16m -r150 -sOutputFile="%~dpn1-page%%1d.png" "%1"
if "%~2"=="" GOTO EXIT
shift
GOTO REPEAT
:EXIT
pause

PDF化もできる

aiファイルを開くことができない人も多いので、PDF化も簡単にできる。これもよく使っています。

sample.bat
gswin64c.exe -dSAFER -dBATCH -dNOPAUSE -sDEVICE=pdfwrite  -sOutputFile="%~dpn1-page%%1d.pdf" "%1"

PDFのDPIを下げる

おまけ

スキャナーでスキャンしたPDFサイズがでかすぎる問題を解決しました。PDFをメール等で送るときサイズがでかすぎて送れない時に使える。
サンプルではebookを使用しています。

解像度低い順で

  • /screen
  • /ebook
  • /printer
  • /prepress
pdfmini.bat
:REPEAT
gswin64c.exe -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/ebook -dNOPAUSE -dQUIET -dBATCH -o "%~dpn1mini.pdf" "%1"
if "%~2"=="" GOTO EXIT
shift
GOTO REPEAT
:EXIT
pause

不具合

このbatファイルで変換する時、変換できない時がある、その時はファイル名が読み取れないような感じなので、PDF,Aiファイルの名前を変えます。
心配であれば、アルファベットのみのファイル名にすれば、とりあえず問題は起きていない。

まとめ

aiファイルは開くまで内容分からなかったが、これを使用することによって簡単に画像が生成でき、内容を確認することができるようになりました。導入に難しいところはないはず。サンプルも載せているので動作も問題ないはず。 プレビューができずに困っている人は多いと思うので是非とも有効活用して頂ければ幸いです。PDFを画像に変換する時にとても重宝しています。

関連記事

コメント

コメントを書く

質問や、間違いがありましたら、お気軽にどうぞ

※お名前とコメントの内容を入力してください。
※全てこのブログ上に公表されます。
※許可なく管理者によって修正・削除する場合がございます。 詳しくはプライバシーポリシーを参照ください