在codeigniter中的wkhtmltopdf的snappy包装器中没有为设置Binary



如何将snappy库与codeigniter一起使用。

  1. 我已经安装了它,并将它放在我的库文件夹中。像

    require_one目录名(FILE(。'/snappy/vvendor/autoload.php’;使用Knp\Snappy\Pdf;

    class wkhtmltopdf extends Pdf
    {
    function __construct()
    {
    parent::__construct();
    }
    }
    

2(然后在控制器中,我通过函数__construct((加载它

$this->load->library('wkhtmltopdf');
  1. 在我的一个控制器中,我设置了类似的二进制

    $snappy=新的wkhtmltopdf("C:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe"(;

并尝试4(

echo $snappy->getOutput(array('http://www.google.com.pk'));

但是下面的错误来了。

但它抛出了一个错误。类型:LogicException

消息:在转换之前,您必须定义一个二进制文件。

文件名:C:\examplep\htdocs\reporting new icn巨大更改\application\libraries\snappy\vendor\knplabs\knp-snappy\src\knp\snappy\AbstractGenerator.php

任何通过任何方法在codeignter中实现了wkhtmltopdf的人都会非常有帮助。

使用Composer下载库后。

$ composer require knplabs/knp-snappy

将其添加到Library文件夹中,并给出自动加载的路径。php

require_once dirname(__FILE__)."application/libraries/snappy/vendor/autoload.php";

调整上述路径和控制器类之外

use KnpSnappyPdf; # at the top of the controller

这是二进制文件的路径,在Linux服务器中,可以在github.com/KnpLabs/snappy的帮助下对其进行调整

#&内部控制器功能

{
$snappy = new Pdf(""C:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe"");
header('Content-Type: application/pdf');
echo $snappy->setOption('page-width', '188mm');
echo $snappy->setOption('page-height', '100mm');
# these options are Optional there are a lot of other options.
#Can check more options Here https://wkhtmltopdf.org/usage/wkhtmltopdf.txt
echo $snappy->getOutput($url);
#OR in case of you want the HTML to put directly open in the Browser.
echo $snappy->getOutputFromHtml($html);
#OR 
echo $snappy->generateFromHtml('<p>Some content</p>', 'test.pdf');
# this test.pdf will be saved in hte Codeigniter directory
}

要想直接出柜,请看这个问题。在此处输入图像描述

<img src= "https://i.stack.imgur.com/haagb.png">

https://wkhtmltopdf.org/downloads.htmlwindows中的Exe文件和该页面上给出的Linux、Amazon等所需的相同类型的可执行文件
还需要这个库,它是用于设置设置、输出和其他内容的包装器。https://github.com/KnpLabs/snappy>可以使用供应商文件夹中的git命令安装

相关内容

  • 没有找到相关文章

最新更新