WEB开发网
开发学院WEB开发PHP PHP生成PDF文档 with PDFLib 阅读

PHP生成PDF文档 with PDFLib

 2010-12-01 07:15:31 来源:WEB开发网   
核心提示:下面是pie.php文件的代码: <?php// 接受书库$data = $_POST['data'];$slices = explode(",", $data);// 初始化变量$sum = 0;$degrees = Array();$diameter = 200;$radi

  下面是pie.php文件的代码:

  <?php// 接受书库$data = $_POST['data'];$slices = explode(",", $data);// 初始化变量$sum = 0;$degrees = Array();$diameter = 200;$radius = $diameter/2;// 设定每一块饼图的颜色,用数组存储$colours = array(array(0,0,0),array(0,0,1),array(0,1,0),array (1,0,0),array(0,1,1),array(1,1,0),array(1,0,1));// 计算总的数值$sum = array_sum($slices);// 把每一块分别转换成相应的百分数(360度圆)for ($y=0; $y<sizeof($slices); $y++) {$degrees[$y] = ($slices[$y]/$sum) * 360;}// 开始创建 PDF 文件$pdf = PDF_new();PDF_open_file($pdf, "chart.pdf");PDF_begin_page($pdf, 500, 500);PDF_setcolor($pdf, "stroke", "rgb", 1, 1, 0);PDF_moveto($pdf, 250, 250);PDF_lineto($pdf, 350, 250);PDF_stroke($pdf);for ($z=0; $z<sizeof($slices); $z++){// 设定填充颜色PDF_setcolor($pdf, "fill", "rgb", $colours[$z][0],$colours[$z][1], $colours[$z][2]);// 计算每个圆弧的终点坐标$end_x = round(250 + ($radius * cos($last_angle*pi()/180)));$end_y = round(250 + ($radius * sin($last_angle*pi()/180)));// 用直线分割每一块圆弧PDF_moveto($pdf, 250, 250);PDF_lineto($pdf, $end_x, $end_y);// 计算并画出圆弧PDF_arc($pdf, 250, 250, $radius, $last_angle,($last_angle+$degrees[$z]));// 保存最后的角度$last_angle = $last_angle+$degrees[$z];// 填充颜色PDF_fill_stroke($pdf);}// 重画外圆轮廓PDF_circle($pdf, 250, 250, 100);PDF_stroke($pdf);PDF_end_page($pdf);PDF_close ($pdf);// 如果要直接输出到客户端的话,把下面的代码加上$buf = PDF_get_buffer($p);$len = strlen($buf);header("Content-type: application/pdf");header("Content-Length: $len");header("Content-Disposition: inline; filename=Pie_php.pdf");print $buf;PDF_delete($p);?>

  运行上面的程式,并输入不同数值,你将会得到不同的饼图。

  PDFLib是个兼容性非常好的模块,你不仅能用PHP编写,还能用Java,C#,VB.NET,VB5/6(ActiveX /COM),ASP(VBScript/Jscript),Borland Delphi, 视窗系统 Script Host,ColdFusion4.5+,C/C++,Python,Perl,RPG;支持的平台不仅仅有视窗系统,更有Unix/Linux,Mac OS,IBM eServer iSeries 400 和 zSeries S/390等,具体的运行环境请随时访问他们的网站得到最新的资料。

php生成xml和转换[源码]

PHP生成静态页面详解

上一页  1 2 3 4 

Tags:PHP 生成 PDF

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接