dポイントプレゼントキャンペーン実施中!

Rubyでpdfファイルを読み込む方法を探しています。

file = open("sample.pdf", "r")
file.each { |f|
puts f
}

というコードを書いて実行すると文字化け?したようになったり、数字ばかりの行が挿入されていたりと、txt形式のファイルを読み込んだ時の様に文字が正しく出力されません。
何かpdfを読み込む正しい方法があるのでしょうか。

また、直接読み込むことはせずにpdftotext.exeを使って予めtxt形式に変換しようと考えたのですが、Rubyのスクリプトの中でpdftotext.exeを使う方法が分かりません。
解決方法をご存じの方がいらっしゃいましたら教えて頂けないでしょうか。

環境はWindowsです。よろしくお願いします。

A 回答 (1件)

> pdftotext.exeを使って予めtxt形式に変換



コマンドラインで使用するコマンドをそのままsystemで実行すれば良いと思います。

-----
PDFTOTEXT = ' "c:\Program files\Xpdf\pdftotext.exe" '
OPT = ' -enc Shift-JIS'
filename = "foo.pdf"
system("#{PDFTOTEXT} #{OPT} #{filename}")
-----
ファイルパスやオプションは適宜修正が必要です。
    • good
    • 1
この回答へのお礼

回答ありがとうございました。コマンドを実行することが出来ました。

お礼日時:2009/09/15 14:59

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!