/** * resize only content of an image keeping original canvas dimensions. "empty" parts will have $bgcolor. (constrained proportions) * @param integer delta number of pixels to grow or shrink * @param string background-color * @param optional boolean set to true to allow image to grow * @param optional string filter used to resize (grow) the image. Choose from Cubic, Quadratic, Gaussian, Bessel, Hamming, Mitchell, Triangle, Lanczos (default), Sinc, Catrom, Hermite, Hanning, Blackman, Point, Box */ function resizeContent($delta, $bgcolor, $allowgrow = false, $filter = "") { $tmp = new NXImageApi($this->tempfile, $this->tempfile, $this->debug); $this->createCanvas($this->width(), $this->height(), $bgcolor); $tmp->resizeAbsolute($tmp->width() + $delta, $tmp->height() + $delta, $allowgrow, $filter); $gravity = isset($this->gravity) ? " -gravity {$this->gravity} " : ""; $this->_execute("composite {$gravity} -compose Over {$tmp->tempfile} {$this->tempfile} {$this->tempfile}"); $tmp->deltemp(); }
/** * apply automatic modifications of the uploaded images as specified in a ClusterTemplateItem. */ function applyAutoMod($filename) { global $c; $maxwidth = $this->pgnref->getOption("TEXT1"); $maxheight = $this->pgnref->getOption("TEXT2"); if (($maxwidth != "") || ($maxheight != "")) { $imageapi = new NXImageApi($c["devfilespath"]."orig_".$filename, $c["devfilespath"].$filename); if (stristr($maxwidth, "%") && stristr($maxheight, "%")) { $imageapi->resizeRelative($maxwidth, $maxheight); } else if (is_numeric($maxwidth) && is_numeric($maxwidth)) { $imageapi->resizeAbsolute($maxwidth, $maxheight); } $imageapi->save(); } }