whiteoctober / tcpdf-bundle
Requires
- php: >=5.3.2
- symfony/framework-bundle: >=2.0
- tecnickcom/tcpdf: *
This package is auto-updated.
Last update: 2020-11-15 19:30:39 UTC
README
此项目不再积极维护。对于Symfony 3.4及以上版本,您可能希望使用此分支。
WhiteOctoberTCPDFBundle
此包简化了在Symfony2应用程序中使用TCPDF PDF生成库的过程。
安装
步骤1:设置包及其依赖项
composer require whiteoctober/tcpdf-bundle
版本约束(可选)
默认情况下,此包不会约束composer安装的TCPDF版本。(有关这个非同寻常的决定的解释见此处)。这意味着一个composer update
可能会更新到TCPDF的新主要版本。由于此包只是TCPDF的薄包装,您通常可以在没有问题的情况下进行此类升级。
但是,如果您确实希望约束TCPDF版本,请使用以下命令找出您当前已安装的版本:
composer show tecnickcom/tcpdf
然后修改您的项目的composer.json
文件,在requires
部分添加TCPDF版本约束。例如,如果已安装TCPDF版本6.2.17
,则"tecnickcom/tcpdf": "^6.2.17"
将在升级时允许使用小于7的任何版本。
步骤2:在内核中启用此包
将包添加到您的内核中的registerBundles()
方法
In Symfony < 4
// app/AppKernel.php <?php public function registerBundles() { $bundles = array( // ... new WhiteOctober\TCPDFBundle\WhiteOctoberTCPDFBundle(), ); }
In Symfony 4
// config/bundles.php return [ // ... WhiteOctober\TCPDFBundle\WhiteOctoberTCPDFBundle::class => ['all' => true], // ... ];
(该项目尚未配置为使用Symfony Flex,因此对config/bundles.php
的此更改将不会自动执行。)
如果您想进行服务自动注入,则需要添加一个服务别名
# app/config/services.yml (Symfony 3) # config/services.yaml (Symfony 4) services: # ... # the `white_october.tcpdf` service will be injected when a # `WhiteOctober\TCPDFBundle\Controller\TCPDFController` type-hint is detected WhiteOctober\TCPDFBundle\Controller\TCPDFController: '@white_october.tcpdf'
使用TCPDF
您可以从容器中获取white_october.tcpdf
服务,然后通过服务创建一个新的TCPDF对象
$pdfObj = $container->get("white_october.tcpdf")->create();
从现在开始,您将使用TCPDF对象进行正常操作。
配置
配置值
您可以通过这种方式向TCPDF传递参数
# app/config/config.yml (Symfony < 4) # config/packages/white_october_tcpdf.yaml (Symfony 4) white_october_tcpdf: tcpdf: k_title_magnification: 2
您可以在WhiteOctober\TCPDFBundle\DependencyInjection\Configuration::addTCPDFConfig
中查看默认参数值。
如果您愿意,您可以使用TCPDF的默认值
white_october_tcpdf: tcpdf: k_tcpdf_external_config: false # the values set by this bundle will be ignored
使用自定义类
如果您想使用自己的自定义基于TCPDF的类,您可以在配置中使用class
参数
# app/config/config.yml (Symfony < 4) # config/packages/white_october_tcpdf.yaml (Symfony 4) white_october_tcpdf: class: 'Acme\MyBundle\MyTCPDFClass'
该类必须扩展自TCPDF
类;如果这不是这种情况,将抛出异常。
许可
本软件包采用MIT许可证。请参阅软件包中的完整许可证。
Resources/meta/LICENSE
该项目最初位于https://github.com/whiteoctober/WhiteOctoberTCPDFBundle