Пример #1
0
 public frmRecortar(frmEditor f = null, Image i = null)
 {
     InitializeComponent();
     img            = (Bitmap)i;
     form           = f;
     this.Cursor    = new Cursor(Cursor.Current.Handle);
     imgMain.Cursor = this.Cursor;
     pBase.Cursor   = this.Cursor;
 }
 public frmVistaPrevia(frmEditor f = null, Image i = null)
 {
     InitializeComponent();
     frm = f;
     b   = (Bitmap)i;
 }
        private void btnCambiar_Click(object sender, EventArgs e)
        {
            Image  bmp;
            String archivo = "";

            if (ofdEntrada.ShowDialog() == DialogResult.OK)
            {
                archivo = ofdEntrada.FileName;
                try
                {
                    using (FileStream f = new FileStream(archivo, FileMode.Open, FileAccess.Read))
                    {
                        bmp = Image.FromStream(f);
                    }
                }
                catch (Exception exe)
                {
                    Console.WriteLine(exe.Message);
                    try
                    {
                        var im = new PictureBox();
                        im.SizeMode = PictureBoxSizeMode.AutoSize;
                        im.Load(archivo);
                        bmp = im.Image;
                        im.Dispose();
                    }catch (Exception exe2)
                    {
                        Console.WriteLine(exe2.Message);
                        MessageBox.Show("Archivo pesa demasiado o esta dañado.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        return;
                    }
                }
                //validar tamaño
                if (bmp.Width > 640)
                {
                    //demasiado pesada
                    //emergente ofreciendo cambiarla
                    if (MessageBox.Show("La imagen seleccionada supera el peso máximo soportado por la plataforma web.\n¿Desea modificar la imagen para poder utilizarla?", "Imagen demasiado pesada.", MessageBoxButtons.YesNo) == DialogResult.Yes)
                    {
                        frmEditor f = new frmEditor(this, bmp);
                        if (f.ShowDialog() != DialogResult.OK)
                        {
                            return;
                        }
                        bmp.Dispose();
                        archivo = Path.GetTempPath() + archivo.Split('\\').Last();
                        Recibida.Save(archivo);
                        Recibida.Dispose();
                    }
                    else
                    {
                        return;
                    }
                }
            }
            else
            {
                return;
            }
            if (Estado.Equals("Cambiar"))
            {
                ClienteHttp.Peticion.ActualizarFoto(GetId(fotos[Actual - 1]), archivo, SesionManager.Token);
            }
            else
            {
                ClienteHttp.Peticion.SubirFoto(IdDepto, archivo, SesionManager.Token);
            }
            Thread.Sleep(50);
            MessageBox.Show("La imagen ha sido cargada correctamente.", "Imagen cargada", MessageBoxButtons.OK);
            CargarFotos();
        }