PhpWord与GD 和图像处理 函数进行word文档数值替换以及合并插入图片

#PhpWord与GD 和图像处理 函数进行word文档数值替换以及合并插入图片

代码示例

代码如下(示例):

public function test()
    {
   
        //读取模板
        $templateProcessor = new TemplateProcessor("upload/image/a.docx");
        //创建图片
        $url = $this->createImage();
        //替换值  把字符串变量替换成图片
        $templateProcessor->setImageValue('image', [
            'path' => $url,  //路径
            'width' => '100px', //宽度
            'height' => '100px', //高度
        ]);
        //保存至新地址新名称
        $templateProcessor->saveAs('upload/image/a1.docx');

        //第二个添加图片
        //        $word =IOFactory::load(UrlServer::setFileUrl('upload/image/a1.docx'));
        //        $sec=$word->addSection();
        //        $sec->addImage(UrlServer::getFileUrl("upload/image/a.png"),null);
        //       $objWriter = IOFactory::createWriter($word);
        //
        //        $objWriter->save((UrlServer::setFileUrl('upload/image/a11.docx')));
        //        $templateProcessor=new TemplateProcessor(UrlServer::getFileUrl("upload/image/a1.docx"));
        //        dump($templateProcessor);
    }

    /**
     * 创建并合并图片
     *
     * @return void
     */
    public function createImage()
    {
   
        //读取图片模板
        $im = imagecreatefrompng('upload/image/b.png');
        //设置图片属性
        $base = [
            'border' => 10, //图片外边框
            'file_path' => 'upload/img/', //图片保存路径
            'title_height' => 30, //报表名称高度
            'title_font_size' => 16, //报表名称字体大小
            'font_ulr' => '', //字体文件路径
            'text_size' => 12, //正文字体大小
            'row_hight' => 30, //每行数据行高
            'filed_id_width' => 60, //序号列的宽度
            'filed_name_width' => 120, //玩家名称的宽度
            'filed_data_width' => 100, //
            'table_header' => ['序号', '昵称', '数据1', '数据2', '数据3', '数据4', '数据5'], //表头文字
            'column_text_offset_arr' => [45, 90, 55, 55, 55, 65, 65], //表头文字左偏移量
            'row_text_offset_arr' => [50, 110, 90, 90, 90, 90, 90
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值