电子合同印章生成_全程电子化怎么打印章程

电子合同印章生成_全程电子化怎么打印章程安装composerrequiretecnickcom/tcpdf示例代码try{$order=requestAPI(env(‘A2_URL’).’akinst/order/detail’,[‘user_id’=>Auth::id(),’order_number’=>$request->get(‘p’)]);$data=Arr::get($order,’0′,[]);$data[‘total_amount_ch’]=

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

安装

composer require tecnickcom/tcpdf

示例代码

 try { 
   
    $order = requestAPI(env('A2_URL') . 'akinst/order/detail', ['user_id' => Auth::id(), 'order_number' => $request->get('p')]);
    $data = Arr::get($order,'0',[]);
    $data['total_amount_ch'] = convertAmountToCn(Arr::get($data,'total_amount',0));
    $data['downdate'] = date('Y-m-d',time()).'星期'.mb_substr( "日一二三四五六",date("w" ,time()),1,"utf-8" );;
    $view = view('tcpdf/contract', compact('data'));
    $content = response($view)->getContent();
    $pdf = new \TCPDF('p', 'mm', 'A4', true, 'UTF-8', false);
    // set margins
    $pdf->SetFont('stsongstdlight', '', 10);
    $pdf->SetCreator('创作者');
    $pdf->SetAuthor('作者');
    $pdf->SetTitle('网络销售合同');
    $pdf->SetSubject('网络销售合同');
    $pdf->SetKeywords('网络销售合同');

    // set default header data
    $pdf->SetHeaderData('', 63, '', '头部' , array(0, 0, 0), array(0, 0, 0));

    //$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
    $pdf->setHeaderFont(Array('stsongstdlight', '', '10'));
    $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);

    $pdf->SetMargins(15, 20, 15);

    // set auto page breaks
    $pdf->SetAutoPageBreak(TRUE, 0);

    // set image scale factor
    $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
    $pdf->setPrintHeader(true);
    $pdf->setPrintFooter(false);
    // set some language-dependent strings (optional)
    // ---------------------------------------------------------
    // Add a page
    $pdf->AddPage();
    $html = $content;
    $pdf->setPageMark();

    $pdf->SetXY(15, 20);

    $pdf->writeHTML($html, true, false, true, false, '');

    // ---------------------------------------------------------
    $tmpPath =  "pdf/" . date("Ymd");
    if (!Storage::disk('public')->exists($tmpPath)) { 
   
        Storage::disk('public')->makeDirectory($tmpPath);
    }
    $filename = date("YmdHis") . "_" . rand(0, 10000) . '.pdf';
    $filepath = 'storage/' . $tmpPath . "/" . $filename;
    //循环每页生成公章
    for ($i = 1; $i <= $pdf->getNumPages(); $i++) { 
   
        $pdf->setPage($i);
        $pdf->Image(public_path('/mallWeb/images/official.png'), 140, 220, 50, 43, '', '', '', false, 168, '', false, false, false, false, false, false);
    }
    $pdf->Output(public_path($filepath), 'F');

    if (file_exists(public_path($filepath))) { 
   
        $retval['code'] = 0;
        $retval['filename'] = url($filepath);
        $retval['msg'] = '恭喜,生成合同的PDF文件成功.';
        return $retval;
    } else { 
   
        $retval['code'] = 1;
        $retval['msg'] = '生成合同的PDF文件失败,请联系系统管理员.';
        return $retval;
    }
} catch (\Exception $e) { 
   
    return $e;
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/197776.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 理解几种常见的进程间通信方式

    理解几种常见的进程间通信方式什么是进程间通信广义上讲,进程间通信(Inter-ProcessCommunication,IPC)是指运行在不同进程(不论是否在同一台机器)中的若干线程间的数据交换。从上面的定义可以得出两点:参与通信的进程即可以运行在同一台机器上,也可以运行在各自的设备环境中(RemoteProcedureCallProtocol,RPC)。如果进程是跨机器运行的,则通常是由网络连接在一起。实现方

    2022年10月9日
    0
  • 设计模式之策略模式_策略模式和状态模式

    设计模式之策略模式_策略模式和状态模式概述在策略模式(StrategyPattern)中,一个类的行为或其算法可以在运行时更改。这种类型的设计模式属于行为型模式。在策略模式中,我们创建表示各种策略的对象和一个行为随着策略对象改变而改

    2022年8月16日
    16
  • cJSON的使用方法

    cJSON的使用方法首先,要介绍一下什么是json格式。一.JSON格式简述JSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式。易于人阅读和编写,同时也易于机器解析和生成。它基于JavaScript(StandardECMA-2623rdEdition-December1999)的一个子集。JSON采用完全独立于语言的文本格式,但

    2022年6月29日
    45
  • 简单理解常量、常量池、运行时常量池和字符串常量池

    简单理解常量、常量池、运行时常量池和字符串常量池1、常量常量在java中就值的是一般的字面量,比如字符串,整数,浮点数等等数据。简单理解java中什么叫常量2、常量池,也叫静态常量池,说常量池一定要指明是编译器生产

    2022年7月28日
    7
  • springboot+mockito测试controller层遇到的问题

    springboot+mockito测试controller层遇到的问题

    2021年6月7日
    207
  • MYsql 锁表解决办法

    MYsql 锁表解决办法MySQL锁表解决方法一、我的处理过程1、查进程,主要是查找被锁表的那个进程的IDSHOWPROCESSLIST;2、kill掉锁表的进程IDKILL 10866;//后面的数字即时进程的ID网上找了些资料,了解了一下,先分享一下:二、mysql的锁表问题SHOWPROCESSLIST查看数据库中表的状态,是否被锁;killid //杀掉被锁的表===================…

    2022年5月7日
    42

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号