/// <summary> /// Generation CAPTCHA /// </summary> /// <param name="encryptText">The text for captcha</param> public void Create(string encryptText) { try { if (Request.UrlReferrer.AbsolutePath == Request.Url.AbsolutePath) { throw new Exception(); } var encryptorModel = CaptchaHelper.GetEncryptorModel(); var generateImage = CaptchaHelper.GetGenerateImage(); if (string.IsNullOrEmpty(encryptText) || (encryptorModel == null)) { throw new ArgumentException(); } var captchaText = CaptchaHelper.GetEncryption().Decrypt(encryptText, encryptorModel.Password, encryptorModel.Salt); var capthaBmp = generateImage.Generate(captchaText); Response.ContentType = "image/gif"; capthaBmp.Save(Response.OutputStream, ImageFormat.Gif); } catch (Exception) { Response.ContentType = "image/gif"; ErrorBitmap().Save(Response.OutputStream, ImageFormat.Gif); } }