jelix/tcpdf-module

为Jelix提供的模块,用于生成PDF并将其发送到浏览器,使用TCPDF。

安装次数: 1,299

依赖项: 0

建议者: 0

安全: 0

星级: 0

关注者: 3

分支: 0

开放问题: 0

类型:jelix-module

v1.7.5 2023-02-27 21:22 UTC

This package is auto-updated.

Last update: 2024-08-28 00:26:42 UTC


README

这是一个为Jelix提供的模块,提供了一个响应对象和类,用于生成PDF并将其发送到浏览器。

此模块适用于Jelix 1.6.x及更高版本,自Jelix 1.7起已移至其自己的存储库。查看jelix/jelix存储库以了解其历史。

Jelix 1.7+的安装

像其他Jelix模块一样手动安装,或者如果您使用的是Composer的Jelix应用程序,则可以使用Composer。

在您的项目中

composer require "jelix/tcpdf-module"

启动应用程序的配置器以启用模块

php yourapp/dev.php module:configure jtcpdf

然后启动安装程序以激活模块

php yourapp/install/installer.php

Jelix 1.6的安装

像其他Jelix模块一样手动安装,或者如果您使用的是Composer的Jelix应用程序,则可以使用Composer。

在您的项目中,您应该创建一个composer.json文件,并且它应该包含至少以下内容

{
  "require": {
    "jelix/composer-module-setup": "^1.1.0",
    "jelix/tcpdf-module": "^1.7.4"
  },
  "config": {
    "allow-plugins": {
      "jelix/composer-module-setup": true
    }
  },
  "extra": {
    "jelix": {
      "app-dir" : "./",
      "var-config-dir" : "var/config/",
      "config-file-16" : "mainconfig.ini.php"
    }
  }
}
  • app-dir 必须指示包含 project.xml 的目录的路径
  • var-config-dir 必须指示您的应用程序 var/config 目录的路径
  • config-file-16 必须指示要修改的配置文件名称(mainconfig.ini.phplocalconfig.ini.php

然后运行 composer install

然后启动安装程序以激活模块

php yourapp/install/installer.php

使用模块

在您的控制器中,您应检索“tcpdf”响应类型。响应对象有一个 tcpdf 成员,它只是一个 TCPDF 对象(或更精确地说,是从 TCPDF 继承的对象)。有关其使用和API的详细信息,请参阅TCPDF文档。

class myCtrl extends jController {

    function index() {
        $resp = $this->getResponse('tcpdf');
        $resp->outputFileName = 'article.pdf';
        $resp->doDownload = true;

        // initialize the tcpdf object
        $resp->initPdf();
        $resp->tcpdf->AddPage();
        $resp->tcpdf->SetTitle('a title');
        $resp->tcpdf->Text(10,10,'a text');
        //...
        return $resp;
    }
}

如果您想覆盖一些tcpdf方法,可以使用自己的对象。示例

class myCtrl extends jController {

    function index() {
        $resp = $this->getResponse('tcpdf');

        $resp->outputFileName = 'article.pdf';
        $resp->doDownload = true;

        // initialize the tcpdf object
        $resp->tcpdf = new MyTcPdf();
        $resp->tcpdf->AddPage();
        $resp->tcpdf->SetTitle('a title');
        $resp->tcpdf->Text(10,10,'a text');
        ...
        return $resp;
    }
}

MyTcPdf当然应从 TCPDFjTcpdf 继承(在 classes/ 目录中查看)。