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); }
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); }