当前位置: 首页 > news >正文

php将png转为jpg,可设置压缩率

/**

 * 将PNG文件转换为JPG文件

 * @param $pngFilePath string PNG文件路径

 * @param $jpgFilePath string JPG文件路径

 * @param $quality int JPG质量,0-100,值越低,压缩率越高

 * @return void

 * @throws Exception

 */

function convertPngToJpg($pngFilePath, $jpgFilePath, $quality = 80)

{

    // 检查文件是否存在

    if (!file_exists($pngFilePath)) {

        throw new Exception("png文件不存在.");

    }

    // 创建一个新的 PNG 图像资源

    $pngImage = imagecreatefrompng($pngFilePath);

    if ($pngImage === false) {

        throw new Exception("无法创建png资源.");

    }

    // 创建一个新的真彩色图像(无透明度)

    $width = imagesx($pngImage);

    $height = imagesy($pngImage);

    $jpgImage = imagecreatetruecolor($width, $height);

    // 将 PNG 图像复制到真彩色图像上

    imagecopy($jpgImage, $pngImage, 0, 0, 0, 0, $width, $height);

    // 将图像保存为 JPG 文件

    if (!imagejpeg($jpgImage, $jpgFilePath, $quality)) {

        throw new Exception("保存jpg文件失败.");

    }

    // 销毁图像资源

    imagedestroy($pngImage);

    imagedestroy($jpgImage);

}

相关文章:

php将png转为jpg,可设置压缩率

