public void GetTableAreas() { var l0 = TestHelper.MakeTextLine(new float[] { 72.0f, 702.8702f, 527.555f, 717.87f }, "l0"); var l1 = TestHelper.MakeTextLine(new float[] { 93.59f, 685.65f, 229.41f, 700.65f }, "l1"); var l2 = TestHelper.MakeTextLine(new float[] { 71.99f, 660.03469f, 90.34772f, 671.0147f }, "l2"); var l3 = TestHelper.MakeTextLine(new float[] { 100.799f, 659.82f, 392.513f, 671.8205f }, "l3"); var l4 = TestHelper.MakeTextLine(new float[] { 71.995f, 641.1378f, 99.5225f, 652.1178f }, "l4"); var l5 = TestHelper.MakeTextLine(new float[] { 107.999f, 641.1378f, 401.308f, 652.1178f }, "l5"); // generate TextEdges tes = new TextEdges(); tes.Generate(new TextLine[] { l0, l1, l2, l3, l4, l5 }); tes.TextedgesForTest["left"][0].IsValid = true; // force one valid var relevant = tes.GetRelevant(); var l6 = TestHelper.MakeTextLine(new float[] { 100.799f, 650f, 392.513f, 660f }, "l6"); var areas = tes.GetTableAreas(new TextLine[] { l0, l1, l2, l3, l4, l5, l6 }, relevant); Assert.Single(areas); Assert.Equal(61.98999f, areas.Keys.First().Item1, 4); Assert.Equal(631.1378f, areas.Keys.First().Item2, 4); Assert.Equal(537.555f, areas.Keys.First().Item3, 4); Assert.Equal(778.54165f, areas.Keys.First().Item4, 4); Assert.Null(areas.Values.First()); }
public void GetRelevant() { var l0 = TestHelper.MakeTextLine(new float[] { 72.0f, 702.8702f, 527.555f, 717.87f }, "l0"); var l1 = TestHelper.MakeTextLine(new float[] { 93.59f, 685.65f, 229.41f, 700.65f }, "l1"); var l2 = TestHelper.MakeTextLine(new float[] { 71.99f, 660.03469f, 90.34772f, 671.0147f }, "l2"); var l3 = TestHelper.MakeTextLine(new float[] { 100.799f, 659.82f, 392.513f, 671.8205f }, "l3"); var l4 = TestHelper.MakeTextLine(new float[] { 71.995f, 641.1378f, 99.5225f, 652.1178f }, "l4"); var l5 = TestHelper.MakeTextLine(new float[] { 107.999f, 641.1378f, 401.308f, 652.1178f }, "l5"); // generate TextEdges tes = new TextEdges(); tes.Generate(new TextLine[] { l0, l1, l2, l3, l4, l5 }); var relevant = tes.GetRelevant(); Assert.Equal(FooTextEdgesRelevant.Length, relevant.Count); for (int r = 0; r < relevant.Count; r++) { Assert.Equal(FooTextEdgesRelevant[r], relevant[r].ToString()); } }