Ignore:
Timestamp:
2007/02/25 03:39:19 (16 years ago)
Author:
rebelt
Message:

修正です。

File:
1 edited

Legend:

Unmodified
Added
Removed
  • temp/branches/mobile/data/include/image_converter.inc

    r11449 r11457  
    11<?php 
    2 /* 
     2/** 
    33 * ²èÁü¥Õ¥¡¥¤¥ë¤ÎÊÑ´¹¤ò¹Ô¤¦ 
    4  * 
    5  * 
    6  * 
    74 */ 
    85class ImageConverter { 
    9     var $outputImageDir;         // ÊÑ´¹¸å¤Î²èÁü¤ÎÊݸÀè 
    10     var $outputImageType;        // ÊÑ´¹¸å¤Î²èÁü¤Î·Á¼° 
    11     var $outputImageWidth;       // ÊÑ´¹¸å¤Î²èÁü¤Î²£Éý 
    12     var $outputImageHeight;      // ÊÑ´¹¸å¤Î²èÁü¤Î¹â¤µ 
    13     //var $outputImageFileSize;    // ÊÑ´¹¸å¤Î²èÁü¤Î¥Õ¥¡¥¤¥ë¥µ¥¤¥º 
     6    var $outputImageDir;        // ÊÑ´¹¸å¤Î²èÁü¤ÎÊݸÀè 
     7    var $outputImageType;       // ÊÑ´¹¸å¤Î²èÁü¤Î·Á¼° 
     8    var $outputImageWidth;      // ÊÑ´¹¸å¤Î²èÁü¤Î²£Éý 
     9    var $outputImageHeight;     // ÊÑ´¹¸å¤Î²èÁü¤Î¹â¤µ 
     10    //var $outputImageFileSize; // ÊÑ´¹¸å¤Î²èÁü¤Î¥Õ¥¡¥¤¥ë¥µ¥¤¥º 
    1411 
    15     // ¥³¥ó¥¹¥È¥é¥¯¥¿ 
    16     function ImageConverter(){ 
    17         $this->outputImageDir      = realpath(realpath(dirname( __FILE__))); 
    18         $this->outputImageType     = 'jpeg'; 
    19         $this->outputImageWidth    = 100; 
    20         $this->outputImageHeight   = NULL; 
    21         //$this->outputImageFileSize = NULL; 
    22     } 
     12    // ¥³¥ó¥¹¥È¥é¥¯¥¿ 
     13    function ImageConverter() { 
     14        $this->outputImageDir      = realpath(realpath(dirname( __FILE__))); 
     15        $this->outputImageType     = 'jpeg'; 
     16        $this->outputImageWidth    = 100; 
     17        $this->outputImageHeight   = NULL; 
     18        //$this->outputImageFileSize = NULL; 
     19    } 
    2320 
    24     // ÊÑ´¹¼Â¹Ô 
    25     function execute($inputImagePath) { 
    26         // Á°½èÍý 
    27         $filestat         = @stat($inputImagePath); 
    28         $imagesize        = getimagesize($inputImagePath); 
    29         $inputImageWidth  = $imagesize[0]; 
    30         $inputImageHeight = $imagesize[1]; 
    31         $inputImageType   = $imagesize[2]; 
    32         $outputImageName  = base64_encode($inputImagePath . '_' . $this->outputImageWidth . '_' . $filestat['mtime']) . '.' . $this->outputImageType; 
    33         $outputImagePath  = $this->outputImageDir . '/' . $outputImageName; 
     21    // ÊÑ´¹¼Â¹Ô 
     22    function execute($inputImagePath) { 
     23        // Á°½èÍý 
     24        $filestat         = @stat($inputImagePath); 
     25        $imagesize        = getimagesize($inputImagePath); 
     26        $inputImageWidth  = $imagesize[0]; 
     27        $inputImageHeight = $imagesize[1]; 
     28        $inputImageType   = $imagesize[2]; 
     29        $outputImageName  = base64_encode($inputImagePath . '_' . $this->outputImageWidth . '_' . $filestat['mtime']) . '.' . $this->outputImageType; 
     30        $outputImagePath  = $this->outputImageDir . '/' . $outputImageName; 
    3431 
    35         // ÊÑ´¹¸å¤Î²èÁü¤Î¹â¤µ¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢ÊÑ´¹¸å¤Î²èÁü¤Î²£Éý¤«¤éµá¤á¤ë 
    36         if (is_null($this->outputImageHeight)) { 
    37             $this->outputImageHeight = $inputImageHeight * ($this->outputImageWidth / $inputImageWidth); 
    38         } 
     32        // ÊÑ´¹¸å¤Î²èÁü¤Î¹â¤µ¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢ÊÑ´¹¸å¤Î²èÁü¤Î²£Éý¤«¤éµá¤á¤ë 
     33        if (is_null($this->outputImageHeight)) { 
     34            $this->outputImageHeight = $inputImageHeight * ($this->outputImageWidth / $inputImageWidth); 
     35        } 
    3936 
    40         // ¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤¹¤ë¤«³Îǧ¤·¡¢Â¸ºß¤·¤Ê¤¤¾ì¹ç¤Î¤ßºîÀ®¤¹¤ë 
    41         if (file_exists($outputImagePath)) { 
    42             $info['convert'] = FALSE; 
    43         } else { 
    44             // ¸µ¥Õ¥¡¥¤¥ëºîÀ® 
    45             switch($inputImageType) 
    46             { 
    47                 case 1: 
    48                     // gif 
    49                     $tempImage = imagecreatefromgif ($inputImagePath); 
    50                     break; 
    51                 case 2: 
    52                     // jpeg 
    53                     $tempImage = imagecreatefromjpeg($inputImagePath); 
    54                     break; 
    55                 case 3: 
    56                     // png 
    57                     $tempImage = imagecreatefrompng($inputImagePath); 
    58                     break; 
    59                 case 6: 
    60                     // bmp 
    61                     $tempImage = imagecreatefromwbmp($inputImagePath); 
    62                     break; 
    63             } 
     37        // ¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤¹¤ë¤«³Îǧ¤·¡¢Â¸ºß¤·¤Ê¤¤¾ì¹ç¤Î¤ßºîÀ®¤¹¤ë 
     38        if (file_exists($outputImagePath)) { 
     39            $info['convert'] = FALSE; 
     40        } else { 
     41            // ¸µ¥Õ¥¡¥¤¥ëºîÀ® 
     42            switch($inputImageType) { 
     43            case 1: 
     44                // gif 
     45                $tempImage = imagecreatefromgif($inputImagePath); 
     46                break; 
     47            case 2: 
     48                // jpeg 
     49                $tempImage = imagecreatefromjpeg($inputImagePath); 
     50                break; 
     51            case 3: 
     52                // png 
     53                $tempImage = imagecreatefrompng($inputImagePath); 
     54                break; 
     55            case 6: 
     56                // bmp 
     57                $tempImage = imagecreatefromwbmp($inputImagePath); 
     58                break; 
     59            } 
    6460 
    65             if (!$tempImage) { 
    66                 return false; 
    67             } 
     61            if (!$tempImage) { 
     62                return false; 
     63            } 
    6864 
    69             // ¶õ¥Õ¥¡¥¤¥ëºîÀ® 
    70             $outputImage = ImageCreateTruecolor($this->outputImageWidth, $this->outputImageHeight); 
    71             ImageCopyResampled($outputImage, $tempImage, 0, 0, 0, 0, $this->outputImageWidth, $this->outputImageHeight, $inputImageWidth, $inputImageHeight); 
     65            // ¶õ¥Õ¥¡¥¤¥ëºîÀ® 
     66            $outputImage = ImageCreateTruecolor($this->outputImageWidth, $this->outputImageHeight); 
     67            ImageCopyResampled($outputImage, $tempImage, 0, 0, 0, 0, $this->outputImageWidth, $this->outputImageHeight, $inputImageWidth, $inputImageHeight); 
    7268 
    73             // ¥Õ¥¡¥¤¥ë½ÐÎÏ 
    74             switch($this->outputImageType) 
    75             { 
    76                 case 1: 
    77                 case 'gif': 
    78                     imagegif($outputImage, $outputImagePath); 
    79                     break; 
    80                 default: 
    81                 case 2: 
    82                 case 'jpg': 
    83                 case 'jpeg': 
    84                     imagejpeg($outputImage, $outputImagePath); 
    85                     break; 
    86                 case 3: 
    87                 case 'png': 
    88                     imagepng($outputImage, $outputImagePath); 
    89                     break; 
    90                 case 6: 
    91                 case 'bmp': 
    92                     imagewbmp($outputImage, $outputImagePath); 
    93                     break; 
    94             } 
     69            // ¥Õ¥¡¥¤¥ë½ÐÎÏ 
     70            switch($this->outputImageType) { 
     71            case 1: 
     72            case 'gif': 
     73                imagegif($outputImage, $outputImagePath); 
     74                break; 
     75            default: 
     76            case 2: 
     77            case 'jpg': 
     78            case 'jpeg': 
     79                imagejpeg($outputImage, $outputImagePath); 
     80                break; 
     81            case 3: 
     82            case 'png': 
     83                imagepng($outputImage, $outputImagePath); 
     84                break; 
     85            case 6: 
     86            case 'bmp': 
     87                imagewbmp($outputImage, $outputImagePath); 
     88                break; 
     89            } 
    9590 
    96             // ¥á¥â¥ê³«Êü 
    97             imagedestroy($tempImage); 
    98             imagedestroy($outputImage); 
     91            // ¥á¥â¥ê³«Êü 
     92            imagedestroy($tempImage); 
     93            imagedestroy($outputImage); 
    9994 
    100             $info['convert'] = TRUE; 
    101         } 
     95            $info['convert'] = TRUE; 
     96        } 
    10297 
    103         // return 
    104         /* 
    105         $info['inputImageWidth']   = $inputImageWidth; 
    106         $info['inputImageHeight']  = $inputImageHeight; 
    107         $info['inputImageType']    = $inputImageType; 
    108         $info['inputImagePath']    = $inputImagePath; 
    109         $info['outputImageWidth']  = $this->outputImageWidth; 
    110         $info['outputImageHeight'] = $this->outputImageHeight; 
    111         $info['outputImageType']   = $this->outputImageType; 
    112         */ 
    113         $info['outputImagePath']  = $outputImagePath; 
    114         $info['outputImageName']  = $outputImageName; 
    115         return $info; 
     98        /* 
     99        $info['inputImageWidth']   = $inputImageWidth; 
     100        $info['inputImageHeight']  = $inputImageHeight; 
     101        $info['inputImageType']    = $inputImageType; 
     102        $info['inputImagePath']    = $inputImagePath; 
     103        $info['outputImageWidth']  = $this->outputImageWidth; 
     104        $info['outputImageHeight'] = $this->outputImageHeight; 
     105        $info['outputImageType']   = $this->outputImageType; 
     106        */ 
     107        $info['outputImagePath']  = $outputImagePath; 
     108        $info['outputImageName']  = $outputImageName; 
     109        return $info; 
    116110 
    117     } 
     111    } 
    118112 
    119     // Setter 
    120     function setOutputDir($outputDir)   { $this->outputImageDir    = $outputDir;   } 
    121     function setImageType($imageType)   { $this->outputImageType   = $imageType;   } 
    122     function setImageWidth($imageWidth) { $this->outputImageWidth  = $imageWidth; } 
    123     // function setImageHeight($imageHeight) { $this->outputImageHeight = $imageHeight; } 
     113    // Setter 
     114    function setOutputDir($outputDir)   { $this->outputImageDir    = $outputDir;  } 
     115    function setImageType($imageType)   { $this->outputImageType   = $imageType;  } 
     116    function setImageWidth($imageWidth) { $this->outputImageWidth  = $imageWidth; } 
     117    // function setImageHeight($imageHeight) { $this->outputImageHeight = $imageHeight; } 
    124118 
    125     // Getter 
    126     function getOutputDir()   { return $this->outputDir;         } 
    127     function getImageType()   { return $this->outputImageType;   } 
    128     function getImageWidth()  { return $this->outputImageWidth;  } 
    129     function getImageHeight() { return $this->outputImageHeight; } 
     119    // Getter 
     120    function getOutputDir()   { return $this->outputDir;         } 
     121    function getImageType()   { return $this->outputImageType;   } 
     122    function getImageWidth()  { return $this->outputImageWidth;  } 
     123    function getImageHeight() { return $this->outputImageHeight; } 
    130124 
    131     /* 
    132     * PrivateMethod 
    133     **/ 
    134     function beforeExecute() { 
    135     } 
     125    /* 
     126    * PrivateMethod 
     127     */ 
     128    function beforeExecute() { 
     129    } 
    136130} 
    137131?> 
Note: See TracChangeset for help on using the changeset viewer.