ここの情報は古いです。ご理解頂いた上でお取り扱いください。

Changeset 6859


Ignore:
Timestamp:
Apr 30, 2008, 4:43:54 AM (11 years ago)
Author:
ebihara
Message:

OpenPNE_Img::generate_img() から 画像操作およびキャッシュ生成部分のみを OpenPNE_Img_Generator::createImage() に抽出した。OpenPNE_Img_Generator で未定義のプロパティを使用する必要があっため引数で渡すことで対処したが、かなり多くの引数を渡すことになってしまったため、検討の必要がある。

Location:
OpenPNE/branches/work/ebihara/prj_renew_OpenPNE_Img/webapp/lib/OpenPNE
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • OpenPNE/branches/work/ebihara/prj_renew_OpenPNE_Img/webapp/lib/OpenPNE/Img.php

    r6858 r6859  
    135135        }
    136136
    137         // サイズ指定がなく、かつ、形式変換しない場合(GDに変換する必要なし)
    138         if (!$w && !$h && ($this->generator->getSourceFormat() == $this->generator->getOutputFormat())) {
    139             $this->generator->createCacheFromRawImage($this->cache_fullpath, $this->cache_dir, $this->raw_img);
    140             return true;
    141         }
    142 
    143         // create a GD image from raw_img
    144         if (!$source_gdimg  = imagecreatefromstring($this->raw_img)) {
    145             return false;
    146         }
    147 
    148         if ($this->requests['f'] == 'jpg') {
    149             // JPEGの場合、携帯対応
    150             imageinterlace($source_gdimg, 0);
    151         }
    152 
    153         //リサイズ
    154         $output_img = $this->generator->resizeImage($source_gdimg, $w, $h);
    155 
    156         //キャッシュを生成
    157         if ($output_img) {
    158             $this->generator->createCache($this->cache_fullpath, $this->cache_dir, $output_img);
    159         } else {
    160             $this->generator->createCacheFromRawImage($this->cache_fullpath, $this->cache_dir, $this->raw_img);
    161         }
    162 
    163         return true;
     137        return $this->generator->createImage($this->cache_fullpath, $this->cache_dir, $this->raw_img, $w, $h, $this->requests['f']);
    164138    }
    165139
  • OpenPNE/branches/work/ebihara/prj_renew_OpenPNE_Img/webapp/lib/OpenPNE/Img/Generator.php

    r6857 r6859  
    2020    function OpenPNE_Img_Generator()
    2121    {
     22    }
     23
     24    function createImage($cache_fullpath, $cache_dir, $raw_img, $w, $h, $format)
     25    {
     26        // サイズ指定がなく、かつ、形式変換しない場合(GDに変換する必要なし)
     27        if (!$w && !$h && ($this->getSourceFormat() == $this->getOutputFormat())) {
     28            $this->createCacheFromRawImage($cache_fullpath, $cache_dir, $raw_img);
     29            return true;
     30        }
     31
     32        // create a GD image from raw_img
     33        if (!$source_gdimg  = imagecreatefromstring($raw_img)) {
     34            return false;
     35        }
     36
     37        if ($format == 'jpg') {
     38            // JPEGの場合、携帯対応
     39            imageinterlace($source_gdimg, 0);
     40        }
     41
     42        // リサイズ
     43        $output_img = $this->resizeImage($source_gdimg, $w, $h);
     44
     45        // キャッシュを生成
     46        if ($output_img) {
     47            $this->createCache($cache_fullpath, $cache_dir, $output_img);
     48        } else {
     49            $this->createCacheFromRawImage($cache_fullpath, $cache_dir, $raw_img);
     50        }
     51
     52        return true;
    2253    }
    2354
Note: See TracChangeset for help on using the changeset viewer.