php利用tcpdf生成签名盖章的pdf文件并支持中文

下载tcpdf

github

代码:

<?php
header('Content-type:text/html;charset=utf-8');
//引入工具
require_once('./examples/tcpdf_include.php');

//新建一个PDF文档
//L 横排   P竖排
$orientation='P';
//Unit:设置页面的单位。pt:点为单位,mm:毫米为单位,cm:厘米为单位,in:英尺为单位
$unit='pt';
//Format:设置打印格式,一般设置为A4
$format='A4';
//Unicode:为true,输入的文本为Unicode字符文本
$unicode=true;
//Encoding:设置编码格式,默认为utf-8
$encoding='UTF-8';
//Diskcache:为true,通过使用文件系统的临时缓存数据减少RAM的内存使用
$diskcache=false;
$pdfa=false;
//实例化
$pdf = new TCPDF($orientation, $unit, $format, $unicode, $encoding, $diskcache, $pdfa);
//设置文件信息
$pdf->SetCreator(PDF_CREATOR);
$pdf->SetAuthor("jmcx");
$pdf->SetTitle("pdf test");
$pdf->SetSubject('TCPDF Tutorial');
$pdf->SetKeywords('TCPDF, PDF, example, test, guide');
// 页眉距离顶部的距离
$pdf->SetHeaderMargin('0');
//删除预定义的打印 页眉/页尾
$pdf->setPrintHeader(false);
$pdf->setPrintFooter(false);
//设置默认等宽字体
$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
/*设置页面边幅:Left:左边幅Top:顶部边幅Right:右边幅Keepmargins:为true时,覆盖默认的PDF边幅。 */
// $pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP,PDF_MARGIN_RIGHT);
/*设置单元格的边距:Left:左边距Top:顶部边距Right:右边距Bottom:底部边距。*/
// 设置左、上、右的间距
$pdf->SetMargins('15', '10', '15');
$pdf->setCellPaddings(10, 0, 0, 0);
//添加一个页面
$pdf->AddPage();
$name='小花';
$id_num='430802199305180110';
$adress='火星一号';
$time='2023-01-01';
$html='
<style>
  *{padding:0;
    margin:0;}
  .h1 {
    text-align: center;
    padding:0;
  }
  p{
    font-size:11pt;
    padding:0;
  }
  b{
    font-size:13pt;
    font-weight:bold;
  }
  .box{
    overflow:hidden
  }
  .float{float:left;}
  .id_card{padding-left:10px;}
  .text_indent{text-indent:12em;}
</style>
<div style="display:block;">
  <h1 class="h1">测 试 协 议</h1>
  <p>甲方:<u>火星移民局</u></p>
  <p>乙方:<u>'.$name.'    </u>身份证号(法人代码):<u>'.$id_num.'</u></p>
  <p class="text_indent">&nbsp;&nbsp;为了明确甲方和乙方权利和义务,根据火星法律等有关法律、法规和规章,经双方协商,订立本合同,以便共同遵守。</p>

  <b>第一条   标题标题标题</b>
  <p>内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容</p>

  <b>第二条  标题标题标题</b>
  <p>内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容</p>

  <b>第三条  标题标题标题</b>
  <p>内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容内容</p>

  <b>第四条 合同有效期限</b>
  <p>本合同期限为五百年,自双方发生供用关系之日起生效。合同期满后,双方未提出修改意见且继续保持
  供用关系本合同自动延续。</p>

  <b>第五条 合同的变更</b>
  <p>当事人如需要修改合同条款或者补充未尽事宜,须经双方协商一致,签订补充协议,补充协议与本合
  同具有同等效力。若有政策调整涉及本合同内容,按新政策执行。</p>
  <b>第六条 其他约定</b>
  <p>_________________________________________________________________________________________</p>
  <b>第七条 争议解决方式</b>
</div>
  ';

//如果要对html指定 宽度  writeHTMLCell更方便
// $pdf->writeHTMLCell(0, 0, 0, '', $html, 0, 1, 0, true, '', true);
    $pdf->writeHTML($html);
    $pdf->image('./examples/images/zhang.png', 75, 670, 100);
    $pdf->image('./examples/images/sign.png', 400, 685, 100);
    $text1='
    供水人(盖章):<br/>
    代 表(签字):<br/>
    电   话:<br/>
    签约时间:'.$time;
    $text2='
    用水人(盖章):<br/>
    代 表(签字):<br/>
    电   话:'.$phone.'<br/>
    签约时间:'.$time;
    // a4转成px是794px*1123px
    $pdf->MultiCell(200, 20, $text1, 0, 'L', false, 1, 20, 700, true, 0, true, true, 0, 'T', false);
    $pdf->MultiCell(300, 20, $text2, 0, 'L', false, 1, 300, 700, true, 0, true, true, 0, 'T', false);
// $pdf->MultiCell(500, 10, $text2, 0, 'R');
//直接输入到浏览器
$pdf->Output('demo.pdf', 'I');

效果预览:

 demo下载:点击此链接

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值