majkel.org / tcpdf-warper
使用TCPDF流畅接口创建PDF文档
v0.2.4
2016-01-27 11:43 UTC
Requires
- php: >=5.4.0
Requires (Dev)
- codeclimate/php-test-reporter: ^0.2.0
- phpunit/phpunit: 4.7.*
- ptrofimov/xpmock: *
- squizlabs/php_codesniffer: *
- symfony/yaml: 2.*
- tecnickcom/tcpdf: *
README
安装
composer require tecnick.com/tcpdf ### or any TCPDF library
composer require org.majkel/tcpdfwarper
关于
为TCPDF库提供流畅的语句构建器。
我的目标是使调用方法,带有许多参数,更加清晰和易于维护。
// instead of
$pdf = new \TCPDF();
$pdf->Image($file, $x, $y, $w, $h, '', '', '', true, 300, '',
true, false, 10, true, false, false, true, $altimgs);
// you can use this
$pdf = new \org\majkel\tcpdfwarper\TCPDFWarper();
$pdf->buildImage()->setFile($file)
->setPos(20, 20)->setSize(64, 64)
->setAlt(true)->setAltImgs($altimgs)
->render();
不再需要费力去记住哪个参数是哪个,或者为了只更改其中的最后一个参数而硬编码一个长的参数列表。
支持以下方法
- 单元格 (buildCell)
- 多单元格 (buildMulticell)
- 图片 (buildImage)
- SVG图片 (buildImageSvg)
- EPS图片 (buildImageEps)
- 文本 (buildText)
- 写入HTML (buildHtml)
- 写入HTML单元格 (buildHtmlCell)
- 写入一维条码 (buildBarcode1d)
- 写入二维条码 (buildBarcode2d)
- 写入 (buildWrite)
如果你在使用某种TCPDF分支,你可以编写自己的包装器。每个语句构建器都允许你注入$tcpdf对象。
$image = new \org\majkel\tcpdfwarper\ImageOp($tcpdf);
$image->setFile($file)
->setPos(20, 20)->setSize(64, 64)
->render();
特性
- 完全单元测试
- 完整的代码覆盖
- 代码补全友好(包括文档)
- 针对多个PHP版本进行测试(5.4 - 7.0,hhvm)
- 针对多个TCPDF库进行测试(见travis)
许可
MIT许可(MIT)
版权(c)2015 Michał(majkel)Kowalik
特此授予任何获得本软件及其相关文档副本(“软件”)的人免费使用软件的权利,不受限制,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本的权利,并允许获得软件的人这样做,但受以下条件的约束
上述版权声明和本许可声明应包含在软件的所有副本或实质性部分中。
本软件按“原样”提供,不提供任何明示或暗示的保证,包括但不限于适销性、特定用途适用性和非侵权性保证。在任何情况下,作者或版权所有者不应对任何索赔、损害或其他责任负责,无论是基于合同、侵权或其他原因,源于、涉及或与本软件或其使用或其它交易有关。