PHPWord 打印 快递单/合同
打印快递单有个特点:
被打印纸的背景是固定的,
你只能 在合适的位置输入快递单的内容,操作步骤如下:
1、制作 word 模板
参考文章 “图解如何用打印机套打快递单”
2、在 模板 中放置“占位符”
打开上面定制好的模板,在 文本输入框 中输入 占位符 文本,如:
用户名:${UserName}
身份证:${IDNo}
效果图如下:【注意:打印的时候,需要把背景图删除!】
这些占位符定义规则,是根据 PHPWord 库定义的,官方教程:
http://phpword.readthedocs.io/en/latest/templates-processing.html?highlight=replace
利用 PHPWord 库,可用动态地 修改替换占位符的内容,参考代码如下:
use common\library\PhpWord\Settings;
use common\library\PhpWord\TemplateProcessor; public function test() {
// 模板文件
$tplFile = DATA_PATH . '/contract/template_1.docx'; // 输出 word 文件名
$fileName = 'phpgo的购卡合同.docx'; // 实例化 模板器
Settings::setOutputEscapingEnabled(true);
$templateProcessor = new TemplateProcessor($tplFile); // 替换 关键字
$templateProcessor->setValue('UserName', '刘德花22');
$templateProcessor->setValue('IDNo', '362422199607020812');
$templateProcessor->setValue('Sex', '女'); // 自动输出下载 word 文件
$tempFileName = $templateProcessor->save();
$docxData = file_read($tempFileName);
unlink($tempFileName); ob_start();
header("Cache-Control: public");
header("Content-type: application/octet-stream");
header("Accept-Ranges: bytes");
if (strpos($_SERVER["HTTP_USER_AGENT"], 'MSIE')) {
header('Content-Disposition: attachment; filename=' . $fileName);
} else if (strpos($_SERVER["HTTP_USER_AGENT"], 'Firefox')) {
header('Content-Disposition: attachment; filename=' . $fileName);
} else {
header('Content-Disposition: attachment; filename=' . $fileName);
}
header("Pragma:no-cache");
header("Expires:0");
echo $docxData;
ob_end_flush();
}
PHPWord 打印 快递单/合同的更多相关文章
- java生成快递单并调用打印机打印
生成快递单过程中需要生成条形码,生成条形码可参考:https://www.cnblogs.com/linbky/p/12091248.html 下面这段代码生成的快递单是完全符合京东快递的10 x 1 ...
- 通过快递100获取快递单号,结合c-lodop热敏纸打印 – 通过菜鸟ISV/自研ERP使用菜鸟电子面单
https://www.1024cc.cn/index.php/2019/04/29/%E6%89%93%E5%8D%B0%E7%94%B5%E5%AD%90%E9%9D%A2%E5%8D%95/ 打 ...
- 个人永久性免费-Excel催化剂功能第97波-快递单号批量查询物流信息
电商时代,快递已进千万家,做电商零售行业的,快递信息的再挖掘,也显得更有意义,是数据精细化运营中必不可少的一环.一般站在系统的角度,数据用于业务流转的增删改查使用,而对于分析需求来说,这些业务系统里集 ...
- 识别快递单号(2) - 加载图片到canvas
传送门: 识别快递单号(1) - 图像处理 转载请注明出处: http://www.cnblogs.com/zaiyuzhong/p/load-image-to-canvas.html 上篇说到我 ...
- php快递单号查询源码
贴下记录下php查询快递单号的源码,能查询各种快递的快递单号记录,中通.圆通快递.顺丰快递等都不是问题.只需要在 爱快递(www.aikuaidi.cn)上面申请一个快递key即可,下面把源码分享下, ...
- VB版本查询快递单号源码
能查询各大快递单号,包括申通快递,圆通快递,韵达快递等国内超过90家以上快递单号查询, 如果想快速搭建一个快递单号查询站我推荐这个,这是地址www.aikuaidi.cn,我分享一个VB Functi ...
- excel快递单号查询工具以及源码
Function kdcx(kd, orderid) Dim Err, url, kdtime, link, Errcode, Status Select Case kd '此处支持的快递公司很多的 ...
- C#快递单号查询源码
源码本人测试过,没有啥问题,能查询快递单号,支持的快递还挺多,圆通快递.申通快递.韵达快递的都支持单号查询的,程序是通过向爱快递(www.aikuaidi.cn)接口传输参数来查询快递单号,我直接把代 ...
- 快递单号查询免费api接口(PHP示例)
快递单号查询API,可以对接顺丰快递查询,邮政快递查询,中通快递查询等.这些快递物流企业,提供了快递单号自动识别接口,快递单号查询接口等快递物流服务.对于电商企业,ERP服务企业,集成此接口到自己的软 ...
随机推荐
- 解决Tomcat6解压版在64位windows系统上无法启动服务的问题
解决Tomcat6解压版在64位windows系统上无法启动服务的问题 由于客户环境为64位windows系统,开发环境一直用32位.tomcat使用6.0.20非安装版.部署时发现在 ...
- 第二篇:服务消费者(rest + ribbon)
一. ribbon简介 ribbon是一个负载均衡客户端,可以很好的控制http和tcp的一些行为,Feign也用到了ribbon,当你使用@ FeignClient,ribbon自动被应用. Rib ...
- MAC系统下Sublime Text3 配置Python3详细教程
MAC系统下Sublime Text3 配置Python3详细教程(亲测有效) https://blog.csdn.net/weixin_41768008/article/details/798590 ...
- vue 兼容IE报错解决方案
IE 页面空白 报错信息 此时页面一片空白 报错原因 Babel 默认只转换新的 JavaScript 语法(如箭头函数),而不转换新的 API ,比如 Iterator.Generator.Set. ...
- wpf XAML 设计器异常,提示NullReferenceException 未将对象引用设置到对象例
设计了一个控件,然后在使用该控件的界面上,出现上图,这个应该是设计器的bug,解决办法 不要在界面上直接写Load事件 在cs构造函数里手动注册,并且在控件的构造函数里增加判断 if (Designe ...
- Java编程的逻辑 (4) - 整数的二进制表示与位运算
本系列文章经补充和完善,已修订整理成书<Java编程的逻辑>,由机械工业出版社华章分社出版,于2018年1月上市热销,读者好评如潮!各大网店和书店有售,欢迎购买,京东自营链接:http: ...
- asserts文件存到外部SD卡里
package com.example.wang.testapp3; import android.content.res.AssetManager; import android.graphics. ...
- Java ArrayList中对象的排序 (Comparable VS Comparator)
我们通常使用Collections.sort()方法来对一个简单的数据列表排序.但是当ArrayList是由自定义对象组成的,就需要使用comparable或者comparator接口了.在使用这两者 ...
- A Connection to the remote computer could not be established
Go to device manager: uninstall WAN Miniport (IP), Wan Miniport(IPv6) and Wan Miniport (PPTP). Refre ...
- ps不显示命令本身的进程号
当我们查看某个服务的进程时候,它会把命令本身的进程显示出来.如下图: 进程号2383 就是我命令本身的进程号,和我实际想看的进程无关 特别是在我们写脚本,kill进程时候会报错: 解决办法可以优化脚本 ...