1. Go to this page and download the library: Download starkliew/jasperphp library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
.......
.......
'providers' => [
.......
Illuminate\Translation\TranslationServiceProvider::class,
Illuminate\Validation\ValidationServiceProvider::class,
Illuminate\View\ViewServiceProvider::class,
//insert jasper service provider here
JasperPHP\JasperPHPServiceProvider::class
],
......
......
namespace App\Http\Controllers;
use JasperPHP; // put here
......
......
public function generateReport()
{
//jasper ready to call
JasperPHP::compile(base_path() . '/vendor/cossou/jasperphp/examples/hello_world.jrxml')->execute();
}
......
use JasperPHP\JasperPHP as JasperPHP;
Route::get('/', function () {
$jasper = new JasperPHP;
// Compile a JRXML to Jasper
$jasper->compile(__DIR__ . '/../../vendor/cossou/jasperphp/examples/hello_world.jrxml')->execute();
// Process a Jasper file to PDF and RTF (you can use directly the .jrxml)
$jasper->process(
__DIR__ . '/../../vendor/cossou/jasperphp/examples/hello_world.jasper',
false,
array("pdf", "rtf"),
array("php_version" => "xxx")
)->execute();
// List the parameters from a Jasper file.
$array = $jasper->list_parameters(
__DIR__ . '/../../vendor/cossou/jasperphp/examples/hello_world.jasper'
)->execute();
return view('welcome');
});
'JasperPHP\JasperPHPServiceProvider',
public function generateReceipt($id) {
$datafile = base_path() . "/storage/jasper/data.json";
$output = base_path() . "/storage/jasper/data"; //indicate the name of the output PDF
JasperPHP::process(
base_path() . '/resources/reports/taxinvoice80.jrxml',
$output,
array("pdf"),
array("msg"=>"Tax Invoice"),
array("driver"=>"json", "username"=>"admin", "password"=>"", "json_query" => "data", "data_file" => $datafile)
)->execute();
}