Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Нужен скрипт для разбивки изображения (https://forum.antichat.xyz/showthread.php?t=123087)

ekstab 01.06.2009 08:55

Нужен скрипт для разбивки изображения
 
Т.е. даем картинку (строго только квадрат, ширина и длина равная), на выходе получаем это изображения разбитое на 16 равных квадратов (16 изображений).
Вот пример разбитой фотки
http://s54.radikal.ru/i146/0906/01/76a218a1aecft.jpg
И вообще может уже есть софт подобный ? :)

.::BARS::. 01.06.2009 10:12

есть - фотошоп называется =)))

krypt3r 01.06.2009 12:11

PHP код:

<?php                                    
  
function checkdir ($dir) {             
    if (
is_file ($dir)) {                
      
unlink ($dir);                     
    } elseif (
is_dir ($dir) && is_readable ($dir) && is_writable ($dir)) {
      
$d opendir ($dir);                                                
      while (
FALSE !== ($f readdir ($d))) {                             
        if (
$f == '.' || $f == '..')                                      
          continue;                                                       
        if (
is_file ("$dir/$f"))                                          
          
unlink ("$dir/$f");                                             
      }                                                                   
      
closedir ($d);                                                      
    } elseif (!
is_dir ($dir)) {                                           
      
mkdir ($dir);                                                       
    }                                                                     
  }                                                                       
                                                                          
  
$workdir 'split_image';                                               
  
checkdir ($workdir);                                                    
  
$page "<html><head><title>Split Image</title></head><body>";          
  
$im imagecreatefromgif ('demon2.gif');                                
  
$x imagesx ($im);
  
$y imagesy ($im);
  
$max_num_x 4;
  
$max_num_y 4;
  
$dx $x $max_num_x;
  
$dy $y $max_num_y;
  
$cnt 0;
  
$page .= "<table border=\"1\">";
  for (
$j 0$j $max_num_y$j++) {
    
$page .= "<tr>";
    for (
$i 0$i $max_num_x$i++) {
      
$x1 $dx $i;
      
$y1 $dy $j;
      
$im2 imagecreatetruecolor ($dx$dy);
      if (!
imagecopy ($im2$im00$x1$y1$dx$dy))
        die (
"Error");
      
imagegif ($im2$workdir '/' . ++$cnt '.gif');
      
$page .= "<td><img src=\"$workdir/$cnt.gif\"></td>";
      
imagedestroy ($im2);
    }
    
$page .= "</tr>";
  }
  
imagedestroy ($im);
  
$page .= "</table></body></html>";
  echo 
$page;
?>


ekstab 01.06.2009 14:39

krypt3r Спасибо большое!!!

SL@YER 12.06.2009 22:00

А под jpg/jpeg хтот зделать может ?

FireFenix 12.06.2009 22:31

там используется imagecreatefromgif для получения изображения из файла.

используй соответствующие функции для нужного типа файла :
imagecreatefromgd2
imagecreatefromgd2part
imagecreatefromgd
imagecreatefromgif
imagecreatefromjpeg
imagecreatefrompng
imagecreatefromstring
imagecreatefromwbmp
imagecreatefromxbm
imagecreatefromxpm

Pashkela 14.06.2009 19:25

))))))))))))))) Учите хотя бы PHP, парни, я с ваших каминтцов просто рыдаю:)

Для начала осознайте хотя бы это:

http://us3.php.net/manual/en/function.unlink.php


Время: 21:13