Exemplo n.º 1
0
        public void CaptchaValue()
        {
            WriteCaractere[] caracteres = new WriteCaractere[]
            {
                new WriteCaractere()
                {
                    Caracter = "T"
                },
                new WriteCaractere()
                {
                    Caracter = "e"
                },
                new WriteCaractere()
                {
                    Caracter = "s"
                },
                new WriteCaractere()
                {
                    Caracter = "t"
                },
                new WriteCaractere()
                {
                    Caracter = "s"
                }
            };
            CaptchaAtribute cpt = new CaptchaAtribute(new WriteLine[5], caracteres);

            Assert.AreEqual("Tests", cpt.CaptchaValue);
        }
Exemplo n.º 2
0
        private static CaptchaAtribute CalculateCaptchaAtributes()
        {
            int             wdStep      = Width / 5;
            string          RefCaracter = "ABCDEFGHIJLMNPQRSTUVWXYZ0123456789abcdefghijlmnopqrstuvwxyz";
            CaptchaAtribute result      = new CaptchaAtribute(new WriteLine[5], new WriteCaractere[5]);

            for (int i = 0; i < 5; i++)
            {
                Random    GenH    = new Random((int)DateTime.Now.Ticks & 0x0000CCCC);
                Random    GenV    = new Random((int)DateTime.Now.Ticks & 0x0000FFFF);
                WriteLine cptline = new WriteLine(new PointF[5]);
                for (int j = 0; j < 5; j++)
                {
                    PointF p = new PointF(GenH.Next(wdStep * (j + 1)), GenV.Next(0, Height));
                    cptline.LineSize  = GenH.Next(1, 8);
                    cptline.Color     = GetColor(GenV.Next(0, 140));
                    cptline.Points[j] = p;
                }
                WriteCaractere cptCaracter = new WriteCaractere();
                cptCaracter.Color = GetColor(GenV.Next(0, 140));
                /// startV = wdStep * i;
                cptCaracter.FontSize = GenH.Next(40, 60);
                cptCaracter.Caracter = RefCaracter[GenH.Next(0, RefCaracter.Length - 1)].ToString();
                cptCaracter.FontName = Descriptions.Fonts.GetName(GenV.Next(0, 2));
                PointF pc = new PointF(10 + GenH.Next(wdStep * i, (wdStep * i + 1)), 5 + GenV.Next(0, Height - (cptCaracter.FontSize + 10)));
                cptCaracter.Point    = pc;
                cptCaracter.Style    = Descriptions.Fonts.GetStyle(GenV.Next(0, 3));
                result.Caracteres[i] = cptCaracter;
                result.Lines[i]      = cptline;
            }

            return(result);
        }