我一直在使用Laravel改写条形码生成系统。
我正常对类进行实例化,但使用metod $pdf->SetFont('Arial','B',$fontSize);
我收到错误消息 FPDF错误:未定义字体:helvetica B 。如下所示,粘贴“font”已包含在库粘贴中。
<?php namespace App\Http\Controllers;
//Elements declaration of layout, libraries and model
use View, Input, Validator, FPDF, eFPDF, BarcodeClass, BarcodeEAN, DB, App\Models\Barcode;
class HomeController extends Controller {
public function index() {
return view('frontend.home');
}
public function gerarPdf() {
//some code
//Creates a new PDF
$pdf = new eFPDF('P', 'pt');
//Modify PDF font
$pdf->SetFont('Arial','B',$fontSize);
在FPDF.php内部
function _getfontpath()
{
if(!defined('FPDF_FONTPATH') && is_dir(dirname(__FILE__).'font/'))
define('FPDF_FONTPATH',dirname(__FILE__).'/font/');
return defined('FPDF_FONTPATH') ? FPDF_FONTPATH : '';
}
答案 0 :(得分:1)
事实上,getPath
方法是必需的,但define
没有收到孔粘贴的文件夹。它的dirname
无效,所以我切换到app_path().'/Libraries/FPDF/font/'
,在方法结束时,我将exit;
放在$pdf->Output
之后。如果没有,浏览器将显示以下字符:
%PDF-1.3 3 0 obj&lt;&gt; endobj 4 0 obj&lt;&gt;流x�e��N�0��}�R&lt;��?W $ @�g(�g^����r���~��w&amp;