Ejemplo n.º 1
0
        private void dividirButton_Click(object sender, EventArgs e)
        {
            copiaTexto.Dividir(lineaSeleccionada);

            textoEscalado.LiberarTextoManejado();

            textoEscalado = copiaTexto.Copia();
            textoEscalado.EscalacionLineal(((double)lineasSegmentadasPictureBox.Size.Width) / copiaTexto.GetAncho(), ((double)lineasSegmentadasPictureBox.Size.Height) / copiaTexto.GetAlto());

            IntPtr ptrDIB;      //Puntero al DIB
            IntPtr ptrMapaBits; //Puntero al mapa de bits en sí (nos saltamos el bitmapinfoheader y la paleta, si la hay)

            unsafe              //Zona no segura (transformación de punteros C++ a C#)
            {
                ptrDIB = (IntPtr)textoEscalado.GetDIB();

                ptrMapaBits = (IntPtr)textoEscalado.GetMapaBits();
            }

            lineasSegmentadasPictureBox.Image = PrincipalForm.BitmapFromDIB(ptrDIB, ptrMapaBits);

            lineaSeleccionada = -1;
        }