inspiredminds/contao-isotope-pdf-templates

在Contao Isotope中添加新的文档类型,您可以在其中定义PDF模板。

资助包维护!
fritzmg

安装次数: 2,451

依赖: 0

建议者: 0

安全: 0

星标: 0

关注者: 5

分支: 2

开放性问题: 0

类型:contao-bundle

2.3.1 2024-09-10 15:23 UTC

This package is auto-updated.

Last update: 2024-09-10 15:24:01 UTC


README

Contao Isotope PDF Templates

在Contao Isotope中添加新的文档类型,您可以在其中定义PDF模板。

重要:本扩展的2.x版本使用mPDF而不是TCPDF。以下是一些需要注意的事项

  • mPDF仅支持以下字体:https://mpdf.github.io/fonts-languages/fonts-in-mpdf-7-x.html
  • mPDF具有更优越的HTML和CSS功能。
  • 建议在您的iso_document_…模板中使用完整的HTML标记。
  • 默认情况下,mPDF使用的FPDI PDF-Parser仅支持PDF版本1.4以下的PDF文档,因此您可能需要事先将它们转换为这个版本。但是,您可以购买商业版本以便能够转换任何PDF。

Screenshot

自定义字体

从版本2.1.0开始,您可以直接通过后端集成自定义字体。首先,您需要将TTF文件上传到/files目录下的一个目录中。然后,您需要在文档的字体设置中选择该文件夹。选择正确的文件夹后,您需要保存设置,然后您将能够配置发现的字体文件。

Screenshot

对于您想要使用的每个字体,您需要启用它,并设置字体的小写变体和名称。

注意: mPDF将某些常见字体名称映射到其自己的默认字体。如果字体不起作用,请尝试设置一个更独特的字体名称。

事件

该扩展提供了一个ModifyPdfEvent,您可以通过它访问mPDF Isotope Document实例,以便更改一些参数或添加额外的变量等。

// src/EventListener/ModifyPdfEventListener.php
namespace App\EventListener;

use InspiredMinds\ContaoIsotopePdfTemplatesBundle\Event\ModifyPdfEvent;
use Symfony\Component\EventDispatcher\Attribute\AsEventListener;

#[AsEventListener(ModifyPdfEvent::EVENT_NAME)]
class ModifyPdfEventListener
{
    public function __invoke(ModifyPdfEvent $event): void
    {
        // Access the mPDF object instance
        $mpdf = $event->getPdf();

        // Access the Isotope Document instance
        $document = $event->getDocument();
    }
}