Welcome Guest, Not a member yet? Register   Sign In
Integrating dompdf
#1

(This post was last modified: 05-03-2020, 03:04 AM by rmilecki.)

I want to try using dompdf for generating PDFs. It's simpler than TCPDF and wkhtmltopdf so a good choice for me if it works good enough.

I downloaded it to app/ThirdParty/ and in Autoload.php I added it to $psr4:
PHP Code:
$psr4 = [
    
'App'         => APPPATH,                // To ensure filters, etc still found,
    
APP_NAMESPACE => APPPATH,                // For custom namespace
    
'Config'      => APPPATH 'Config',
    
'Dompdf'      => APPPATH 'ThirdParty/dompdf/src',
]; 

Trying to use it:
PHP Code:
$dompdf = new \Dompdf\Dompdf(); 

results in error though:
Code:
Class 'Dompdf\Cpdf' not found


It seems that dompdf has its own Autoloader.php which has some magic code for handling Dompdf\Cpdf:
https://github.com/dompdf/dompdf/blob/ma...loader.php
but it doesn't work with CodeIgniter 4.

Any hint how to fix that? I don't like using
PHP Code:
require_once APPPATH 'ThirdParty' DIRECTORY_SEPARATOR 'dompdf' DIRECTORY_SEPARATOR 'autoload.inc.php'
Reply
#2

Don't know if this is possible, but you can at least try. Personally I would use it the Composer way. :-)

PHP Code:
$psr4 = [
    
'App'         => APPPATH,                // To ensure filters, etc still found,
    
APP_NAMESPACE => APPPATH,                // For custom namespace
    
'Config'      => APPPATH 'Config',
    
'Dompdf\\Dompdf'      => APPPATH 'ThirdParty/dompdf/src',
    
'Dompdf\\Cpdf'      => APPPATH 'ThirdParty/dompdf/lib',
]; 
Reply
#3

I had similar problem... see my experience and solution.
Reply
#4

I would suggest you look at MPDF (get it via composer.

Very easy to setup and use. In my opinion the best pdf library as it support html and css.
Dirk B.
ESD Digital
No SEO spam - see forum guidelines
Reply
#5

(05-03-2020, 03:03 AM)rmilecki Wrote: I want to try using dompdf for generating PDFs. It's simpler than TCPDF and wkhtmltopdf so a good choice for me if it works good enough.

I downloaded it to app/ThirdParty/ and in Autoload.php I added it to $psr4:
PHP Code:
$psr4 = [
 
'App'         => APPPATH,                // To ensure filters, etc still found,
 
APP_NAMESPACE => APPPATH,                // For custom namespace
 
'Config'      => APPPATH 'Config',
 
'Dompdf'      => APPPATH 'ThirdParty/dompdf/src',
]; 

Trying to use it:
PHP Code:
$dompdf = new \Dompdf\Dompdf(); 

results in error though:
Code:
Class 'Dompdf\Cpdf' not found


It seems that dompdf has its own Autoloader.php which has some magic code for handling Dompdf\Cpdf:
https://github.com/dompdf/dompdf/blob/ma...loader.php
but it doesn't work with CodeIgniter 4.

Any hint how to fix that? I don't like using
PHP Code:
require_once APPPATH 'ThirdParty' DIRECTORY_SEPARATOR 'dompdf' DIRECTORY_SEPARATOR 'autoload.inc.php'

did you get the solution for this?  
if yes and please let me know
Reply
#6

If you use Composer, you don't need to add autoloader config manually.
This code worked in my environment.
https://forum.codeigniter.com/showthread...#pid414111
Reply




Theme © iAndrew 2016 - Forum software by © MyBB