Ejemplo n.º 1
0
        //Métodos Segmentado Semiautomático
        private void semiautomaticoToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (textoSegmentado != null)
            {
                textoSegmentado.LiberarTextoManejado();
            }

            textoSegmentado = textoActual.Copia();

            deshabilitarMenus("Segmentado semiautomático");

            conometro.Start();

            //Segmentación líneas
            textoSegmentado.SegmentacionLineas(perfilActual.segmentacion.interlineadoMedio, perfilActual.segmentacion.incrementoMinimoLineas);
            estadoImagenSegmentada = EstadoImagen.lineasSegmentadas;

            ArreglarLineasForm arreglar = new ArreglarLineasForm(this);

            arreglar.ShowDialog();

            if (estadoImagenSegmentada != EstadoImagen.nula)
            {
                imagenSegmentada.habilitarBotonCerrar(false);
            }

            segmentadoSemiautomaticoBackgroundWorker.RunWorkerAsync();
        }
Ejemplo n.º 2
0
        private void segmentadoAutomaticoBackgroundWorker_DoWork(object sender, DoWorkEventArgs e)
        {
            conometro.Start();

            //Segmentación líneas
            textoSegmentado.SegmentacionLineas(perfilActual.segmentacion.interlineadoMedio, perfilActual.segmentacion.incrementoMinimoLineas);
            estadoImagenSegmentada = EstadoImagen.lineasSegmentadas;

            //Correción Slope
            if (perfilActual.segmentacion.corregirSlope)
            {
                textoSegmentado.CorregirSlope(perfilActual.segmentacion.distanciaMinimaSlope);
            }

            //Correción Slant
            if (perfilActual.segmentacion.corregirSlant)
            {
                textoSegmentado.CorregirSlant(perfilActual.segmentacion.distanciaMinimaSlant);
            }

            //Segmentado Palabras
            textoSegmentado.SegmentacionPalabras(perfilActual.segmentacion.espaciadoMedio, false);

            estadoImagenSegmentada = EstadoImagen.palabrasSegmentadas;

            //Segmentado Caracteres y Esqueleto
            if (perfilActual.segmentacion.precaracteres)
            {
                if (perfilActual.segmentacion.calcularEsqueleto)
                {
                    textoSegmentado.Esqueleto();
                }

                textoSegmentado.SegmentacionCaracteres(perfilActual.segmentacion.grosorMedioTrazo, perfilActual.segmentacion.incrementoMinimoCaracteres, false);
            }
            else
            {
                textoSegmentado.SegmentacionCaracteres(perfilActual.segmentacion.grosorMedioTrazo, perfilActual.segmentacion.incrementoMinimoCaracteres, false);

                if (perfilActual.segmentacion.calcularEsqueleto)
                {
                    textoSegmentado.Esqueleto();
                }
            }

            estadoImagenSegmentada = EstadoImagen.caracteresSegmentados;

            conometro.Stop();
        }