2010-05-26 127 views

回答

10
<?php 
$width = 100; 
$height = 100; 

$source = @imagecreatefromjpeg("source.jpg"); 
$source_width = imagesx($source); 
$source_height = imagesy($source); 

for($col = 0; $col < $source_width/$width; $col++) 
{ 
    for($row = 0; $row < $source_height/$height; $row++) 
    { 
     $fn = sprintf("img%02d_%02d.jpg", $col, $row); 

     echo("$fn\n"); 

     $im = @imagecreatetruecolor($width, $height); 
     imagecopyresized($im, $source, 0, 0, 
      $col * $width, $row * $height, $width, $height, 
      $width, $height); 
     imagejpeg($im, $fn); 
     imagedestroy($im); 
     } 
    } 
    ?> 

上面的代码从源文件获取输入:“source.jpg”。它将文件分割成100x100像素并将文件命名为img00_01.jpg等等。您可以通过更改$ height和$ width参数来更改所得图像的高度和宽度。

+0

如何以及在哪里看到这些分割图像? – DRAJI 2014-07-09 07:22:29

0

阅读关于PHP GD library。你将需要如下方法:imagecreatefromjpeg()(或其他,取决于你的源文件),imagecreatetruecolor(),imagecopy(),imagejpeg()。