/** * 将PNG文件转换为JPG文件 * param $pngFilePath string PNG文件路径 * param $jpgFilePath string JPG文件路径 * param $quality int JPG质量,0-100,值越低,压缩率越高 * return void * throws Exception */ function convertPngToJpg($pngFilePath, $jpgFile…...

华为HCIP Datacom H12-821 卷37

1.多选题 下面关于Network- Summary-LSA 描述正确的是 A、Network- Summary-LSA中的Metric被设置成从该ABR到达目的网段的开销值 B、Network- Sumary-LSA中的Net mask 被设置成目的网段的网络掩码 C、Network- Summary-LSA 是由ASBR产生的 D、Network- Summary-LSA 中的Li…...

某某会员小程序后端性能优化

背景 某某会员小程序后台提供开放平台能力,为三方油站提供会员积分、优惠劵等api。当用户在油站加油,油站收银会调用我们系统为用户发放积分、优惠劵等。用户反馈慢,三方调用发放积分接口性能极低,耗时30s; 接口情况…...

Docker:基础概念、架构与网络模式详解

1.Docker的基本概念 1.1.什么是docker Docker是一个用于开发,交付和运行应用程序的开放平台.docker使您能够将应用程序域基础框架分开,以便你可以快速开发交付软件.使用docker,你可以管理你的基础架构以管理应用程序相同的方式.通过利用docker用于交付,测试和部署代码的方法,你…...

全国大学生数据建模比赛c题——基于蔬菜类商品的自动定价与补货决策的研究分析

基于蔬菜类商品的自动定价与补货决策的研究分析 摘要 商超蔬菜不易保存,其质量会随着销售时间的增加而变差,影响商超收益,因此,基于各蔬菜品类的历史销售数据,制定合理的销售策略和补货决策对商超的营收十分关键。本文…...

【漏洞复现】飞企互联-FE企业运营管理平台 uploadAttachmentServlet—文件上传漏洞

声明:本文档或演示材料仅用于教育和教学目的。如果任何个人或组织利用本文档中的信息进行非法活动,将与本文档的作者或发布者无关。 一、漏洞描述 企互联-FE企业运营管理平台是一个利用云计算、人工智能、大数据、物联网和移动互联网等现代技术构建的云…...

基于深度学习的语言生成

基于深度学习的语言生成(NLG, Natural Language Generation)是一种利用深度学习模型生成自然语言文本的技术。它在智能写作、自动摘要、对话系统、机器翻译等领域有广泛应用。以下是对这一领域的系统介绍: 1. 任务和目标 语言生成的主要任务…...

Kafka Rebalance详解

作者:耀灵 1.rebalance概览 rebalance中文含义为再平衡。它本质上是一组协议,规定了一个 consumer group 是如何达成一致来分配订阅 topic 的所有分区的。比方说Consumer Group A 有3个consumer 实例,它要消费一个拥有6个分区的topic&#…...

在 Markdown 编辑器中插入 空格 Space 和 空行 Enter

1. 空格 Space &#xA0;2.空行 Enter <br/>...

js逆向-webpack-python

网站&#xff08;base64&#xff09;&#xff1a;aHR0cHM6Ly93d3cuY29pbmdsYXNzLmNvbS96aA 案例响应解密爬取&#xff08;webpack&#xff09; 1、找到目标url 2、进行入口定位&#xff08;此案例使用 ‘decrypt(’ 关键字搜索 &#xff09; 3、找到位置进行分析 --t 为 dat…...

Python精神病算法和自我认知异类数学模型

&#x1f3af;要点 &#x1f3af;空间不确定性和动态相互作用自我认知异类模型 | &#x1f3af;精神病神经元算法推理 | &#x1f3af;集体信念催化个人行动力数学模型 | &#x1f3af;物种基因进化关系网络算法 | &#x1f3af;电路噪声低功耗容错解码算法 &#x1f4dc;和-…...

npm install 报错:PhantomJS not found on PATH

npm install 报错&#xff1a;PhantomJS not found on PATH 整体报错内容 npm ERR! code 1 npm ERR! path G:\work-learn\open-coding\bruno\node_modules\phantomjs-prebuilt npm ERR! command failed npm ERR! command C:\Windows\system32\cmd.exe /d /s /c node install.…...

【C++进阶学习】第六弹——set和map——体会用C++来构建二叉搜索树

set和map基础&#xff1a;【C进阶学习】第五弹——二叉搜索树——二叉树进阶及set和map的铺垫-CSDN博客 前言&#xff1a; 在上篇的学习中&#xff0c;我们已经学习了如何使用C语言来实现二叉搜索树&#xff0c;在C中&#xff0c;我们是有现成的封装好的类模板来实现二叉搜索树…...

sqlmap确定目标/实操

安装kali&#xff0c;kali自带sqlmap&#xff0c;在window系统中跟linux系统操作有区别 sqlmap是一款自动化SQL工具&#xff0c;打开kali终端&#xff0c;输入sqlmap&#xff0c;出现以下界面&#xff0c;就说明sqlmap可用。 sqlmap确定目标 一、sqlmap直连数据库 1、直连数据库…...

Java笔试|面试 —— 对多态性的理解

谈谈对多态性的理解&#xff1a; 一个事物的多种形态&#xff08;编译和运行时状态不一致性&#xff09; 实现机制&#xff1a;通过继承、重写和向上转型&#xff08;Object obj new 子类()&#xff09;来实现。 1.广义上的理解 子类对象的多态性&#xff0c;方法的重写&am…...

从RL的专业角度解惑 instruct GPT的目标函数

作为早期chatGPT背后的核心技术&#xff0c;instruct GPT一直被业界奉为里程碑式的著作。但是这篇论文关于RL的部分确写的非常模糊&#xff0c;几乎一笔带过。当我们去仔细审查它的目标函数的时候&#xff0c;心中不免有诸多困惑。特别是作者提到用PPO来做强化学习&#xff0c;…...

location匹配的优先级和重定向

nginx的重定向&#xff08;rewrite&#xff09; location 匹配 location匹配的就是后面的uri /wordpress 192.168.233.10/wordpress location匹配的分类和优先级 1.精确匹配 location / 对字符串进行完全匹配&#xff0c;必须完全符合 2.正则匹配 ^-前缀级别&#xff…...

观察矩阵(View Matrix)、投影矩阵(Projection Matrix)、视口矩阵(Window Matrix)及VPM矩阵及它们之间的关系

V表示摄像机的观察矩阵&#xff08;View Matrix&#xff09;&#xff0c;它的作用是把对象从世界坐标系变换到摄像机坐标系。因此&#xff0c;对于世界坐标系下的坐标值worldCoord(x0, y0, z0)&#xff0c;如果希望使用观察矩阵VM将其变换为摄像机坐标系下的坐标值localCoord(x…...

谷粒商城学习笔记-19-快速开发-逆向生成所有微服务基本CRUD代码

文章目录 一&#xff0c;使用逆向工程步骤梳理1&#xff0c;修改逆向工程的application.yml配置2&#xff0c;修改逆向工程的generator.properties配置3&#xff0c;以Debug模式启动逆向工程4&#xff0c;使用逆向工程生成代码5&#xff0c;整合生成的代码到对应的模块中 二&am…...

时序预测 | Matlab实现TCN-Transformer的时间序列预测

时序预测 | Matlab实现TCN-Transformer的时间序列预测 目录 时序预测 | Matlab实现TCN-Transformer的时间序列预测效果一览基本介绍程序设计 效果一览 基本介绍 基于TCN-Transformer模型的时间序列预测&#xff0c;可以用于做光伏发电功率预测&#xff0c;风速预测&#xff0c;…...

【ElevenLabs新疆话语音落地实战】:20年语音AI专家亲授3大合规适配难点与5步部署清单

更多请点击&#xff1a; https://kaifayun.com 第一章&#xff1a;ElevenLabs新疆话语音落地的背景与战略价值 随着国家“东数西算”工程纵深推进和多语种人工智能基础设施建设提速&#xff0c;维吾尔语作为我国重要的少数民族语言之一&#xff0c;其语音合成技术的自主可控与…...

紧急更新|Midjourney即将下线--blueprint实验性指令!最后48小时掌握蓝晒法风格不可逆生成逻辑

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Midjourney蓝晒法风格的底层视觉基因解码 蓝晒法&#xff08;Cyanotype&#xff09;作为19世纪诞生的古典摄影工艺&#xff0c;其视觉基因并非仅由普鲁士蓝染料决定&#xff0c;而是一套由化学反应、物…...

GNSS信号丢了也不怕:这款组合导航系统真硬核

在无人系统快速发展的今天&#xff0c;精准可靠的定位导航已成为各类智能装备的核心刚需。然而&#xff0c;传统高精度组合导航系统往往价格昂贵&#xff0c;让许多项目团队望而却步。ER-GNSS/MINS-03为了打破这一僵局——将战术级MEMS惯性器件与全系统全频点双天线GNSS模块深度…...

Unity AI部署核心指南:Barracuda零拷贝推理实战

1. Barracuda不是“另一个推理引擎”&#xff0c;而是Unity原生ML部署的唯一合理解在Unity项目里跑一个训练好的PyTorch模型&#xff0c;你第一反应是不是导出ONNX、写个C# wrapper、再手动管理Tensor内存&#xff1f;我试过——两周时间卡在GPU张量生命周期上&#xff0c;最终…...

抖音获客失效?拆解本地商家流量困局的底层逻辑与破局路径

一、一个反直觉的数据先看两组数据&#xff0c;它们指向同一个方向。第一组&#xff1a;2025年&#xff0c;抖音本地生活服务GMV突破8500亿元。同期&#xff0c;入驻商家达到1519.8万家动销门店&#xff0c;399万新商家在一年内涌入。第二组&#xff1a;2026年Q1&#xff0c;抖…...

淘金币自动化脚本:每天节省20分钟,解放双手的终极指南

淘金币自动化脚本&#xff1a;每天节省20分钟&#xff0c;解放双手的终极指南 【免费下载链接】taojinbi 淘宝淘金币自动执行脚本&#xff0c;包含蚂蚁森林收取能量&#xff0c;芭芭农场全任务&#xff0c;解放你的双手 项目地址: https://gitcode.com/gh_mirrors/ta/taojinb…...

【大模型12步学习路线 · 第12步 · ②代码篇】Qwen3-VL + ColQwen2.5 + Qdrant 多模态 RAG 全栈实战

【大模型12步学习路线 第12步 ②代码篇】Qwen3-VL + ColQwen2.5 + Qdrant 多模态 RAG 全栈实战 系列定位:「大模型正确学习顺序」12 步系列 第 12 步 多模态 的 ②代码篇。 前置阅读:①原理篇 —— VLM 全景 + Multimodal RAG 三大架构。 本篇产出:Qwen3-VL-8B 视觉问答上手…...

WZLBadge高级定制:从颜色位置到字体半径的完全自定义

WZLBadge高级定制&#xff1a;从颜色位置到字体半径的完全自定义 【免费下载链接】WZLBadge //An one-line tool to show styles of badge for UIView 项目地址: https://gitcode.com/gh_mirrors/wz/WZLBadge WZLBadge是一款功能强大的iOS徽章工具&#xff0c;能够帮助开…...

【YOLOv8多模态融合改进】| IEEE2025 分层特征融合模块HFF 自适应权重 + 三重注意力,强化弱小目标细节保留

一、本文介绍 本文记录的是利用分层特征融合模块HFF改进YOLOv8的可见光-红外双模态目标检测。 HFF(Hierarchical Feature Fusion)通过浅层-深层特征逐元素融合、空间-通道-像素三重注意力建模与自适应加权分配结合,实现多模态来源下不同语义层级特征的自适应重要性学习与精…...

ElevenLabs芬兰语TTS部署踩坑实录(含CI/CD流水线集成模板):1次失败=2.3小时调试,我们帮你省下87%时间

更多请点击&#xff1a; https://kaifayun.com 第一章&#xff1a;ElevenLabs芬兰语TTS部署踩坑实录&#xff08;含CI/CD流水线集成模板&#xff09;&#xff1a;1次失败2.3小时调试&#xff0c;我们帮你省下87%时间 核心痛点&#xff1a;芬兰语语音合成的隐性陷阱 ElevenLab…...