php对接ai图片处理,php – 使用imagick将.psd和.ai转换为PNG / JPG

我解决了它,并将与世界分享!它会将.ai,.psd,.jpg,.png,.gif转换为缩略图.

这是一个需要4个参数的函数:

$dir – 要保存的目录.

$tmpName – 命名不包括扩展名的文件的名称.

$fileType – 自解释.

$size – 大或小.

function thumbGenerator($dir,$tmpName,$fileType,$size){

$saveFileType = "png";

$imagePath = $dir.$tmpName.".".$fileType;

$image = new Imagick();

$image->readimage($imagePath);

if($fileType == "psd"){

$image->setIteratorIndex(0);

}

$dimensions = $image->getImageGeometry();

$width = $dimensions['width'];

$height = $dimensions['height'];

if($size == "large"){

$maxWidth = 720;

$maxHeight =720;

}

if($size == "small"){

$maxWidth = 250;

$maxHeight =250;

}

if($height > $width){

//Portrait

if($height > $maxHeight)

$image->thumbnailImage(0, $maxHeight);

$dimensions = $image->getImageGeometry();

if($dimensions['width'] > $maxWidth){

$image->thumbnailImage($maxWidth, 0);

}

}elseif($height < $width){

//Landscape

$image->thumbnailImage($maxWidth, 0);

}else{

//square

$image->thumbnailImage($maxWidth, 0);

}

if($size == "large"){

$image->writeImage($dir . $tmpName."-lg.".$saveFileType);

}

if($size == "small"){

$image->writeImage($dir . $tmpName."-sm.".$saveFileType);;

}

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/426505.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python初识

1.python的简介   python是一门解释型&#xff0c;弱类型 高级开发编程语言. 2.python安装 (1)python3.x  https://www.python.org/downloads/ (2)pycharm  https://www.jetbrains.com/pycharm/ 3、编写第一个python程序 符号&#xff1a;英文 编码方式&#xff1a;“utf-8…

java学习(58):私有内部类后访问

私有化外部方法访问 public class outer { //外部定义的方法 private class student { public void play() { System.out.println(“只有学生才会喜欢打篮球”); } } public void teacher() { student stu new student(); stu.play(); } public static void main(String[] arg…

java学习(59):static修饰内部类

class Outer { private int num 10; private static int num2 100; //内部类用静态修饰是因为内部类可以看出是外部类的成员public static class Inner {public void show() {//System.out.println(num);System.out.println(num2);}public static void show2() {//System.out…

Python_自定义关键字的使用

1.在Python中新建一个套件MOSAPP&#xff08;一般为APP名称&#xff09;&#xff1a;New Suite→Directory 2.在套件下新建个资源文件My&#xff1a;New Resource:My 3.在My资源文件库下新建个关键字Mytest&#xff1a;New User KeyWord&#xff1a;Mytest 4.在01smoke下新建一…

php http请求xml数据,使用php从HTTP POST请求中检索XML

我检查了类似的问题但没有解决我面临的问题.我正在构建一个Web服务,我想从HTTP POST请求中检索XML数据,操纵数据并返回响应.编写脚本时应考虑以下信息&#xff1a;The communication mode is HTTP POST (not SOAP)The content type is text/xml.The POST request will contain …

java学习(60):java最终类(了解)

最终类 使用关键字 final 对类进行修饰. [访问控制符] final class 类名 { 类体} 例如: public final class MyClass{ ... } 说明: final 不能当做父类, 不能被继承,不能有子类 , 只能被实例化对象 . 如果认为封装类中的某些数据(成员变量) 或者 某些方法(成员方法) 不能…

Lesson 028 —— python 模块

Lesson 028 —— python 模块 在前面的几个章节中我们脚本上是用 python 解释器来编程&#xff0c;如果你从 Python 解释器退出再进入&#xff0c;那么你定义的所有的方法和变量就都消失了。 为此 Python 提供了一个办法&#xff0c;把这些定义存放在文件中&#xff0c;为一些脚…

java 复杂报表,Java报表比较之中国式报表(复杂报表)篇

Java报表工具&#xff0c;首先可以分成两大类&#xff1a;纯Java报表工具&#xff0c;和支持Java的报表工具。支持Java的报表工具我们所说的”支持”Java的报表工具&#xff0e;其实就是非Java的报表工具&#xff0c;但是可以在Java程序中调用.这样的产品很多&#xff0c;总的讲…

java学习(61):适配器

定义一个动物的抽象类 public abstract class Animal { //定义一个抽象类的方法 public abstract void run(); //定义一个抽象类的构造器 public Animal(){ System.out.println(“抽象类的构造器”); } } 定义一个哺乳动物的抽象类 package com.zx; abstract class Mammal ext…

9个图片滑块动画

链接&#xff1a;https://www.html5tricks.com/9-jquery-image-slider.html 实例&#xff1a; 该实例下载链接&#xff1a;https://www.html5tricks.com/jquery-drag-image-slider.html 转载于:https://www.cnblogs.com/wanlibingfeng/p/9915376.html

php 02d,邻苯二甲酸二苯酯(DPhP)

邻苯二甲酸二苯酯(DPhP) CAS:84-62-8 规格&#xff1a;5G 货号&#xff1a;N-11798-5G邻苯二甲酸二苯酯(DPhP) CAS:84-62-8规格&#xff1a;10G 货号&#xff1a;N-11798-10G邻苯二甲酸二苯酯(DPhP)相关物质订购信息型号 …

java学习(62):java抽象类

定义一个抽象的食物方法 package com.zx; //定义一个食物的抽象方法 public abstract class Food { public abstract void taste(); } 定义食物面条 package com.zx; public class Flour extends Food{ public void taste() { System.out.println(“我可以做面条”); } } 定义食…

java学习(63):普通内部类

定义一个普通内部类 package com.zx; public class NotebookComputer01{ //定义一个非私有化的变量 public int num; public class CPU{ //类型 public String number; //运行速度 public long speed; public String counter(int num){ return Integer.toBinaryString(num); } …

php与其它语言组合开发,PHP相对于其它语言有哪些魅力?

PHP起源于自由软件&#xff0c;自由软件就是开放源代码软件&#xff0c;使用PHP进行web应用程序的开发具有以下优势。1、安全性高PHP是开源软件&#xff0c;每个人都可以看到所有的PHP源代码&#xff0c;程序代码与Apache编译在一起的方式也可以让它具有灵活的安全设定。PHP具有…

2018.11.6

1&#xff0c;了解HTML5 设计目的是为了在移动设备上支持多媒体相对之前的版本有哪些改进 认识语义元素和非语义元素 2&#xff0c;css&#xff1a;层叠式样式表是用来定义如何显示HTML元素的 写法&#xff1a;有 内联 内嵌 外部引用的方式 格式&#xff1a;样式名…

java学习(64):类访问私有内部内部类方法

package com.zx; public class NotebookComputer01{ //定义一个非私有化的变量 private int num; private CPU cpu; //方法呗私有化 private class CPU{//类型private String number;//运行速度private long speed;public void counter(int num){System.out.println(Integer.t…

Settings中电池选项-Android13

Settings中电池选项-Android13 1、设置中界面2、电池计算2.1 充电时间计算2.1.1 BatteryUsageStats获取2.1.2 BatteryStatsImpl计算 2.2 电池剩余使用时间2.2.1 Estimate获取2.2.2 BatteryStatsImpl计算 3、电池信息来源4、命令模拟* 日志 [电池]Android 9.0 电池未充电与充电字…

matlab如何找出最小的数据,读取数据并找出全部数据的最大值和最小值

各位老大&#xff0c;如何将以下txt文件中的数据比较大小&#xff0c;获得全部数据的最大值和最小值&#xff0c;并且知道是那个发射组("Shot Number"),我现在的问题时这些数据如何赋予数组&#xff0c;"Shot Point MaxNumber",29"Shot Number",…

JS 判断两个时间的大小(可自由选择精确度:天,小时,分钟,秒)

//可自由选择精确度 如&#xff1a;签到时间&#xff1a;2018-11-07 11&#xff1a;00&#xff1a;00 签退时间&#xff1a;2018-11-07 10&#xff1a;59&#xff1a;59 //判断时间先后 //统一格式 var a $("#fdtmInDate").val(); var aa a.split(T); if (aa.lengt…

java学习(65):类访问static修饰的内部类

public class NotebookComputer01{ //定义一个非私有化的变量 private static int num; private CPU cpu; //方法呗私有化 public static class CPU{ //类型 private String number; //运行速度 private long speed; public void counter(int num){ System.out.println(Integer…