こんにちは、はな夫(@logicalifer)です。
今回は、Raspberry pi(ラズパイ)を使って、複数のPDFファイルを結合したり、PDFファイルを画像ファイルに変換する方法をご紹介します。
最近、様々なネットサービスで、書類を郵送しなくても、電子ファイルを添付すればOKなことが増えていますよね。
我が家で特にあるのは、運転免許証の画像データを送信する機会です。
でも、サービスによっては、添付できるファイルが画像ファイルのみだったり、PDFファイルだったり、表裏で2ページの1ファイルだったり、別々だったりとマチマチだったりしませんか?
そんなときはパソコンで手持ちのファイルを編集する必要がありますが、PDFファイルを閲覧することはあっても、編集したり、結合したりといった操作をすることって滅多になく、PDF編集ソフトをインストールしている方は少ないんじゃないでしょうか。
また、滅多にないことのために、ソフトをインストールしてパソコンが重たくなるのも嫌なことです。
もし、Raspberry piを持っていれば、滅多にないPDFの操作をRaspberry pi上で実施できちゃいます!
Raspberry piを準備する
この記事にたどり着いた方はおそらく既にRaspberry piをお持ちだとは思いますが、もしお持ちでない場合は準備をします。
セットアップの方法は下記の記事にまとめています。
PDFファイルを結合する
まずは、複数のPDFファイルを、一つのPDFファイルに結合する方法です。
pdfuniteコマンドを使用します。
インストール
まずはインストールです。下記のコマンドを実行します。
sudo apt install poppler-utils
ファイルの用意
結合したいPDFファイルを作業フォルダに用意します。
なお、WindowsパソコンからPDFファイルを用意したい場合は、OneDriveを導入していると、ファイルコピーの手間がなくなり便利です。
Raspberry piへのOneDriveの導入については、下記の記事にまとめています。
例として、OneDrive/pdfディレクトリ以下に対象のPDFファイルが用意されている場合を示します。
まず、onedriveの同期を最新化します。
onedrive --synchronize
次に、目的のフォルダに移動し、ファイルがあることを確認します。
cd ONeDrive/pdf
ls
file1.pdf file2.pdf
ファイルを結合する
次のコマンドでファイルを結合します。
pdfunite file1.pdf file2.pdf output.pdf
lsコマンドで、output.pdfが増えたことを確認します。
ls
file1.pdf file2.pdf output.pdf
OneDriveを再度同期させて、Windowsパソコンにも同期させれば終わりです。
onedrive --synchronize
ファイルが3つ以上ある場合は?
ファイルが3つ以上ある場合も、pdfuniteコマンドの引数を増やせばOKです。
file1.pdf file2.pdf file3.pdf file4.pdf output.pdf
PDFファイルを画像ファイルにする
次はPDFファイルを画像ファイル(jpeg等)に変換する方法です。
pdftoppmコマンドを利用します。
インストール
まずはインストールです。といっても、pdfuniteコマンドと同じですので、既にインストールしていれば、実施しなくてOKです。
sudo apt install poppler-utils
ファイルの用意
画像にしたいPDFファイルを作業フォルダに用意します。
以下は、PDFを結合する際と同じ方法で画像をWindowsパソコンから同期する例をご紹介していますので、習得済みなら飛ばしてOKです。
なお、WindowsパソコンからPDFファイルを用意したい場合は、OneDriveを導入していると、ファイルコピーの手間がなくなり便利です。
Raspberry piへのOneDriveの導入については、下記の記事にまとめています。
例として、OneDrive/pdfディレクトリ以下に対象のPDFファイルが用意されている場合を示します。
まず、OneDriveの同期を最新化します。
onedrive --synchronize
次に、目的のフォルダに移動し、ファイルがあることを確認します。
cd OneDrive/pdf
ls
file1.pdf file2.pdf
画像ファイルに変換する
次のコマンドで、PDFファイルを画像ファイルに変換します。
pdftoppm -jpeg file1.pdf file1-image
これで、file1.pdfの1ページごとのjpeg画像が、file1-image-1.jpg、file1-image-2.jpgといった名前で作成されます。
なお、png形式にしたい場合は
pdftoppm -png file1.pdf file1-image
とすればOKです。
PDFファイルや画像が文字化けしてしまう場合
作成したPDFファイルや画像が文字化けしてしまう場合は、Raspberry piにフォントが足りず、PDFファイルで使用しているフォントが文字化けしている可能性があります。
その場合は、Raspberry piにフォントを追加する必要があります。
インストール
下記のブログを参考に、インストールできます。
我が家の場合、notoをインストールすることで、文字化けが解消しましたので、おすすめです。
sudo apt-get install fonts-noto
まとめ
Raspberry piで、PDFファイルを結合したり、画像ファイルに変換する方法をご紹介しました。
Raspberry piはLinuxで動作しているので、Windowsパソコンで簡単にはできないことを、サクッとやれてしまうことも魅力の一つだったりします。
また、Windowsパソコンに余分なソフトを入れたくない方は、小型サーバーとして、Raspberry piを1台持っておくと、困った時に助けてくれることがありますのでおすすめです。
コメント