您好,两种方案:一种直接链接,把pdf文件当作img文件,类似a href=""/这种形式,这样链接:
代码如下:
frame src="pdf文件的地址"/frame
另一种:使用js插件哈.
比较简单易上手的js插件:PDFObject.js,是一个 JavaScript 库用来在HTML中动态嵌入 PDF 文档.
效果如下:
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,这样就可以了.只要把地址写对即可.
当然,其中还可以进一步设置参数,比如你想以多少秒的速度预览,有css,无css等.
FPDF
这个PHP
Class允许你采用纯PHP(更确切地说就是不需要使用PDFlib)来生成PDF文件.它所具有的特点包括:可选择的unit大小,页面格式和页边
距;页眉和页脚管理;自动分页;自动换行与文本自动对齐;支持JPEG与PNG图片格式;支持着色和文件超链接;支持TrueType,Type1与
encoding;支持页面压缩.
PHP脚本之上.
TCPDF
XHTML.
能够把带有图片,复杂表格(包含rowspan/colspan)
HTML_ToPDF
HTML_ToPDF能够把任何HTML文档转换成在任何平台和打印机下界面格式都一样的PDF文档.它包括支持图片转换,使用样式表来定制PDF
文件和错误处理.
cPdfWriter
class.基于TCPDF,FPDF和其它相关脚本.
dompdf
php有很多开源的生成PDF的类库你直接搜下就能找到
类似这样的插件基本都输出同样格式就可以;
这下边是个案列:
require_once('tcpdf.php');
//实例化
// 设置文档信息
$pdf-SetCreator('Helloweba');
$pdf-SetAuthor('yueguangguang');
$pdf-SetTitle('Welcome to helloweba.com!');
$pdf-SetSubject('TCPDF Tutorial');
$pdf-SetKeywords('TCPDF, PDF, PHP');
// 设置页眉和页脚信息
// 设置页眉和页脚字体
$pdf-setHeaderFont(Array('stsongstdlight', '', '10'));
// 设置默认等宽字体
$pdf-SetDefaultMonospacedFont('courier');
// 设置间距
$pdf-SetFooterMargin(10);
// 设置分页
// set image scale factor
// set default font subsetting mode
$pdf-setFontSubsetting(true);
//设置字体
$pdf-AddPage();
$str1 = '欢迎来到Helloweba.com';
$pdf-Write(0,$str1,'', 0, 'L', true, 0, false, false, 0);
//输出PDF
$pdf-Output('t.pdf', 'I');
安装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脚本:
然后将它保存在 /usr/bin/wkhtmltopdf.sh 下
下一步,我们将创建一个 symbolic 链接,这样我们就可以执行脚本而不用编写的完整路径:
让我们尝试执行shell脚本,并看看会发生什么.
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文档
以下为引用的内容:
require_once('../config/lang/eng.php');
require_once('../tcpdf.php');
// create new PDF document
// set document information
$pdf-SetCreator(PDF_CREATOR);
$pdf-SetAuthor('Nicola Asuni');
$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
// add a page
// print a line using Cell()
//Close and output PDF document
使用PHP修改PDF文档
下面我们讨论如何使用PHP修改PDF文档.假设我们需要将一张图片通过PHP程序加入到PDF中,示例代码如下:
示例二:使用PHP在PDF中增加一张图片
// 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));
$pdf-SetHeaderMargin(PDF_MARGIN_HEADER);
$pdf-SetFooterMargin(PDF_MARGIN_FOOTER);
// set JPEG quality
// Image example