Eu não uso a biblio de redimensionamento de imagem do CI. Ela é muito ruim
e não atende as minhas necessidades. Essa parte de upload eu faço usando uma
classe que eu já usava antes e coloquei ela como uma library.
Em 23/01/08, Marco Telles <[EMAIL PROTECTED]> escreveu:
>
> Alo Rafael blz ?
>
> Cara eu não sabia que tinha uma biblioteca no CI para tratamento de
> imagem... :(
> Perdi maior tempo a toa. Pelo que olhei rápido a image_lib já faz
> thumbnail e redimensiona não é isso ? Só não está documentada no guia do
> CI....
> Vou olhar teu código e essa biblioteca para ver como eu faço e qualquer
> dúvida volto aqui.
>
> Valeu !!
>
> Marco
>
>
> Rafael V. de Oliveira escreveu:
> > Opa Marcão, passei pela mesma coisa há um tempo atrás....
> >
> > Vou postar meu código pra ver se é isso mesmo que vc quer
> >
> > $dir =
> > './public/repositorio/fotos/'.$this->input->post('evento').'/';
> > (!is_dir($dir)) ? mkdir($dir) : '';
> > $config['upload_path'] = $dir;
> > $config['allowed_types'] = 'gif|jpg|png';
> > $config['max_size'] = '1000';
> > $config['max_width'] = '1024';
> > $config['max_height'] = '1024';
> > $config['encrypt_name'] = TRUE;
> >
> > $this->load->library('upload', $config);
> >
> > if ($this->upload->do_upload())
> > {
> > $this->load->library('image_lib');
> >
> > $dados = $this->upload->data();
> > $foto = $dados['file_name'];
> >
> > //Cria o thumb
> > $config['image_library'] = 'GD2';
> > $config['source_image'] = $dados['full_path'];
> > $config['create_thumb'] = TRUE;
> > $config['maintain_ratio'] = TRUE;
> > $config['width'] = 120;
> > $config['height'] = 120;
> > $this->image_lib->initialize($config);
> > $this->image_lib->resize();
> >
> > //Redimensiona a imagem original
> > $config['create_thumb'] = FALSE;
> > $config['width'] = 500;
> > $config['height'] = 500;
> > $this->image_lib->initialize($config);
> > $this->image_lib->resize();
> >
> > //Pega qual eh o nome do thumb
> > $thumb = explode('.', $foto);
> > $extensao = (count($thumb)) - 1;
> > $extensao = '.'.$thumb[$extensao];
> > $thumb = $thumb[0].'_thumb'.$extensao;
> >
> > Com isto, eu tenho duas imagens. A original, porém redimensionada para
> > 500x500 e um thumb, de 120x120. Como usei criptografia para salvar o
> > nome da foto, nem me preocupei com o nome dela. Porém preciso do
> > último bloco para pegar o nome da thumb. Eu salvo a foto e o thumb
> > ($foto e $thumb).
> >
> > Abraços
> >
> > Marco Telles escreveu:
> >> Prezados,
> >>
> >> estou usando a biblioteca upload e uma classe própria para
> redimensionar
> >> imagem e ao subir uma imagem eu gostaria de:
> >> 1. pegar a imagem tmp e redimensionar antes de salvar;
> >> 2. pegar a imagem gravada e criar um thumbnail (ou seja, redimensionar
> >> também a original).
> >>
> >> O thumbnail eu já resolvi, após gravar usando
> $this->upload->do_upload()
> >> eu pego os dados e envio como parametro para a classe que redimensiona
> e
> >> grava o thumbnail.
> >> Uma opção seria eu pegar os dados em $_FILES e fazer na mão, mas se tem
> >> uma library já pronta, seria melhor né ?
> >> Alguém poderia dar uma idéia ?
> >>
> >> Hoje eu faço como indica no guia do CI:
> >> 1. configuro:
> >> $config['upload_path'] = './images/prod/';
> >> $config['allowed_types'] = 'gif|jpg|png';
> >> $config['max_size'] = '1000';
> >> $config['max_width'] = '1024';
> >> $config['max_height'] = '768';
> >>
> >> 2. carrego:
> >> $this->load->library('upload', $config);
> >>
> >> 3. executo:
> >> if ( ! $this->upload->do_upload() ) {
> >> $error = array('error' =>
> >> $this->upload->display_errors());
> >> echo $error['error'];
> >> }else {
> >> // preparo dados para gravar no banco de dados
> >> $aFotoNew = $this->upload->data();
> >> (...)
> >> }
> >>
> >> Abs
> >>
> >>
> >
> > --
> > Rafael Vieira de Oliveira
> > Faculdade de Direito de SBC - Autarquia Municipal
> > Setor de Automação, Telefonia e Informação
> > (11)4123-0222 Ramal: 208
> > ------------------------------------------------------------------------
> >
> > _______________________________________________
> > Lista mailing list
> > [email protected]
> > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> >
>
> _______________________________________________
> Lista mailing list
> [email protected]
> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>
_______________________________________________
Lista mailing list
[email protected]
http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br