public void Executar(Pagina pagina, ResultadoReconhecimento resultadoReconhecimento) { if (resultadoReconhecimento == null) { return; } var valoresReconhecidos = this.obtemValoresReconhecidosPaginaServico.Obter( pagina, resultadoReconhecimento); foreach (var valorReconhecido in valoresReconhecidos) { this.valorReconhecidoRepositorio.Salvar(valorReconhecido); } var tripaTexto = string.Empty; foreach (var palavra in resultadoReconhecimento.Palavras) { var palavraReconhecida = new PalavraReconhecida { Texto = palavra.Texto, Altura = palavra.Localizacao.Height, Direita = palavra.Localizacao.Right, Esquerda = palavra.Localizacao.Left, Largura = palavra.Localizacao.Width, Topo = palavra.Localizacao.Top, Pagina = pagina }; this.palavraRepositorio.Salvar(palavraReconhecida); tripaTexto += palavra.Texto + " "; } //// gravando parte das palavras reconhecidas na recvalue também, para facilitar comparações na POC. if (tripaTexto.Trim().Length > 2) { if (tripaTexto.Length > 200) { tripaTexto = tripaTexto.Substring(0, 199) + "(...)"; } var recValueFull = new ValorReconhecido() { TemplateName = "fulltextbsb", CampoTemplate = "fulltextbsb", Pagina = pagina, Value = tripaTexto }; this.valorReconhecidoRepositorio.Salvar(recValueFull); } }
private IList <PalavraReconhecida> AdicionarPalavras(Pagina pagina, IList <dynamic> regioesTexto) { var palavrasReconhecidas = new List <PalavraReconhecida>(); foreach (var dynamic in regioesTexto) { var palavraAtual = new PalavraReconhecida { Texto = dynamic.Texto, Altura = dynamic.Localizacao.Height, Direita = dynamic.Localizacao.Right, Esquerda = dynamic.Localizacao.Left, Largura = dynamic.Localizacao.Width, Topo = dynamic.Localizacao.Top, Pagina = pagina }; palavrasReconhecidas.Add(palavraAtual); } return(palavrasReconhecidas); }