O JcropImage Control é um User Control que permite cortar imagem no próprio navegador do cliente e enviar para o servidor, parecido com o que é usado no Facebook, utiliza da biblioteca Jquey(JCrop) para cortar a imagem selecionada. O UC vem com um exemplo de como utilizá-lo, uma maneira simples e dinâmica de recortar fotos no browser.
Obs.: A propriedade DirUploadTemp do UC deve ser configurada com uma pasta no servidor com permissão de leitura e escrita. Versão testada somente em ambiente C#, para JAVA terá que ser feitas algumas modificações, prevista para próxima versão.
Implementando
Event Start /*A IMAGEM DEVE ESTAR NO SERVIDOR*/ JcropImageControl1.ImageUrl = Imagem_JcropImageControl.Link() // OU ASSIM: JcropImageControl1.ImageUrl = "Resources/Imagem_JcropImageControl.jpg" JcropImageControl1.aspectRatio = '1' // 0 - Corte Livre 1 - Corte Retangular ou Quadrado &Imagem.Visible = false TblCortarImage.Visible = True BtnRefresh.Visible = False EndEvent Event Enter /*ESTE EVENTO TEM QUE SER DISPARADO DEPOIS DE RECORTAR A IMAGEM*/ &FILE.Source = &ImagePath IF &FILE.Exists() //PEGA O ARQUIVO E GRAVA NO BANCO //---------IMPLEMENTAR--------- //---------- //MOSTRANDO A IMAGEM CORTADA &Imagem.Visible = True /*Forçar o Navegador não pegar do Cache*/ &ImagePath = &ImagePath + '?' + Trim(Str(Random()*1000000)) //Resources/Imagem_JcropImageControl.jpg?121215414 &Imagem.FromURL(&ImagePath) TblCortarImage.Visible = false BtnRefresh.Visible = True Msg(&ImagePath) //DEPOIS DO ARQUIVO SALVO DELETE O ARQUIVO TEMPORARIO //&FILE.Delete() ELSE &MSG = "Erro: Arquivo não exite -> " + &ImagePath.Trim() MSG(&MSG) ENDIF EndEvent