function size_auto($size = 100) {
global $gd_version;
// lebar - x
// tinngi - y
if ($this -> img["lebar"] < $size AND $this->img["tinggi"] < $size ) {
$this -> img["lebar_thumb"] = $this->img["lebar"];
$this -> img["tinggi_thumb"] = $this->img["tinggi"];
return 0;
} else {
$this -> img["tinggi_thumb"] = $size;
$this -> img["lebar_thumb"] = $size;
}
// Если библиотека версии 1 используем более простое обрезание
if($gd_version == 1) {
//создаём новое изображение
$this->img["des"] = imagecreate($this->img["lebar_thumb"], $this->img["tinggi_thumb"]);
// Вырезаем участок рисунка
if ($this->img["lebar_thumb"] > $this->img["tinggi_thumb"])
@imagecopyresized($this->img["des"], $this->img["src"], 0, 0,
round((max($this->img["lebar"], $this->img["tinggi"]) - min($this->img["lebar"], $this->img["tinggi"]))/2),
0, $this->img["lebar_thumb"], $this->img["tinggi_thumb"],
min($this->img["lebar"], $this->img["tinggi"]), min($this->img["lebar"],$this->img["tinggi"]));
if ($this->img["lebar_thumb"] < $this->img["tinggi_thumb"])
@imagecopyresized($this->img["des"], $this->img["src"], 0, 0, 0, 0, $this->img["lebar_thumb"], $this->img["tinggi_thumb"],
min($this->img["lebar"], $this->img["tinggi"]), min($this->img["lebar"], $this->img["tinggi"]));
if ($this->img["lebar_thumb"] == $this->img["tinggi_thumb"])
@imagecopyresized($this->img["des"], $this->img["src"], 0, 0, 0, 0, $this->img["lebar_thumb"], $this->img["tinggi_thumb"], $this->img["lebar"], $this->img["tinggi"]);
// Если библиотека версии 2 используем более сложное обрезание
} elseif($gd_version == 2) {
//создаём новое изображение
$this->img["des"] = imagecreatetruecolor($this->img["lebar_thumb"],$this->img["tinggi_thumb"]);
// Вырезаем участок рисунка
if ($this->img["lebar_thumb"] > $this->img["tinggi_thumb"])
@imagecopyresampled ($this->img["des"], $this->img["src"], 0, 0,
round((max($this->img["lebar"], $this->img["tinggi"]) - min($this->img["lebar"], $this->img["tinggi"]))/2),
0, $this->img["lebar_thumb"], $this->img["tinggi_thumb"],
min($this->img["lebar"], $this->img["tinggi"]), min($this->img["lebar"],$this->img["tinggi"]));
if ($this->img["lebar_thumb"] < $this->img["tinggi_thumb"])
@imagecopyresampled ($this->img["des"], $this->img["src"], 0, 0, 0, 0, $this->img["lebar_thumb"], $this->img["tinggi_thumb"],
min($this->img["lebar"], $this->img["tinggi"]), min($this->img["lebar"], $this->img["tinggi"]));
if ($this->img["lebar_thumb"] == $this->img["tinggi_thumb"])
@imagecopyresampled ($this->img["des"], $this->img["src"], 0, 0, 0, 0, $this->img["lebar_thumb"], $this->img["tinggi_thumb"], $this->img["lebar"], $this->img["tinggi"]);
}
$this->img["src"] = $this->img["des"];
return 1;
}