热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

php生成条形码打印

***128条形码*@param$content*@param$path*@param$scale*@param$thickness*@throws\BCGDrawExceptio

/**
* 128 条形码
* @param $content
* @param $path
* @param $scale
* @param $thickness
* @throws \BCGDrawException
*/
public function create_barcode2($content,$path,$scale,$thickness){
//根据运单号生成条形码
$color_black = new \BCGColor(0, 0, 0);
$color_white = new \BCGColor(255, 255, 255);
$drawException = null;
try
{
$code = new \BCGcode128();
$code->setScale($scale);
$code->setThickness($thickness); // 条形码的厚度
$code->setForegroundColor($color_black); // 条形码颜色
$code->setBackgroundColor($color_white); // 空白间隙颜色
// $code->setFont($font); //
$code->parse($content); // 条形码需要的数据内容
}
catch(\Exception $exception)
{
$drawException = $exception;
}
//根据以上条件绘制条形码
$drawing = new \BCGDrawing($path, $color_white);
if($drawException) {
$drawing->drawException($drawException);
}else{
$drawing->setBarcode($code);
$drawing->draw();
}
// 生成PNG格式的图片
header('Content-Type: image/jpeg');
// header('Content-Disposition:attachment; filename="barcode.png"'); //自动下载
$drawing->finish(\BCGDrawing::IMG_FORMAT_JPEG);
//$path = $this->create_barcode($content['yundanhao']);
}
public function print_label_code1(){
$id = $this->request->get('id');
$into_store_goods =Db::table('wh_into_store_goods')->where('id',$id)->find();
$im = imagecreatetruecolor(600,180); // 设置画布/
$fOnt= EXTEND_PATH.'/CreateImg/hanwenziti/fangzhengheiti.ttf';
$bgColor = imagecolorallocate($im, 255, 255, 255); // 颜色
imagefill($im,0,0,$bgColor);
$blacka = imagecolorallocate($im, 0, 0, 0); // 颜色
$path1 = ROOT_PATH .'/public/uploads/images/'.create_guid().'no_1.jpg';
$this->create_barcode2($into_store_goods['label_code'],$path1,2,25);
$src_img1 = imagecreatefromjpeg($path1);
$src_w1 = imagesx($src_img1);
$src_h1 = imagesy($src_img1);
$image1 = file_get_contents($path1);
$images1 = substr_replace($image1,pack("Cnn",0x01,300,300),13,5);
file_put_contents($path1,$images1);
imagecopy($im,$src_img1,80,110,0,0,$src_w1,$src_h1);
$path2 = ROOT_PATH .'/public/uploads/images/'.create_guid().'no_2.jpg';
$this->create_barcode2( str_replace(' ', '',$into_store_goods['sku_code']),$path2,1,50);
$src_img2 = imagecreatefromjpeg($path2);
$src_w2 = imagesx($src_img2);
$src_h2 = imagesy($src_img2);
$image2 = file_get_contents($path2);
$images2 = substr_replace($image2,pack("Cnn",0x01,300,300),13,5);
file_put_contents($path2,$images2);
imagecopy($im,$src_img2,80,20,0,0,$src_w2,$src_h2);
$path44 = '/uploads/images/'.create_guid().'no_4.jpg';
$path4 = ROOT_PATH .'/public'.$path44;
imagejpeg($im, $path4);
$image4 = file_get_contents($path4);
$images4 = substr_replace($image4,pack("Cnn",0x01,300,300),13,5);
file_put_contents($path4,$images4);
imagedestroy($im); // 销毁图片
unlink($path1);
unlink($path2);
$this->assign("path",$path44);
$this->view->engine->layout(false);
return $this->fetch("img_large_no");
}















推荐阅读
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • PHP图片截取方法及应用实例
    本文介绍了使用PHP动态切割JPEG图片的方法,并提供了应用实例,包括截取视频图、提取文章内容中的图片地址、裁切图片等问题。详细介绍了相关的PHP函数和参数的使用,以及图片切割的具体步骤。同时,还提供了一些注意事项和优化建议。通过本文的学习,读者可以掌握PHP图片截取的技巧,实现自己的需求。 ... [详细]
  • Java序列化对象传给PHP的方法及原理解析
    本文介绍了Java序列化对象传给PHP的方法及原理,包括Java对象传递的方式、序列化的方式、PHP中的序列化用法介绍、Java是否能反序列化PHP的数据、Java序列化的原理以及解决Java序列化中的问题。同时还解释了序列化的概念和作用,以及代码执行序列化所需要的权限。最后指出,序列化会将对象实例的所有字段都进行序列化,使得数据能够被表示为实例的序列化数据,但只有能够解释该格式的代码才能够确定数据的内容。 ... [详细]
  • Android中高级面试必知必会,积累总结
    本文介绍了Android中高级面试的必知必会内容,并总结了相关经验。文章指出,如今的Android市场对开发人员的要求更高,需要更专业的人才。同时,文章还给出了针对Android岗位的职责和要求,并提供了简历突出的建议。 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • 怎么在PHP项目中实现一个HTTP断点续传功能发布时间:2021-01-1916:26:06来源:亿速云阅读:96作者:Le ... [详细]
  • 《数据结构》学习笔记3——串匹配算法性能评估
    本文主要讨论串匹配算法的性能评估,包括模式匹配、字符种类数量、算法复杂度等内容。通过借助C++中的头文件和库,可以实现对串的匹配操作。其中蛮力算法的复杂度为O(m*n),通过随机取出长度为m的子串作为模式P,在文本T中进行匹配,统计平均复杂度。对于成功和失败的匹配分别进行测试,分析其平均复杂度。详情请参考相关学习资源。 ... [详细]
  • 不同优化算法的比较分析及实验验证
    本文介绍了神经网络优化中常用的优化方法,包括学习率调整和梯度估计修正,并通过实验验证了不同优化算法的效果。实验结果表明,Adam算法在综合考虑学习率调整和梯度估计修正方面表现较好。该研究对于优化神经网络的训练过程具有指导意义。 ... [详细]
  • WebSocket与Socket.io的理解
    WebSocketprotocol是HTML5一种新的协议。它的最大特点就是,服务器可以主动向客户端推送信息,客户端也可以主动向服务器发送信息,是真正的双向平等对话,属于服务器推送 ... [详细]
  • phpcomposer 那个中文镜像是不是凉了 ... [详细]
  • 导出功能protectedvoidbtnExport(objectsender,EventArgse){用来打开下载窗口stringfileName中 ... [详细]
  • ScrollView嵌套Collectionview无痕衔接四向滚动,支持自定义TitleView
    本文介绍了如何实现ScrollView嵌套Collectionview无痕衔接四向滚动,并支持自定义TitleView。通过使用MainScrollView作为最底层,headView作为上部分,TitleView作为中间部分,Collectionview作为下面部分,实现了滚动效果。同时还介绍了使用runtime拦截_notifyDidScroll方法来实现滚动代理的方法。具体实现代码可以在github地址中找到。 ... [详细]
  • 欢乐的票圈重构之旅——RecyclerView的头尾布局增加
    项目重构的Git地址:https:github.comrazerdpFriendCircletreemain-dev项目同步更新的文集:http:www.jianshu.comno ... [详细]
  • 本文介绍了一种在PHP中对二维数组根据某个字段进行排序的方法,以年龄字段为例,按照倒序的方式进行排序,并给出了具体的代码实现。 ... [详细]
author-avatar
瑞铭与我_109
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有