您现在的位置是:首页 > 教程 > pbootcms教程pbootcms教程
pbootcms缩略图裁剪居中裁剪实例教程
宁儒熙2024-09-09 23:20:08pbootcms教程已有人查阅
导读pbootcms模板默认的图片裁剪是从左上角开始裁剪,使用width,height,maxwidth,maxheight等参数进行调节。 但是裁剪出来的图片始终感觉不是那么令人满意。
pbootcms模板默认的图片裁剪是从左上角开始裁剪,使用width,height,maxwidth,maxheight等参数进行调节。但是裁剪出来的图片始终感觉不是那么令人满意。(也许是我不会用)比如多人物合影,pb默认的裁剪是左上,那么这个裁剪就会丢掉C位,那怎么能行。今天来优化一下裁剪图片,让他能简单快捷的裁剪出理想的图片。我想要的效果是不论横图竖图都是居中裁剪。翠花,上干货!解决方案
首先找到裁剪缩略图的方法,文件位置:/core/function/file.php
搜索:function cut_img,大约在447行对cut_img方法进行优化,直接上代码:
首先找到裁剪缩略图的方法,文件位置:/core/function/file.php
搜索:function cut_img,大约在447行对cut_img方法进行优化,直接上代码:
// 剪切图片
function cut_img($src_image, $out_image = null, int $new_width = null, int $new_height = null, $img_qualITy = 90)
{
// 输出地址
if (! $out_image)
$out_image = $src_image;
// 读取配置文件设置
if (! $new_width && ! $new_height)
return;
// 获取图片属性
list ($width, $height, $type, $attr) = getimagesize($src_image);
switch ($type) {
case 1:
$img = imagecreatefromgif($src_image);
break;
case 2:
$img = imagecreatefromjpeg($src_image);
break;
case 3:
$img = imagecreatefrompng($src_image);
break;
}
// 不限定是等比例缩放
if (! $new_width) {
$new_width = floor($width * ($new_height / $height));
}
if (! $new_height) {
$new_height = floor($height * ($new_width / $width));
}
// 创建画布
$new_img = imagecreatetruecolor($new_width, $new_height);
// 创建透明画布,避免黑色
if ($type == 1 || $type == 3) {
$color = imagecolorallocate($new_img, 255, 255, 255);
imagefill($new_img, 0, 0, $color);
imagecolortransparent($new_img, $color);
}
// 先缩放
$scale %
本文标签:
很赞哦! ()
随机图文
-
pbootcms增加foreach指定内容按条件遍历(默认逗号条件)方法
通过二次开发新增的这个标签可以实现按指定的字符进行遍历,不填写char参数默认使用逗号进行分割遍历。如上图:图中想把abcd用竖线进行分割,也可以使用逗号或其他自定义符号。 -
开发手册PbootCMS当前栏目标签介绍
当前栏目标签 ;适用范围:在列表页或详情页使用 ;标签作用:用于输出当前栏目的相关信息 -
PbootCMS灵活多层级URL地址模式配置方法
PbootCMS已经非常灵活的支持多层级URL地址模式,自定义包含如下情况:1、栏目自定义:只需要在栏目的URL名称中进行定义即可,如下图: -
pbootcms详情页不带父级目录直接ID访问的方法
因为博客有时候不同时间段想法不一样,会考虑栏目层级的变化,这时候文章详情链接如果带了父级目录名称那么链接也会随之变化,对于被收录的文章就打不开了。
留言与评论 (共有 条评论) |