bigfish / pdf417
此包已废弃,不再维护。未建议替代包。
一个用于在PHP中生成PDF417条码的库
0.3.0
2017-07-29 10:56 UTC
Requires
- php: >=5.4
- ext-bcmath: *
- ext-gd: *
- intervention/image: ~2.0
Requires (Dev)
- mockery/mockery: @stable
- phpunit/phpunit: ^4|^5
This package is not auto-updated.
Last update: 2023-04-21 04:31:49 UTC
README
此项目已不再维护
我已经从PHP转向其他领域,此项目将不再更新。如果您想继续这个项目的传统,请分叉该项目。
对于维护的Python实现,请查看ihabunek/pdf417-py。
-- Ivan
要求
需要以下组件
- PHP >= 5.4
- PHP扩展:bcmath, fileinfo, gd
安装
将其添加到您的composer.json
文件中
composer require bigfish/pdf417
使用概述
require 'vendor/autoload.php'; use BigFish\PDF417\PDF417; use BigFish\PDF417\Renderers\ImageRenderer; use BigFish\PDF417\Renderers\SvgRenderer; // Text to be encoded into the barcode $text = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur imperdiet sit amet magna faucibus aliquet. Aenean in velit in mauris imperdiet scelerisque. Maecenas a auctor erat.'; // Encode the data, returns a BarcodeData object $pdf417 = new PDF417(); $data = $pdf417->encode($text); // Create a PNG image $renderer = new ImageRenderer([ 'format' => 'png' ]); $image = $renderer->render($data); // Create an SVG representation $renderer = new SvgRenderer([ 'color' => 'black', ]); $svg = $renderer->render($data);
ImageRenderer
使用Intervention Image将条码渲染为图像
渲染函数返回一个Intervention\Image\Image
实例。
选项
选项 | 默认值 | 描述 |
---|---|---|
format | png | 输出格式,以下之一:jpg 、png 、gif 、tif 、bmp 、data-url |
quality | 90 | Jpeg编码质量(1-10) |
scale | 3 | 条码元素的缩放比例(1-20) |
ratio | 3 | 条码元素的高度与宽度比(1-10) |
padding | 20 | 像素内的填充(0-50) |
color | #000000 | 前景色作为十六进制代码 |
bgColor | #ffffff | 背景色作为十六进制代码 |
示例
$pdf417 = new PDF417(); $data = $pdf417->encode("My hovercraft is full of eels"); // Create a PNG image, red on green background, extra big $renderer = new ImageRenderer([ 'format' => 'png', 'color' => '#FF0000', 'bgColor' => '#00FF00', 'scale' => 10, ]); $image = $renderer->render($data); $image->save('hovercraft.png');
data-url
格式与其他不同,它返回一个base64编码的PNG图像,可用于图像src
或CSS。当您使用此格式创建图像时
$pdf417 = new PDF417(); $data = $pdf417->encode('My nipples explode with delight'); $renderer = new ImageRenderer([ 'format' => 'data-url' ]); $img = $renderer->render($data);
您可以直接在HTML或CSS代码中使用它
<img src="<?= $img->encoded ?>" />
这将渲染为
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA.... " />
感谢
没有这些页面,此项目的实现将会更加困难