本文目录一览:
- 1、php网站pdf显示插件 pdf.js 浏览器打开大文件崩溃。
- 2、PHP生成PDF,用什么类库好
- 3、怎么用PHP在HTML中生成PDF文件
- 4、php wkhtmltopdf怎么实现
- 5、如何使用PHP创建和修改PDF文档
php网站pdf显示插件 pdf.js 浏览器打开大文件崩溃。
您好,两种方案:一种直接链接,把pdf文件当作img文件,类似a href=""/这种形式,这样链接:
代码如下:
frame src="pdf文件的地址"/frame
另一种:使用js插件哈。
其中实现阅读pdf文件的js插件很多,比如:pdf.js:是一个技术原型主要用于在 HTML5 平台上展示 PDF 文档,无需任何本地技术支持;jsPDF:是一个使用Javascript语言生成PDF的开源库(IE暂不支持);
比较简单易上手的js插件:PDFObject.js,是一个 JavaScript 库用来在HTML中动态嵌入 PDF 文档。
效果如下:
PDFObject.js目前已经升级到1.2,可以支持IE9.
PDFObject.js宗旨:Sometimes you need a little JavaScript. When you do, try PDFObject.
来看看少之又少的js代码:
代码如下:
script type="text/javascript"
window.onload = function (){
var success = new PDFObject({ url: "sample.pdf" }).embed();
};
/script
OK,这样就可以了。只要把地址写对即可。
若我在某一个div中加载pdf咋办呢?看官网,发现embed()方法可以有参数的,无参数是指body,有参数是具体的某一个位置。
代码如下:
script type="text/javascript"
window.onload = function (){
var success = new PDFObject({ url: "sample.pdf" }).embed(“div的id”);
};
/script
当然,其中还可以进一步设置参数,比如你想以多少秒的速度预览,有css,无css等。
PHP生成PDF,用什么类库好
FPDF
FPDF
这个PHP
Class允许你采用纯PHP(更确切地说就是不需要使用PDFlib)来生成PDF文件。它所具有的特点包括:可选择的unit大小,页面格式和页边
距;页眉和页脚管理;自动分页;自动换行与文本自动对齐;支持JPEG与PNG图片格式;支持着色和文件超链接;支持TrueType,Type1与
encoding;支持页面压缩。
HTML2PDF
HTML2PDF能够把一个HTML文本转换成一个打印机友好的PDF文件。这个PHP脚本构建在FPDF
PHP脚本之上。
TCPDF
TCPDF是一个用于快速生成PDF文件的PHP5函数包。TCPDF基于FPDF进行扩展和改进。支持UTF-8,Unicode,HTML和
XHTML。
html2ps
html2ps
能够把带有图片,复杂表格(包含rowspan/colspan)
,layer/div和css样式的HTML转换成Postscript与PDF。
html2ps对CSS2.1支持非常好,并且很好地兼容不正确的HMTL。它甚至能够转换几乎是采用CSS设计的网站如msn.com。
HTML_ToPDF
HTML_ToPDF能够把任何HTML文档转换成在任何平台和打印机下界面格式都一样的PDF文档。它包括支持图片转换,使用样式表来定制PDF
文件和错误处理。
cPdfWriter
cPdfWriter是一个能够输出PDF文档的PHP5
class。基于TCPDF,FPDF和其它相关脚本。
dompdf
dompdf是一个HTML到PDF的转换工具。它的核心是一个遵循大部份CSS2.1样式的Rendering引擎。dompdf采用样式驱动,
它能够下载并读取外部样式,整个样式标签和单个HTML元素的样式属性。它同样支持目当大部份HTML属性。
怎么用PHP在HTML中生成PDF文件
php有很多开源的生成PDF的类库你直接搜下就能找到
类似这样的插件基本都输出同样格式就可以;
这下边是个案列:
require_once('tcpdf.php');
//实例化
$pdf = new TCPDF('P', 'mm', 'A4', true, 'UTF-8', false);
// 设置文档信息
$pdf-SetCreator('Helloweba');
$pdf-SetAuthor('yueguangguang');
$pdf-SetTitle('Welcome to helloweba.com!');
$pdf-SetSubject('TCPDF Tutorial');
$pdf-SetKeywords('TCPDF, PDF, PHP');
// 设置页眉和页脚信息
$pdf-SetHeaderData('logo.png', 30, 'Helloweba.com', '致力于WEB前端技术在中国的应用',
array(0,64,255), array(0,64,128));
$pdf-setFooterData(array(0,64,0), array(0,64,128));
// 设置页眉和页脚字体
$pdf-setHeaderFont(Array('stsongstdlight', '', '10'));
$pdf-setFooterFont(Array('helvetica', '', '8'));
// 设置默认等宽字体
$pdf-SetDefaultMonospacedFont('courier');
// 设置间距
$pdf-SetMargins(15, 27, 15);
$pdf-SetHeaderMargin(5);
$pdf-SetFooterMargin(10);
// 设置分页
$pdf-SetAutoPageBreak(TRUE, 25);
// set image scale factor
$pdf-setImageScale(1.25);
// set default font subsetting mode
$pdf-setFontSubsetting(true);
//设置字体
$pdf-SetFont('stsongstdlight', '', 14);
$pdf-AddPage();
$str1 = '欢迎来到Helloweba.com';
$pdf-Write(0,$str1,'', 0, 'L', true, 0, false, false, 0);
//输出PDF
$pdf-Output('t.pdf', 'I');
php wkhtmltopdf怎么实现
安装wkhtmltopdf
# apt-get install wkhtmltopdf
从HTML生成PDF文件的基本语法如下:
# wkhtmltopdf input-file output-file
我们可以从任何网页生成PDF:
# wkhtmltopdf example.com example.pdf
或从本地html文件:
# wkhtmltopdf example.html example.pdf
以上命令只能在Linux box 图形环境中使用。如果我们在一个VPS或专用服务器上生成PDF,如果我们执行该命令,我们将得到从下错误:
wkhtmltopdf: cannot connect to X server
为了解决这个问题,我们需要使用一个名为 xvfb 的工具。
Xvfb是一个 X 服务器,能够运行在没有显示硬件和没有物理输入设备的机器上。它使用虚拟内存来模拟一个dumb framebuffer。
回到顶部
安装 xvfb
# apt-get install xvfb
接下来,我们需要创建一个shell脚本:
xvfb-run --server-args="-screen 0, 1024x768x24" /usr/bin/wkhtmltopdf $*
然后将它保存在 /usr/bin/wkhtmltopdf.sh 下
下一步,我们将创建一个 symbolic 链接,这样我们就可以执行脚本而不用编写的完整路径:
# ln -s /usr/bin/wkhtmltopdf.sh /usr/local/bin/wkhtmltopdf2
让我们尝试执行shell脚本,并看看会发生什么。
# wkhtmltopdf2 example.com example.pdf
Loading page (1/2)
Printing pages (2/2)
Done
好,如果能够正确运行。就可以用以下自定义PHP脚本来生成一个PDF文件。
//Turn on output buffering
ob_start();
echo "html";
echo "head";
echo "link href='' rel='stylesheet' type='text/css'";
echo "/head";
你试试吧,我还要在后盾网学习呢,有不会的可以问我
如何使用PHP创建和修改PDF文档
示例一:使用PHP生成一个简单的PDF文档
以下为引用的内容:
require_once('../config/lang/eng.php');
require_once('../tcpdf.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 002');
$pdf-SetSubject('TCPDF Tutorial');
$pdf-SetKeywords('TCPDF, PDF, example, test, guide');
// remove default header/footer
$pdf-setPrintHeader(false);
$pdf-setPrintFooter(false);
// set default monospaced font
$pdf-SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
//set margins
$pdf-SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
//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
$pdf-setLanguageArray($l);
// ---------------------------------------------------------
// set font
$pdf-SetFont('times', 'BI', 20);
// add a page
$pdf-AddPage();
// print a line using Cell()
$pdf-Cell(0, 10, 'Example 002', 1, 1, 'C');
// ---------------------------------------------------------
//Close and output PDF document
$pdf-Output('example_002.pdf', 'I');
?
使用PHP修改PDF文档
下面我们讨论如何使用PHP修改PDF文档。假设我们需要将一张图片通过PHP程序加入到PDF中,示例代码如下:
示例二:使用PHP在PDF中增加一张图片
以下为引用的内容:
require_once('../config/lang/eng.php');
require_once('../tcpdf.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 009');
$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, 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
$pdf-setLanguageArray($l);
// ---------------------------------------------------------
// add a page
$pdf-AddPage();
// set JPEG quality
$pdf-setJPEGQuality(75);
// Image example
$pdf-Image('../images/image_demo.jpg', 50, 50, 100, 150, '', '', '', true, 150);
// ---------------------------------------------------------
//Close and output PDF document
$pdf-Output('example_009.pdf', 'I');
?