thinkPHP框架整合tcpdf插件操作示例


Posted in PHP onAugust 07, 2018

本文实例讲述了thinkPHP框架整合tcpdf插件操作。分享给大家供大家参考,具体如下:

网上查了些关于tcpdf 使用教程,整合到TP的话,会有些小问题,由于基础还不是很扎实,花了点时间终于整合OK了。下面介绍步骤:

环境:

TP版本:TP3.2.2

tcpdf:tcpdf_6_2_3

步骤:

1. 将tcpdf_6_2_3.zip解压在Web root目录下面,把examples文件夹下面的tcpdf_include.php文件拷贝到tcpdf文件夹下面,再把tcpdf/config/tcpdf_config.php内容替换成tcpdf/examples/config/tcpdf_config_alt.php中的内容

这里要注意的是:tcp_include.php$tcpdf_include_dirs数组要多添加一行:“realpath('./').'/tcpdf/tcpdf.php',”

2. 新建test.php

<?php
// Include the main TCPDF library (search for installation path).
require_once('./tcpdf/tcpdf_include.php');
// create new PDF document
$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
// set document information
$pdf->SetCreator(PDF_CREATOR);
$pdf->SetAuthor('Nicola Asuni');
$pdf->SetTitle('TCPDF Example');
$pdf->SetSubject('TCPDF Tutorial');
$pdf->SetKeywords('TCPDF, PDF, example, test, guide');
// set default header data
$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE.' wisvalley', PDF_HEADER_STRING);
// set header and footer fonts
$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));
// set default monospaced font
$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
// set margins
$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
$pdf->SetFooterMargin(PDF_MARGIN_FOOTER);
// set auto page breaks
$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
// set image scale factor
$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
// set some language-dependent strings (optional)
if (@file_exists(dirname(__FILE__).'/lang/eng.php')) {
 require_once(dirname(__FILE__).'/lang/eng.php');
 $pdf->setLanguageArray($l);
}
// ---------------------------------------------------------
// set font
//$pdf->SetFont('helvetica', '', 20);
$pdf->SetFont('stsongstdlight', '', 20);
// add a page
$pdf->AddPage();
$txt = 'your content';
$pdf->Write(0, $txt, '', 0, 'L', true, 0, false, false, 0);
$pdf->Output('/var/www/example_038.pdf', 'I');//浏览器预览
//$pdf->Output('example_038.pdf', 'F');//存储文件
//$pdf->Output('example_038.pdf', 'D');//下载文件

这样就可以了。

下面说下我碰到的几个问题:

1.我把这些代码拷贝到TP控制器的某个方法里面报错:Class 'Home\Controller\TCPDF' not found

解答:

$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);

改成

$pdf = new \TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);

对于tp3.2引入了命名空间,这个‘\'很重要

2.TCPDF ERROR: Unable to create output file: example_038.pdf

解答:$pdf->Output('/var/www/example_038.pdf', 'I');路径要为据对路径。

附:tcpdf插件点击此处本站下载

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
PHP与javascript对多项选择的处理
Oct 09 PHP
php面向对象全攻略 (十六) 对象的串行化
Sep 30 PHP
简单的php文件上传(实例)
Oct 27 PHP
实现在同一方法中获取当前方法中新赋值的session值解决方法
Jun 26 PHP
php类中的各种拦截器用法分析
Nov 03 PHP
PHP中imagick函数的中文解释
Jan 21 PHP
举例详解PHP脚本的测试方法
Aug 05 PHP
PHP中key和current,next的联合运用实例分析
Mar 29 PHP
PHP给文字内容中的关键字进行套红处理
Apr 12 PHP
php设计模式之备忘模式分析【星际争霸游戏案例】
Mar 24 PHP
PHP 面向对象程序设计之类属性与类常量实现方法分析
Apr 13 PHP
php并发加锁问题分析与设计代码实例讲解
Feb 26 PHP
php实现往pdf中加数字签名操作示例【附源码下载】
Aug 07 #PHP
php使用环形链表解决约瑟夫问题完整示例
Aug 07 #PHP
postman的安装与使用方法(模拟Get和Post请求)
Aug 06 #PHP
PHP实现的解汉诺塔问题算法示例
Aug 06 #PHP
PHP实现普通hash分布式算法简单示例
Aug 06 #PHP
PHP实现的无限分类类库定义与用法示例【基于thinkPHP】
Aug 06 #PHP
PHP常用字符串函数小结(推荐)
Aug 05 #PHP
You might like
PHP往XML中添加节点的方法
2015/03/12 PHP
php官方微信接口大全(微信支付、微信红包、微信摇一摇、微信小店)
2015/12/21 PHP
ThinkPHP5.0框架控制器继承基类和自定义类示例
2018/05/25 PHP
PHP addAttribute()函数讲解
2019/02/03 PHP
js判断样式className同时增加class或删除class
2013/01/30 Javascript
设为首页加入收藏兼容360/火狐/谷歌/IE等主流浏览器的代码
2013/03/26 Javascript
一看就懂:jsonp详解
2015/06/01 Javascript
基于JavaScript实现快速转换文本语言(繁体中文和简体中文)
2016/03/07 Javascript
使用jquery.qrcode.min.js实现中文转化二维码
2016/03/11 Javascript
全面理解JavaScript中的闭包
2016/05/12 Javascript
jQuery 全选 全不选 事件绑定的实现代码
2017/01/23 Javascript
vue中用动态组件实现选项卡切换效果
2017/03/25 Javascript
JavaScript实现计算圆周率到小数点后100位的方法示例
2018/05/08 Javascript
Swiper 4.x 使用方法(移动端网站的内容触摸滑动)
2018/05/17 Javascript
解析JS在获取当前月的最后一天遇到的坑
2019/08/30 Javascript
JS实现图片幻灯片效果代码实例
2020/05/21 Javascript
关于小程序优化的一些建议(小结)
2020/12/10 Javascript
python轻松实现代码编码格式转换
2015/03/26 Python
Python字典简介以及用法详解
2016/11/15 Python
matplotlib设置legend图例代码示例
2017/12/19 Python
利用Python yagmail三行代码实现发送邮件
2018/05/11 Python
Windows 8.1 64bit下搭建 Scrapy 0.22 环境
2018/11/18 Python
python3爬虫学习之数据存储txt的案例详解
2019/04/24 Python
python lambda表达式(匿名函数)写法解析
2019/09/16 Python
python 截取XML中bndbox的坐标中的图像,另存为jpg的实例
2020/03/10 Python
python 引用传递和值传递详解(实参,形参)
2020/06/05 Python
Django正则URL匹配实现流程解析
2020/11/13 Python
Python try except finally资源回收的实现
2021/01/25 Python
阿迪达斯奥地利官方商城:adidas.at
2016/10/16 全球购物
德国高性价比网上药店:medpex
2017/07/09 全球购物
英国蛋糕装饰用品一站式商店:Craft Company
2019/03/18 全球购物
小学教师事迹材料
2014/01/13 职场文书
"9.18"国耻日演讲稿范文
2014/09/14 职场文书
小学教育见习报告
2014/10/31 职场文书
党务工作者主要事迹材料
2015/11/03 职场文书
HTML5简单实现添加背景音乐的几种方法
2021/05/12 HTML / CSS