Exemplo n.º 1
0
        public static void Get_kv_map(string LocalEmploymentFile)
        {
            var readFile = File.ReadAllBytes(LocalEmploymentFile);

            MemoryStream         stream     = new MemoryStream(readFile);
            AmazonTextractClient abcdclient = new AmazonTextractClient();

            AnalyzeDocumentRequest analyzeDocumentRequest = new AnalyzeDocumentRequest
            {
                Document = new Document
                {
                    Bytes = stream
                },
                FeatureTypes = new List <string>
                {
                    FeatureType.FORMS
                }
            };
            var analyzeDocumentResponse = abcdclient.AnalyzeDocument(analyzeDocumentRequest);

            //Get the text blocks
            List <Block> blocks = analyzeDocumentResponse.Blocks;

            //get key and value maps
            List <Block> key_map   = new List <Block>();
            List <Block> value_map = new List <Block>();
            List <Block> block_map = new List <Block>();

            foreach (Block block in blocks)
            {
                var block_id = block.Id;
                block_map.Add(block);
                if (block.BlockType == BlockType.KEY_VALUE_SET)
                {
                    if (block.EntityTypes.Contains("KEY"))
                    {
                        key_map.Add(block);
                    }
                    else
                    {
                        value_map.Add(block);
                    }
                }
            }

            //Get Key Value relationship
            var getKeyValueRelationship = Get_kv_relationship(key_map, value_map, block_map);

            foreach (KeyValuePair <string, string> kvp in getKeyValueRelationship)
            {
                Console.WriteLine(" {0} : {1}", kvp.Key, kvp.Value);
            }
        }