Example #1
0
 /**
  *
  * @param $language Sprache
  *            für den Place-Holder-Text
  * @return CacheFile
  */
 public function newCacheFileForPlaceholder($language)
 {
     $otherCacheFilename = $this->displayWidth . $this->displayHeight . "{$language}-placeholder.jpg";
     $cachefile = new CacheFile($this->imageProperties(), $this->config, $this->proportion, $this->bgcolor, $this->origWidth(), $this->origHeight());
     $cachefile->setDisplaySize($this->displayWidth, $this->displayHeight);
     $cachefile->cacheFilename = $this->scrambleFilename($otherCacheFilename, $this->config->getScrambleFilename());
     return $cachefile;
 }
 private function getResizedImage(ImageDisplayProperties $imageProperties, $thumbnailMode = false, $bgcolor = 0xff0000)
 {
     if ($thumbnailMode) {
         $proportion = 'bestfit';
     } else {
         $proportion = $this->config->getImageProportions();
     }
     $cacheFile = new CacheFile($imageProperties, $this->config, $proportion, $bgcolor);
     $cacheFileName = $cacheFile->getAbsoluteCacheFile();
     if (file_exists($cacheFileName) && filemtime($cacheFileName) > filemtime($cacheFile->getAbsoluteFile())) {
         // TODO das folgende ist etwas Magie: Bei auto-Breite wird das Bild ansonsten mit Breite 0 dargestellt
         $size = @getimagesize($cacheFile->getAbsoluteCacheFile());
         $cacheFile->setDisplaySize($size[0], $size[1]);
         return $cacheFile;
     } else {
         return $this->generateResizedImage($cacheFile, $proportion, $thumbnailMode, $bgcolor);
     }
 }