PDF::API2には多くの機能がありますが、非常に難解です。必要な情報を得るためにドキュメントをマイニングするのは非常に難しいことがわかりました。PDF を適切にレンダリングするには、すべてを「適切に」取得する必要があります。要件が変更された場合、既存のコードにカスケード効果が発生して、すべてがうまく連携するようになる傾向があります。たとえば、特定の場所に 1 つの要素を挿入すると、API の使用方法によっては、そのページにレンダリングされる他のすべての要素の位置を単一ポイントの精度まで再計算する必要があることを意味する場合があります。
その結果、ごく最近、PDF::API2 を使用していたソリューションを放棄し、代わりに HTML の生成を開始し、それを外部ツールを使用して PDF に変換しました。Sinan Ünür によって提案されたPDF::FromHTMLなど、いくつかの優れた無料のものがあります。HTML に凝って PDF にうまく変換したい場合は、より機能豊富な商用のものもあります (個人的には使用していませんが)。
既存の PDF を生成するのではなく、単純な操作を行う必要がある場合は、CAM::PDFを使用します (実際に使用します) 。
要するに、PDF::API2 はお勧めしません。その複雑さをすべて把握し、将来にわたってアプリを個人的にサポートするために多くの時間を費やす意思がある場合を除きます。非常に強力で機能が豊富ですが、何をしているのかを正確に理解していない限り、モジュールが役立つ以上に、ドキュメントや例の欠如が妨げになります。