2010年04月30日

gsviewは玉砕

以前のエントリ(ghostscriptのGUIが欲しい)のコメント欄でCametanさんから教えていただいたgsviewを試そうとしてみた。これは、数多くあるPDFビューワの一つではあるけれど、ビットマップへの書き出しができる。ひょっとしたら、私が求めているPDFファイルを画像ファイルに変換する作業で使えるかもしれないわけである。
このgsviewは、オープンソースであり、Win、Mac、Linuxなど各種プラットフォームに対応しているとされている。ただし、Linuxに関してはコンパイル作業が必要になるという。私の場合はそれは困るのだが、幸いなことにFedoraの方でrpmが用意されているのをalienで変換すればUbuntuでも使えるという情報がフォーラムで掲載されているのを、Cametanさんが教えてくれたわけである。
ということで、まずはgsview-4.9-10.1.i386.rpmというファイルをダウンロード。次に、synapticパッケージマネージャからalienをインストール。alienのヘルプを見るとdebファイルを作成する方法が書いてあったので、alien -d ~/gsview-4.9-10.1.i386.rpmを実行。無事にdebファイルが生成されたので、これをダブルクリックしてインストール。メインメニューにgsviewが出現し、「お、意外に簡単じゃないか」と思ったのはここまで。

まず、メインメニューから起動しようとしても動かない。どこがいけないのかわからないので、端末からgsviewと打ち込んで起動しようとしてやると、libgmodule-1.2.so.0がないと言われる。じゃあこれはどこにあるのかと探して、glib-1.2.10-33.fc12.src.rpmとかいうパッケージに含まれているらしい(ちがうかもしれない)と考えて、これを再度alienで変換。けれど、これをインストールしても、今度はlibgtk-1.2.so.0がないと言われてgsviewは起動しない。
この辺で、時間も忍耐力も切れてしまった。たぶん、フォーラムの記述をもっとよく読んでからかかればよかったのだと思う。適当にやってうまくいくはずはない。
ただ、やっているうちに、どうもgsviewは目指すアプリとちょっとちがうのではないかという気がしてきた。使っていないのではっきりは言えないのだけれど、やっぱりメインの機能は名前の示すとおりビューワーではないかという気がする。実際、PDFをビューワからビットマップに書きだすのは、たとえばAdobe Readerの印刷機能を使えば割と簡単にできる(ただし書きだされたファイルはPSファイルで、ここからビットマップを抜き出す作業が必要になる)。なんとなく、大差ないような気もしてきた。
そうこういっているうちに、当面、PDF→pngの変換作業がそれほど必要がないような形勢にもなってきた。まだ不明なところもあるのだけれど、作業の必要がなければツールも不要ということになる。
もちろん、わかりやすいGhostscriptによる変換のフロントエンドがあれば嬉しいことに代わりはないのだけれど、それを求める優先順位が下がったかなあという感じ。とはいっても…
posted by 松本 at 21:36| Comment(15) | Ubuntuでの失敗・トラブル | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
おや、ダメだったんですね。
どんなのが要るんですか?
イマイチ、用途というか目的がピンと来てないんですが。
Posted by かおりん at 2010年04月30日 22:16
↓ここに書いてありますね。
libgmodule-1.2.so.0を見つけたい(意訳):
ubuntuforums.org/showthread.php?t=255772
これは、回答によると、synapticで見つかる
libglib
と全く同じもののようです。ヴァージョンが高くても大丈夫なんじゃないでしょうか。
Posted by cametan at 2010年04月30日 22:18
cametanさん、せっかく教えていただいたのに、活かせずにすみません。このスレッドは私も見ました。類似のスレッドもあるようです。
で、素人判断なので正しいかどうかはわからないのですが、どうもライブラリの置かれている位置がパッケージで想定しているものとちがうような気がします。ライブラリそのものは、どうやらgtkの古いバージョンのもののようですので、パスさえ合っていればコメントいただいたように、改めてインストールしなくても動きそうな気がします。FedoraとUbuntuのディレクトリ構造の違いのせいかもしれません。となると、いったんソースに戻ってその辺を書き換えていかなければいけないとか、そんな作業が必要になるのかなと。まあ、そこまでの大層な作業でもないのかもしれませんが、やっぱり私にはハードルが高かったです。
かおりんさん、ありがとうございます。時間があれば、もうちょっとわかりやすく書きます。
Posted by Matsumoto at 2010年05月01日 15:04
かおりんさん、イメージとしてはこんな感じです。
<a href="http://d-lights.jp/ubuntu/wp-content/image1.jpg" rel="nofollow">http://d-lights.jp/ubuntu/wp-content/image1.jpg</a>
Posted by Matsumoto at 2010年05月01日 15:44
こんな感じでどうですかね。
α版にも満たないものですが。
<a href="ttp://dl.dropbox.com/u/1336728/pygsconv.tar.gz" rel="nofollow">ttp://dl.dropbox.com/u/1336728/pygsconv.tar.gz</a>
※先頭にhを追加してください。
適当なフォルダに展開して、pygsconv.pyを実行してください。
#ダブルクリックで開くと思うんですが。
機能的に問題ないようなら、エラー処理とか、細々した部分を追加します。
Posted by かおりん at 2010年05月01日 22:55
かおりんさん、さっそくにすみません。すっかり甘えてしまいました。
で、やってみたところ、ちょっと都合が悪いことが発生しています。つまり、複数ページのPDF文書を変換した場合(たとえば20ページ)20個の画像ファイルができるのではなく、出力先の画像ファイルが19回上書きされて、最後には最終ページの画像ファイルが1個だけ残ることになってしまうことです。実は、同じ現象は、このスクリプトをThunarのアクションに仕込んだときも発生していました。端末から実行すると変換順にシリアルでファイル名を変えていってくれるんですが。
あとは、ほぼ私の考えていたとおりのツールです。プロにこんなことを言っては失礼なんですが、凄いですね。スクリプトをテキストエディタで開いてみたのですが、見事にちんぷんかんぷんでした。改めて畏れ入りました。
Posted by Matsumoto at 2010年05月02日 00:10
手元で試したところ、正常に動作してますね。
出力ファイル名指定のところに、%dまたは、桁数付きで%02dとか付けて指定して貰えますか?
例)OUTPUT%02d.png
3ページ出力の場合
OUTPUT01.png
OUTPUT02.png
OUTPUT03.png
と出力されることを想定してるんですが。
Posted by かおりん at 2010年05月02日 08:06
かおりんさん、ありがとうございます。なるほど、%dを付けたらうまくいきました。けっこう使えそうです。少なくとも、私の現在の用途にはこれで十分過ぎるほどですね。同じような需要も世の中にはけっこうあるのではないでしょうか。
Posted by Matsumoto at 2010年05月02日 08:41
正常動作が確認できて良かったです。
GUIが解りにくかったようなので、改修しました。
また、ファイル選択時のフォルダ位置も記録、出力時のカレントフォルダ位置も記録するように変更しました。
#DPIと出力タイプも。
URLは同じですので、再度ダウンロードしてお試しください。
あとは、Tunaerとかから、右クリックのメニューでファイル名を渡せるようにする、とかですかね。
Posted by かおりん at 2010年05月02日 08:52
あ〜、あとコメント入れ忘れてましたが、プロとしてのスタンスで作ってませんので、その辺はご勘弁ください。(^^;
趣味の領域ってことで。
#バグなんかもたくさんあると思うんだよね。
Posted by かおりん at 2010年05月02日 08:55
かおりんさん、試してみました。いいですね。ぐっとわかりやすくなりました。そちらで公開されますか?
Posted by Matsumoto at 2010年05月02日 09:01
いや、公開予定はなかったんですが。
松本さん専用で考えてたので。(笑)
別にご紹介いただく分にはOKですけど。削除しませんので、URLはそのままになります。
まともに公開しようとすると、いろいろと面倒なので、DropBoxのまま公開ですかね。
#PPAとか。
ライセンスはGPLv3ということで、改変・再配布自由です。
正直、これの使い途がよく解ってないんですよ。
作ったはいいけど、たぶん自分では使わないという。(^^;
松本さんがGUIイメージを作ってくれたので作成可能でした、ってところでしょうか。
ああ、それと追加機能とかはいいですか?
コマンドラインの引数から、入力ファイルに設定して起動とかあれば、ファイラーからの起動がラクになるのかな、と思ったんですが。
Posted by かおりん at 2010年05月02日 09:12
ありがとうございます。それでは、こちらでネタにさせていただきましょう。たぶん、嬉しい人も世の中にはいると思うので。
> ああ、それと追加機能とかはいいですか?
そうですねえ。現状では思いつきません。Ghostscriptはいろんなことができるみたいなので盛り込む気になれば無限に盛り込めるんでしょうけれど、やり始めるとキリがないと思いますし。
ファイルマネージャとの連携とか、そういうことまで必要とする人はたぶんコマンドラインからの素でのGhostscript使用で不自由しないでしょうから、あまり需要はないのではないでしょうか。私的にはこれで大満足です。
Posted by Matsumoto at 2010年05月02日 09:17
了解しました。
それでは、これでいったんクローズで。
バグとかあったら修正します。
Posted by かおりん at 2010年05月02日 09:48
ありがとうございます。
Posted by Matsumoto at 2010年05月02日 11:21
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。