At first I thought you were using some kind of online backend, but actually having this written in offline native Pascal expands the possibilities of practical usage to a different level. Great job!
I think it deserves a place in online package manager.
sounds interesting, i think i will use it too
An interesting topic which motivated me to do it myself - see attachment.
Replaced it by ColorToHLS which has been there all the time (had not used it because I never know whether the H,L,S output covers the full byte range).
Put the component on my github now: https://github.com/wp-xyz/captcha_component. Maybe I ask for OPM integration later.
I have modified the source code, but now it shows empty spaces instead of letters:
I tried to try it. I think that it will need some more significant modifications to provide multilanguage support.
Could I advise you that you use WP's implementation instead?: captcha_component (https://github.com/wp-xyz/captcha_component) and let us know if you can use Cyrillic with it?
TCaptchaChar = record
Character: Char; // Character
Angle: Integer; // Rotation angle of character, in degrees
Position: TPoint; // Position of character within buffer bitmap (for TextOut)
FontIndex: Integer; // Index of font to be used
Color: TColor; // Random color of the character
end;
Or precisely in Character: Char;
I think that Char is not going well with UTF8, and it is widely used in WPs code.
Looks like you've got your wish come true.
should not function Verify(const AText: String): Boolean; rather be function Verify(const AText: String; IgnoreCase: boolean): Boolean; ?This sounds like requesting a complicated password with uppercase and lowercase characters and then checking its validity only with ignorecase...
For some letters for an end-user, it might be impossible to tell which character is lowercase and which one is uppercase.