andrej-griniuk / cakephp-html-to-image-view
CakePHP 的 HtmlToImageView 插件
Requires
- cakephp/cakephp: ^3.5
Requires (Dev)
- phpunit/phpunit: ^5.7.14|^6.0
This package is auto-updated.
Last update: 2024-08-27 14:03:01 UTC
README
CakePHP 的 HtmlToImageView 插件
此插件使用来自 WkHtmlToPdf 包的 wkhtmltoimage
命令行工具将 html 视图渲染为图像(jpg 或 png)。
要求
- CakePHP 3.5+
- wkhtmltoimage
安装
您可以使用 Composer 将此插件安装到您的 CakePHP 应用程序中。
composer require andrej-griniuk/cakephp-html-to-image-view
使用方法
首先,您需要在 bootstrap.php 中加载此插件
Plugin::load('HtmlToImageView', ['bootstrap' => true, 'routes' => true]);
这将使任何路由上的 jpeg
和 png
扩展可用。或者,您也可以通过不设置 'routes' => true
来加载插件,并且仅使您希望的路由上的扩展可用。
布局路径和模板子目录是 img
,例如,您需要为您的图像视图创建 src/Template/Layout/img/defaut.ctp
,图像视图模板可以是例如 src/Template/Events/img/view.ctp
。然后,简单地调用,例如,http://localhost/events/view.jpg
来将视图渲染为图像。
wkhtmltoimage
二进制文件的默认路径是 /usr/bin/wkhtmltoimage
。您可以通过设置 HtmlToImageView.binary
配置变量来更改它
Configure::write('HtmlToImageView.binary', '/another/path/to/wkhtmltoimage');
您可以通过 $this->viewOptions(['imageOptions' => [...])
从您的视图中传递一些选项到 wkhtmltoimage
。可用的选项列表
- crop-h - 设置裁剪高度
- crop-w - 设置裁剪宽度
- crop-x - 设置裁剪 x 坐标
- crop-y - 设置裁剪 y 坐标
- format - 输出文件格式(jpg/png)
- width - 设置屏幕宽度,注意这仅用作指南线(默认 1024)
- height - 设置屏幕高度(默认是从页面内容计算得出)
- zoom - 缩放级别
- quality - 输出图像质量(介于 0 和 100 之间)(默认 94)
例如
$this->viewOptions([ 'imageOptions' => [ 'width' => 250, 'zoom' => 2 ], ]);
在 项目网站 上查看 wkhtmltoimage
的完整文档和安装说明
错误 & 反馈
https://github.com/andrej-griniuk/cakephp-html-to-image-view/issues
许可
版权所有 (c) 2018, Andrej Griniuk,并许可在 MIT 许可证 下。