Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP图像缩放_Php_Image_Jpeg - Fatal编程技术网

PHP图像缩放

PHP图像缩放,php,image,jpeg,Php,Image,Jpeg,我有一个脚本,我正在使用它来缩放服务器上的原始图像。有时脚本工作得很完美,有时无法正确缩放。但是,看起来目标的黑色区域是正确的,只是没有实际缩放图像。为什么如此不可预测 // check if($original_width > $original_height){ // landscape // vars $scale_ratio = $requested_width/$original_width; $width = $requested_width;

我有一个脚本,我正在使用它来缩放服务器上的原始图像。有时脚本工作得很完美,有时无法正确缩放。但是,看起来目标的黑色区域是正确的,只是没有实际缩放图像。为什么如此不可预测

// check
  if($original_width > $original_height){ // landscape
    // vars
    $scale_ratio = $requested_width/$original_width;
    $width = $requested_width;
    $height = $original_height * $scale_ratio;
  }
  else if($original_height > $original_width){ // portrait
    // vars
    $scale_ratio = $requested_height/$original_height;
    $width = $original_width * $scale_ratio;
    $height = $requested_height;
  }
  else{ // square
    // vars
    $scale_ratio = $requested_height/$original_height;
    $width = $original_width * $scale_ratio;
    $height = $requested_height;
  }

  // create
  $target = imagecreatetruecolor($width, $height);
  $source = imagecreatefromjpeg($filename);

  // copy
  imagecopyresampled($target, $source, 0, 0, 0, 0, $width, $height, $original_width, $original_height);

  // set
  imagejpeg($target, null, $requested_quality);


使用图书馆。我无法推荐足够的。请尝试缩放目标,而不是原始(上传的图像)。最好使用ceejayoz推荐的现有库。我不确定你所说的缩放目标而不是原始库是什么意思。这就是我正在做的。我不想在我的服务器上安装所有这些东西,只是为了让一个图像能够扩展。我更喜欢使用自己的代码,而不是一堆臃肿的第三方代码。我觉得它将bug和跟踪错误保持在最低限度,尤其是在iPhone应用程序中。Php应该能够一致地扩展。我告诉代码将有问题的图像缩放到最大大小。这应该是最简单的事情。这个答案可能会有帮助。。。使用图书馆。我无法推荐足够的。请尝试缩放目标,而不是原始(上传的图像)。最好使用ceejayoz推荐的现有库。我不确定你所说的缩放目标而不是原始库是什么意思。这就是我正在做的。我不想在我的服务器上安装所有这些东西,只是为了让一个图像能够扩展。我更喜欢使用自己的代码,而不是一堆臃肿的第三方代码。我觉得它将bug和跟踪错误保持在最低限度,尤其是在iPhone应用程序中。Php应该能够一致地扩展。我告诉代码将有问题的图像缩放到最大大小。这应该是最简单的事情。这个答案可能会有帮助。。。