2

Pdf-reader ruby​​ gem ( https://github.com/yob/pdf-reader/ )を使用してpdfをプレーンテキストに変換しようとしています

縦向きのページでは問題なく動作していますが、横向きのページでは機能しません

ランドスケープページをプレーンテキストに変換しようとすると、コンテンツがランダムな順序で読み取られ、プレーンテキストのデータも失われます

横向きページの属性は以下の通り

{:Parent=>#<PDF::Reader::Reference:0x000000062d4e60 @id=11481, @gen=0>, :Type=>:Page, :Resources=>{:Font=>{:Fcpdf0=>#<PDF::Reader::Reference:0x000000062cfc80 @id=8585, @gen=0>, :Fcpdf2=>#<PDF::Reader::Reference:0x000000062cef10 @id=8588, @gen=0>, :Fcpdf3=>#<PDF::Reader::Reference:0x000000062cec18 @id=8590, @gen=0>}, :ProcSet=>#<PDF::Reader::Reference:0x000000062cdca0 @id=4, @gen=0>}, :MediaBox=>[0, 0, 595.276, 841.89], :CropBox=>nil, :Rotate=>90, :Contents=>[#<PDF::Reader::Reference:0x000000062c6c70 @id=15, @gen=0>, #<PDF::Reader::Reference:0x000000062c6a18 @id=16, @gen=0>]} 

縦向きページの属性は次のとおりです。

{:Parent=>#<PDF::Reader::Reference:0x000000062fadb8 @id=11481, @gen=0>, :Type=>:Page, :Resources=>{:Font=>{:Fcpdf0=>#<PDF::Reader::Reference:0x000000062f9be8 @id=8585, @gen=0>, :Fcpdf2=>#<PDF::Reader::Reference:0x000000062f8c48 @id=8588, @gen=0>, :Fcpdf1=>#<PDF::Reader::Reference:0x000000062f8748 @id=8587, @gen=0>, :Fcpdf4=>#<PDF::Reader::Reference:0x000000062f3b30 @id=8592, @gen=0>}, :ProcSet=>#<PDF::Reader::Reference:0x000000062f3630 @id=4, @gen=0>}, :MediaBox=>[0, 0, 594, 792], :CropBox=>[0, 0, 594, 792], :Rotate=>0, :Contents=>[#<PDF::Reader::Reference:0x000000062f05e8 @id=9, @gen=0>, #<PDF::Reader::Reference:0x000000062f02c8 @id=10, @gen=0>]} 

私はpdfを次のように読んでいます:

reader = PDF::Reader.new("sample.pdf")

page = reader.pages[page_no]

puts page.text

横向きのページをプレーンテキストに変換するのを手伝ってくれる人はいますか。

4

1 に答える 1