可以,php动态缩小,直接显示,没有物理文件

解决方案 »

  1.   

    未做过,抄了手册的例子给你,反正不太难,反而配gd库可能难点,呵呵--------------------------------------------------------
    imagecopyresized
    (PHP 3, PHP 4, PHP 5)imagecopyresized -- 拷贝部分图像并调整大小
    说明
    bool imagecopyresized ( resource dst_image, resource src_image, int dst_x, int dst_y, int src_x, int src_y, int dst_w, int dst_h, int src_w, int src_h )
    imagecopyresized() 将一幅图像中的一块正方形区域拷贝到另一个图像中。dst_image 和 src_image 分别是目标图像和源图像的标识符。如果源和目标的宽度和高度不同,则会进行相应的图像收缩和拉伸。坐标指的是左上角。本函数可用来在同一幅图内部拷贝(如果 dst_image 和 src_image 相同的话)区域,但如果区域交迭的话则结果不可预知。 注: 因为调色板图像限制(255+1 种颜色)有个问题。重采样或过滤图像通常需要多于 255 种颜色,计算新的被重采样的像素及其颜色时采用了一种近似值。对调色板图像尝试分配一个新颜色时,如果失败我们选择了计算结果最接近(理论上)的颜色。这并不总是视觉上最接近的颜色。这可能会产生怪异的结果,例如空白(或者视觉上是空白)的图像。要跳过这个问题,请使用真彩色图像作为目标图像,例如用 imagecreatetruecolor() 创建的。 范例
    例子 1. 调整图像大小本例将以原来的一半大小显示图像。 <?php
    // File and new size
    $filename = 'test.jpg';
    $percent = 0.5;// Content type
    header('Content-type: image/jpeg');// Get new sizes
    list($width, $height) = getimagesize($filename);
    $newwidth = $width * $percent;
    $newheight = $height * $percent;// Load
    $thumb = imagecreatetruecolor($newwidth, $newheight);
    $source = imagecreatefromjpeg($filename);// Resize
    imagecopyresized($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);// Output
    imagejpeg($thumb);
    ?>  图像将以一半大小输出,不过可以用 imagecopyresampled() 得到更好的质量。 
     
    参见
    imagecopyresampled()