0

私は codeigniter を初めて使用し、それを使用して最初のアプリケーションを構築したばかりですが、画像からサムネイルを生成することに関しては少し困惑しています。

画像は正しくアップロードされますが、親指は生成されず、エラーは発生しません:(

誰かが私に手を差し伸べてくれることを願っています。チャンスは私がただのシジュウカラであり、スペルミスのような本当に単純なことです。

私の画像モデルのコードは次のとおりです。

<?php

class Image_model extends CI_Model {

        var $image_path;

        function Image_model(){

            parent::__construct();

            $this->image_path = realpath(APPPATH.'../'.$this->config->item('dir_dynamic_images'));

        }

        function do_upload(){

            $config = array(
                    'allowed_types' => "jpeg|gif|jpg|png",
                    'upload_path' => $this->image_path,
                    'max_size' => 2000
            );

            $this->load->library('upload', $config);

            $this->upload->do_upload();
            $image_data = $this->upload->data();



            $config = array(
                'source_image' => $image_data['full_path'],
                'new_image' => $this->image_path . '/thumbs',
                'maintain_ratio' => true,
                'width' => 200,
                'height' => 200
            );

            echo $config['new_image'];

            $this->load->library('image_lib', $config);
            $this->image_lib->resize();

        }               

    }
?>
4

2 に答える 2

1

create_thumb パラメータを true に設定し、画像ライブラリを指定する必要があると思います-

 $config = array(
                'image_library' => 'gd2',
                'source_image' => $image_data['full_path'],
                'create_thumb' => true,
                'new_image' => $this->image_path . '/thumbs',
                'maintain_ratio' => true,
                'width' => 200,
                'height' => 200
            );

-でエラーを見つけてみてください

if(!$this->image_lib->resize()) 
{ 
   echo $this->image_lib->display_errors(); 
} 
于 2012-05-24T20:04:20.553 に答える
0

このコードは私のために働いています。うまくいけば、それはあなたのために働くでしょう. codeigniter で画像操作ヘルパーを確認することもできます。設定を初期化することを忘れないでください。

 $config['image_library'] = 'imagemagick';
    $config['library_path'] = '/usr/X11R6/bin/';
    $config['source_image'] = '/path/to/image/mypic.jpg';
    $config['x_axis'] = '100';
    $config['y_axis'] = '60';

    $this->image_lib->initialize($config);

    if ( ! $this->image_lib->crop())
    {
        echo $this->image_lib->display_errors();
    }
于 2012-05-25T15:38:28.773 に答える