/**
* 功能说明
* 将files/model_24/images/下的所有图片文件进行等比例缩放 到$image40w 尺寸 然后放到files/model_24/model.png图片的指定位置后保存到files/model_24/after/下
*/
function model_24()
{
//要求 货物图片大小为567x567
$path = "files/model_24/";
//得到该目录下面的所有文件
$file=scandir($path."images/");
foreach ($file as $index => $fileName)
{
//如果是文件夹则不继续执行
if(trim(str_replace(".", "", $fileName)) == '')continue;
//得到模板底图图片文件A
$model = imagecreatefrompng($path."model.png");
list($modelWidth,$modelHeight) = getimagesize($path."model.png");
//得到需要放到底图上的图片B
$productImage = file_get_contents($path."images/".$fileName);
$productImage = imagecreatefromstring($productImage);
list($productImageWidth,$productImageHeight) = getimagesize($path."images/".$fileName); //定义一个空白图片 也就是对图片B进行缩放
$image40w = 45;//缩放后的尺寸
$image40h = 45;
$image40 = imagecreatetruecolor($image40w, $image40h);
$white = imagecolorallocate($image40, 255, 255, 255);
imagefill($image40, 0, 0, $white); $productImageHeightRsize = 0;
$productImageWidthRsize = 0;
//如果货物的宽度大于高度 那么宽度定死为$image40size 否则就是高度定死$image40size
if($productImageWidth > $productImageHeight)
{
$scale = $image40w / $productImageWidth;
$productImageHeightRsize = $scale * $productImageHeight;
$productImageWidthRsize = $image40w;
}
else
{
$scale = $image40h / $productImageHeight;
$productImageWidthRsize = $scale * $productImageWidth;
$productImageHeightRsize = $image40h;
}
//定义货物图片坐标 以便左右与上下居中
$x = ($image40w - $productImageWidthRsize) / 2;
$y = ($image40h - $productImageHeightRsize) / 2;
//将商品图片进行缩放
imagecopyresized($image40, $productImage, $x, $y, 0, 0, $productImageWidthRsize, $productImageHeightRsize,$productImageWidth,$productImageHeight);
imagecopymerge($model, $image40, 16, 552, 0, 0, $image40w, $image40h, 100);
imagepng($model,$path."after/".$fileName);
}
echo "model_24()结束<br/>";
}

php 图片缩放然后合成并保存的更多相关文章

  1. 常用的图片相关方法,读取,保存,压缩,缩放,旋转,drawable转化

    import android.content.Context; import android.content.res.AssetManager; import android.content.res. ...

  2. php使用imagick模块实现图片缩放、裁剪、压缩示例

    PHP 使用Imagick模块 缩放,裁剪,压缩图片 包括gif图片 缩放 裁剪 复制代码代码如下: /**  * 图片裁剪  * 裁剪规则:  *   1. 高度为空或为零   按宽度缩放 高度自适 ...

  3. Android图片缩放方法

    安卓开发中应用到图片的处理时候,我们通常会怎么缩放操作呢,来看下面的两种做法: 方法1:按固定比例进行缩放 在开发一些软件,如新闻客户端,很多时候要显示图片的缩略图,由于手机屏幕限制,一般情况下,我们 ...

  4. Android安卓开发中图片缩放讲解

    安卓开发中应用到图片的处理时候,我们通常会怎么缩放操作呢,来看下面的两种做法: 方法1:按固定比例进行缩放 在开发一些软件,如新闻客户端,很多时候要显示图片的缩略图,由于手机屏幕限制,一般情况下,我们 ...

  5. java多图片上传--前端实现预览--图片压缩 、图片缩放,区域裁剪,水印,旋转,保持比例。

    java多图片上传--前端实现预览 前端代码: https://pan.baidu.com/s/1cqKbmjBSXOhFX4HR1XGkyQ 解压后: java后台: <!--文件上传--&g ...

  6. 52、图片缩放库 PhotoView

    PhotoView的简介: 这是一个图片查看库,实现图片浏览功能,支持pinch(捏合)手势或者点击放大缩小.支持在ViewPager中翻页浏览图片. PhotoView 是一款扩展自Android ...

  7. CSS实现图片缩放特效

    今天是感恩节,祝大家感恩节快乐哦!最近天冷了,大家注意保暖哟.下面一起看看小颖写的demo吧. html代码: <!DOCTYPE html> <html> <head& ...

  8. HTML5 图片缩放功能

    腾讯新闻上用的插件(xw.qq.com) 缩放插件scale.js (function(window, undefined) { var document = window.document, sup ...

  9. PHP图片裁剪_图片缩放_PHP生成缩略图

    在制作网页过程中,为了排版整齐美观,对网页中的图片处理成固定大小尺寸的图片,或是要截去图片边角中含有水印的图片,对于图片量多,每天更新大量图,靠人工PS处理是不现实的,那么有没有自动处理图片的程序了! ...

随机推荐

  1. Win32汇编学习(10):对话框(1)

    现在我们开始学习一些有关GUI编程的有趣的部分:以对话框为主要界面的应用程序. 理论: 如果您仔细关注过前一个程序就会发现:您无法按TAB键从一个子窗口控件跳到另一个子窗口控件,要想转移的话只有 用鼠 ...

  2. (转载)Unity UGUI点击不同Button执行不同的方法(无参方法)

      将脚本随意挂在任何位置 但是这个btnParent一定是 按钮的父节点   脚本很简单自己敲一遍就全都明白了 上脚本 OnClickTest using UnityEngine; using Un ...

  3. CSS基础【1】:体验CSS

    CSS起源 web的衰落:在 web 早期(1990-1993),html是一个很局限的语言.几乎完全由用于描述段落,超链接,列表和标题的结构化元素组成.随着万维网的出现(用户交互体验的加强),对 h ...

  4. 导出html table 数据到Excel

    其实只需要复制  粘贴.... <script type="text/javascript" src="http://code.jquery.com/jquery- ...

  5. js运行机制详解:event loop

    总结 阮一峰老师的博客 一.为什么JavaScript是单线程 JavaScript语言的一大特点就是单线程 那么,为什么JavaScript不能有多个线程呢?这样能提高效率啊. JavaScript ...

  6. phpmyadmin-您可能正在上传很大的文件,请参考文档来寻找解决方法

    phpmyadmin-您可能正在上传很大的文件,请参考文档来寻找解决方法   实这个很简单的只要更改php.ini里三个配置即可.(见下面加粗部分,改成你自己的需求即可) ; Maximum allo ...

  7. [Hibernate] 通过 properties 类和 hql 语句进行动态查询

    //需要保证Emp和EmpProperties中的setter和getter以及属性以及 参数占位符(:eName) 的一致//动态查询 @Test public void test4(){ EmpP ...

  8. [数据结构]P2.1 二叉搜索树

    二叉树就是每个节点最多有两个分叉的树.这里我们写一写一个典型的例子二叉搜索树,它存在的实际意义是什么呢? 在P1.1链表中,我们清楚了链表的优势是善于删除添加节点,但是其取值很慢:数组的优势是善于取值 ...

  9. 组件、框架、Packagist、Composer

    组件是一组打包的代码,是一系列相关的类.接口和Trait,用于帮助我们解决PHP应用中某个具体问题. 优秀的PHP组件具备以下特性: 作用单一:专注于解决一个问题,而且使用简单的接口封装功能 小型:小 ...

  10. 『TensorFlow』读书笔记_Inception_V3_下

    极为庞大的网络结构,不过下一节的ResNet也不小 线性的组成,结构大体如下: 常规卷积部分->Inception模块组1->Inception模块组2->Inception模块组3 ...