Beispiel #1
0
        public string GetTemplateName()
        {
            string str = "";

            if (_dic.ContainsKey("选择题"))
            {
                str += "选择题" + _dic["选择题"].Count;
            }
            if (_dic.ContainsKey("非选择题"))
            {
                str += "_非选择题" + _dic["非选择题"].Count;
            }
            if (Correctrect != null)
            {
                str += "_" + Correctrect.ToString("-");
            }
            return(str);
        }
Beispiel #2
0
        public void SetFeaturePoint(List <Rectangle> list, Rectangle cr)
        {
            if (Correctrect.ToString() != cr.ToString())
            {
                return;
            }
            Point  midpoint = new Point(cr.Width / 2, cr.Height / 2);
            string key      = "特征点";

            if (!_dic.ContainsKey(key))
            {
                _dic[key] = new List <Area>();
            }
            _dic[key].Clear();
            for (int i = 0; i < list.Count; i++)
            {
                Rectangle r = list[i];
                r.Offset(-cr.X, -cr.Y);
                _dic[key].Add(new FeaturePoint(r, midpoint));
            }
        }
Beispiel #3
0
        public XmlDocument SaveToXmlDoc()
        {
            XmlDocument xmlDoc = new XmlDocument();
            XmlElement  root   = xmlDoc.CreateElement(NodeName);

            xmlDoc.AppendChild(root);
            XmlNode path = xmlDoc.CreateElement("BASE");

            root.AppendChild(path);
            path.InnerXml = Imgsize.ToXmlString() + _imagefilename.ToXmlString("PATH") + Correctrect.ToXmlString().ToXmlString("CORRECTRECT");

            foreach (string s in new string[] { "特征点-FEATUREPOINTSAREA", "考号-KAOHAOAREA", "姓名-NAMEAREA", "选择题-SINGLECHOICES", "非选择题-UNCHOOSES", "选区变黑-BLACKAREA", "选区变白-WHITEAREA" })
            {
                string  name   = s.Substring(0, s.IndexOf("-"));
                string  ENname = s.Substring(s.IndexOf("-") + 1);
                XmlNode list   = xmlDoc.CreateElement(ENname + "S");
                root.AppendChild(list);
                int i = 0;
                if (_dic.ContainsKey(name))
                {
                    foreach (Area I in _dic[name])
                    {
                        XmlElement xe = xmlDoc.CreateElement(ENname);
                        xe.SetAttribute("ID", i.ToString());
                        xe.InnerXml = I.ToXmlString();
                        list.AppendChild(xe);
                        i++;
                    }
                }
            }
            return(xmlDoc);
        }