如何在正方形中显示图像

时间:2013-05-08 12:55:28

标签: php html css image

我想在400 * 400的固定尺寸的正方形内显示图像。因此,为了保持纵横比,如果宽度更大,则宽度将减小,并且根据纵横比的剩余空间将是充满了一些背景颜色(我可以在div上给出颜色)。同样,如果高度更高,则会调整高度以按纵横比显示高度,然后剩余空间将填充背景。

有人可以帮我解决这个问题吗?这可以用imagemagick完成吗? http://php.net/manual/en/book.imagick.php

任何帮助都将不胜感激。

5 个答案:

答案 0 :(得分:0)

使用phpthumb。

    require_once '/path/to/ThumbLib.inc.php';  
    $thumb = PhpThumbFactory::create('path/to/image.jpg');  

    //$thumb->resize(400, 400);  
    // resize image and make thumbnail by cropping image automatically
    $thumb->adaptiveResize(400, 400)->save('/path/to/thumb.jpg'); ;

更多阅读goto PHPTHUMB

答案 1 :(得分:0)

尝试添加宽度和高度 你可以再次在css:D

这样做

答案 2 :(得分:0)

如果显示尺寸合适的图片足够好,则无需创建缩放版本,只需使用CSS在网页中缩放即可:

x<-1:50
y<-c(x[1:48]+rnorm(48,0,5),rnorm(2,150,5))

QR <- rq(y~x, tau=0.5)
summary(QR, se='boot')

LM<-lm(y~x)

QR.b <- boot.rq(cbind(1,x),y,tau=0.5, R=10000)

t(apply(QR.b$B, 2, quantile, c(0.025,0.975)))
confint(LM)


plot(x,y)
abline(coefficients(LM),col="green")
abline(coefficients(QR),col="blue")

for(i in seq_len(nrow(QR.b$B))) {
  abline(QR.b$B[i,1], QR.b$B[i,2], col='#0000ff01')
}

改变placekitten图像的大小,以查看图像缩放的方式。

在jsFiddle上播放示例:https://jsfiddle.net/Lontevb3/1/

答案 3 :(得分:-4)

  • 计算图像的纵横比
  • 检查其中一个图片尺寸是否长于“框架”
  • 如果两者都较长,则选择两个
  • 的最大尺寸
  • 缩放图片,使最长尺寸与相框(400px)相同
  • 缩放另一个维度,使其为400 *纵横比px

答案 4 :(得分:-5)

如何创建<div>并设置背景图片?