- PR -

PHPでPDFファイルを結合するには?

1
投稿者投稿内容
シナチク
会議室デビュー日: 2007/10/12
投稿数: 9
投稿日時: 2007-12-11 17:33
お世話になります。

件名の通りなのですが、幾つかのPDFファイルを1つに結合する場合は、どのように関数を使用すれば良いのでしょうか。

客先から言語をPHPに指定されているのですが、perlでは簡単にできても、PHPでのやり方が分らずに困っております。
(http://jp.php.net/manual/ja/ref.pdf.php は参照していますが…)

ご教示いただければ幸いです。
よろしくお願いいたします。
冬寂
ぬし
会議室デビュー日: 2002/09/17
投稿数: 449
投稿日時: 2007-12-11 18:08
むかーし、PDFライブラリを使った事あるだけで、参考にあげられたリンク先のPDF関数を見ても分からないのですが、たぶん無理じゃないかと思います。
というのも、確か既存のPDFを開く部分が別扱いになってたりしてなんだか結局使えなかったような気がするので。
(まぁ、自分の技量不足というのもあるかもしれませんが。っつか、昔と随分変わってる(汗))
どうも、リンク先の関数を見てみても、既存のファイルを開く関数が無いでしょ?
開けなくては、結合できませんよね?

あ。perlでは簡単に結合出来るそうですけど、よろしければその方法を教えていただけませんか?

# あ。後、内容を検分してないのですが、ひょっとしたらFPDIは参考になりませんか?
シナチク
会議室デビュー日: 2007/10/12
投稿数: 9
投稿日時: 2007-12-11 18:17
返答ありがとうございます。

FPDIというのも、PDFlibと同じ感じで無理みたいですね。。。

perlでの結合方法ですが、appendpdf.plというのがあります。
依存モジュールが幾つかありますが(CAM:DF、TEXT:DF、Getopt::Long)、
CPANからインストールできない環境でも、ディレクトリ配下に置けば使用できます。

詳細は↓こちら↓をご覧ください。
http://search.cpan.org/~cdolan/CAM-PDF-1.12/bin/appendpdf.pl
冬寂
ぬし
会議室デビュー日: 2002/09/17
投稿数: 449
投稿日時: 2007-12-12 09:55
Perlでの情報ありがとうございます。
FPDIは、すごく記憶がおぼろなのですが、似たような話題があった時にブックマークした気がした、というだけで貼っただけでした。期待に沿えずすみません(汗)
(どうも、PDFを扱った時の記憶がぼやけているもので・・・)

しかし、そうなるとPHP単体では無理です、と言ってsystem()とかで外部スクリプトとして実行した結果を・・・というより方法はなさそうですね。。。

# ちょっと検索してみたところ、複数pdfの結合方法/ pdfのページ毎分解方法の所に「PHP+pdflibを使用しました、 只サーバに負担がかかるのであまり実用的ではなかったです。」と書いてあるので、「方法はある」のかもしれません。。。
おさるわん
会議室デビュー日: 2004/11/10
投稿数: 7
投稿日時: 2007-12-12 10:20
FPDIを使えば、PDFファイルの連結は(PHPプログラムを書けば)できます。
FPDIにあるsetSourceFile()で既存のPDFファイルを読み込めます。

このPDF連結のPerlのリンク先を見ると「Perlを使ったPDFを連結するコマンド/プログラム」であって、(プログラム内で使うライブラリのような)関数ではないので、この方の関数(= コマンド)という言葉の使い方からするとFPDIのみでは実現できないのかもしれませんが.. php+FPDIを使ってappendpdf.pl相当のPHPプログラムを作ればいいと思います。
シナチク
会議室デビュー日: 2007/10/12
投稿数: 9
投稿日時: 2007-12-12 12:12
先の返信にて「:P」が顔文字に化けてました(汗)
失礼しました。

> おさるわんさん
php+FPDIで出来るとの進言なのですが、そもそも手間を減らしたいので。。

FPDIの開発元が提供しているSetaPDF_Mergerを使用すると簡単にPDFを結合できると分りましたが、ライセンス料が必要なようです。

ちょいと、客先と相談してみます。
1

スキルアップ/キャリアアップ(JOB@IT)