LoginSignup
0
0

More than 3 years have passed since last update.

CakePDFでファイルサイズを下げる

Last updated at Posted at 2020-12-22

環境

  • CakePHP 3.8
  • friendsofcake/cakepdf 3.5.2
  • DomPDF

やりたいこと

CakePHP3 で構築しているサイトで、cakepdf を使って PDF 生成をしています。
が、ダウンロードした PDF サイズがなんか 4.3 MB と大きいので、小さくしたかった。

方法

使ってる PDF エンジン は DomPdfEngine です。
こちらのサイト↓を参考に、DomPDF の中を見てたらそれっぽい設定値があったので、それらしきオプションを設定。結果、35 KB まで減りました。

DOMPDFでPDFファイルサイズを小さくする

config/bootstrap.php
$this->addPlugin('CakePdf', array('bootstrap' => true));
Configure::write('CakePdf', [
    'engine' => [
        'className' => 'CakePdf.DomPdf',
        'options' => [
            'isRemoteEnabled' => true,
            'isFontSubsettingEnabled' => true, //←これを追加
        ],
    ],
]);

▼設定前と設定後のファイル容量
filesize.png

XXMB にしたい!という要望だとちょっとこの方法では出来ないのですけど、単にサイズ小さくしたいだけなら問題なさそう。
PDF のダウンロードにかかる時間が若干伸びましたが(サブセット化してるのでしょうがない?)、記事にあったようなエラーは特に出なかったので、まあいいかな、ということで。

参考

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0