Dieser Artikel teilt zwei Beispiele für Sie, ich glaube, Sie werden es mögen.
Beispiel 1: Generieren Sie nach dem Zufallsprinzip Verifizierungscode -Bilder und geben Sie sie als PNG -Datei aus
Reproduktionsbild:
Import Java.awt.Color; Import Java.awt.font; Import Java.awt.graphics; Import Java.awt.image.BuffeedImage; Import Java.io.file; Import Java.io.ioxception; Import Java.util.Random; import Javax.imageo.imageo; public class myTest10 {public static random random = new randal (); public static int r (int min, int max) {int num = 0; num = random.nextint (max-min)+min; Rückgabe num; } public static void main (String [] args) löst ioException {// Todo automatisch generierte Methode Stub // Erstellen eines Bildes int w = 120; int H = 50; Bufferedimage img = new bufferedImage (w, h, bufferedimage.type_int_rgb); // Zeichnen Sie ein Rechteck auf das Bild als Hintergrundgrafik g = img.getGraphics (); G.SetColor (neue Farbe (R (50.250), R (50,250), R (50.250)); G.FillRect (0, 0, W, H); String str = "aqzxswedcfrvgtbhyujklp23456789"; für (int i = 0; i <4; i ++) {g.setColor (neue Farbe (R (50,180), R (50,180), R (50, 180)); G.SetFont (neue Schriftart ("BOLD", FONT.PLAIN, 40)); char c = str.charat (r (0, str.length ())); g.drawstring (String.Valueof (c), 10+i*30, r (h-30, h)); } // Zeichnen Sie eine zufällige Zeile für (int i = 0; i <25; i ++) {g.setColor (neue Farbe (R (50,180), R (50,180), R (50,180)); G.Drawline (R (0, W), R (0, H), R (0, W), R (0, H)); } // Die im Speicher erstellten Bilder in die Dateidatei = new Datei ("vcode.png") ausgeben; Imageio.write (IMG, "PNG", Datei); System.out.println ("Bildausgabe abgeschlossen"); }} Beispiel 2: Java erzeugt zufällig häufig verwendete chinesische Zeichensprüfungscodes
importieren java.awt.color; import Java.awt.font; import Java.awt.graphics; Import Java.awt.graphics2d; Import Java.awt.image.Buffeedimage; javax.servlet.http.httpServlet; import Javax.servlet.http.httpserSequest; Import Javax.Servlet.http.httpServletRePletResponse;/*** Generieren zufällige chinesische Charaktere ***/Public Class erweitert das öffentliche Abschluss. DOGGE (HTTPServletRequest -Anforderung, httpServletResponse -Antwort) löst ServletException, IOException {this.dopost (Anfrage, Antwort);} public void dopost (httpServletRequest, HttpServletRespon -Antwort) aus, die ServletException, IOException, IOException, IOException, IOException, IOException, IOException -Anfrage, IOException -Anfrage, IOException -Anfrage, servletException, IOException {request.setcharacterencoding ("utf-8"); response.setContentType ("text/html; charSet = utf-8"); // cache bufferedimage bi = new bufferedimage (width, height, bufferedimage.type_int_int_int_rphic); // starben die backroghsvasvas-graphics g = bi.Gegraphics () -Stars-CAN-CAN-CAN-CAN-CAN-CAN-CAN-CAN-GRAFTEN GRAFIKE G = bi.Gegraphics (); SetBackground (g); // Setzen Sie den Border SetBorder (g); // Zeichnen Sie die Interferenzlinie Drawrandomline (G); // Schreiben Sie die zufällige Nummer String Random = Drawrandomnum ((Graphics2d) g); // die zufälligen chinesischen Zeichen in der Sitzungsanforderung in der Sitzungsanforderung (). response.setContentType ("Image/jpeg"); // Haarsteuerungsbrowser kann nicht reagieren. response.getOutputStream ());}/*** Hintergrundfarbe einstellen ** @param g*/private void retbackground (Graphics g) {// Farbe G.SetColor (Farbe); // Füllen Sie den Bereich G.FillRect (0, 0, Breite, Höhe);}/** Set Border ** @param g*/private void -void -set G.SetColor (color.Blue); // Grenzfläche G.Drawrect (1, 1, Breite - 2, Höhe - 2);}/*** Zufallszeilen zeichnen Random().nextInt(WIDTH);int y1 = new Random().nextInt(HEIGHT);int x2 = new Random().nextInt(WIDTH);int y2 = new Random().nextInt(HEIGHT);g.drawLine(x1, y1, x2, y2);}}/*** Draw random Chinese characters** @param g* @return*/private String drawRandomNum(Graphics2D g) Oder "/u7684/u4e00/u4e86/u662f/u6211/u4e0d/u5728/u4eba/u4eec/u6709/u6765/u4ed6/u8fd9/u4e0a/u7740/u4ed6/u8fd9/u4e0a/u7740/ U4E2A/U5730/U5230/U5927/U91CC/U8BF4/U5C31/U53BB/U5B50/U5F97/U4E5F/U548C/U90A3/U8981/U4E0B/UU 770B/U5929/U65F6/U8FC7/U51FA/U5C0F/U4E48/U8D77/U4F60/U90FD/U628A/U597D/U8FD8/U591A/U6CA1/U4 E3A/U53C8/U53EF/U5BB6/U5B66/U53EA/U4EE5/U4E3B/U4F1A/U6837/U5E74/U60F3/U751F/U540C/U8001/U4E2 d/u5341/u4ece/u81ea/u9762/u524d/u5934/u9053/u5b83/u540e/u7136/u8d70/u5f88/u50cf/u89c1/u4e24/u7528/u5979/u56fd/u 52A8/U8FDB/U6210/U56DE/U4EC0/U8FB9/U4F5C/U5BF9/U5F00/U800C/U5DF1/U4E9B/UU4E9B/UU4F5C/U5F00/u800C/U5DF1/U5DF1/U5DF1/U5DF1/U4E9B/UUU 73B0/U5C71/U6C11/U5019/U7ecf/U53D1/U5DE5/U5411/U4E8B/U547D/U7ED9/U957F/U6C34/U51E0/U4E49/U4 E09/U58F0/U4E8E/U9AD8/U624B/U77E5/U7406/U773C/U5FD7/U70B9/U5FC3/U6218/U4E8C/U95EE/U4F46/U8EA B/U65B9/U5B9E/U5403/U505A/U53EB/U5F53/U4F4F/U542C/U9769/U6253/u 5462/U771F/U5168/U624D/U56DB/U5DF2/U6240/U654C/U4E4B/U6700/U514 9/u4ea7/u60c5/u8def/u5206/u603b/u6761/u767d/u8bdd/u4e1c/uu4e1c/ uU4ea7/u60c5/u8def/u5206/u603b/u6761/u767d/u8bdd/u4e1c/uu4e1c/u 5E2D/U6B21/U4EB2/U5982/U88AB/U82B1/U53E3/U653E/U513F/U5E38/U6C14/U4E94/U7B2C/U4F7F/U5199/U5 19b/u5427/u6587/u8fd0/u518d/u679c/u600e/u5b9a/u8bb8/u5feb/u660e/u884c/u56e0/u522b/u98de/u591 6/U6811/U7269/U6D3B/U90E8/U95E8/U65E0/U5F80/U8239/U671B/U65B0/U5E26/U961F/U5148/U529B/U5B8C /u5374/u7ad9/u4ee3/u5458/u673a/u66f4/u4e5d/u60a8/u6bcf/u98ce/u7ea7/u8ddf/u7b11/u554a/u5b69/u 4E07/U5C11/U76F4/U610F/U591C/U6BD4/U9636/U8FDE/U8F66/U91CD/U4FBF/U6597/U9A6C/U54EA/U5316/U5 92A/U6307/U53D8/U793E/U4F3C/U58EB/U8005/U5E72/U77F3/U6EE1/U65E5/U51B3/U767E/U539F/U62FF/U7FA 4/U7A76/U5404/U516D/U672C/U601D/U89E3/U7ACB/U6CB3/U6751/U516B/U96BE/U65E9/U8BBA/U5417/U6839 /u5171/u8ba9/u76f8/u7814/u4eca/u5176/u4e66/u5750/u63a5/u5e94/u5173/u4fe1/u89c9/u6b65/u53cd/u 5904/U8BB0/U5C06/U5343/U627E/U4E89/U9886/U6216/U5E08/U7ED3/U5757/U8DD1/U8C01/U8349/U8D8A/U5 B57/U52A0/U811A/U7D27/U7231/U7B49/U4E60/U9635/U6015/U6708/U9752/U534A/U706B/U6CD5/U9898/U5EF a/u8d76/u4f4d/u5531/u6d77/u4e03/u5973/u4efb/u4ef6/u611f/u51c6/u5f20/u56e2/u5c4b/u79bb/u8272/u8138/u7247/u79d1/u50 12/u775b/u5229/u4e16/u521a/u4e14/u7531/u9001/u5207/u661f/u5bfc/u665a/uu4e14/u7531/u9001/u5207/u661f/u5bfc/u665a/uu 8868/U591F/U6574/U8BA4/U54CD/U96EA/U6D41/U672A/U573A/U8BE5/U5E76/U5E95/U6DF1/U523B/U5E73/U4 f1f/u5fd9/u63d0/u786e/u8fd1/u4eae/u8f7b/u8bb2/u519c/u53e4/u9ed1/u544a/u754c/u62c9/u540d/u544 0/U571F/U6E05/U9633/U7167/U529E/U53F2/U6539/U5386/U8F6C/U753B/U9020/U5634/U6B64/U6CBB/U5317/ U5FC5/U670D/U96E8/U7A7F/U5185/U8BC6/U9A8C/U4F20/U4E1A/U83DC/U722C/U7761/U5174/U5F62/U91CF/UU 54B1/U89C2/U82E6/U4F53/U4F17/U901A/U51B2/U5408/U7834/U53CB/U5EA6/U672F/U996D/U516C/U65C1/U6 23F/U6781/U5357/U67AA/U8BFB/U6C99/U5C81/U7EBF/U91CE/U575A/U7A7A/U6536/U7B97/U81F3/U653F/U57C E/U52B3/U843D/U94B1/U7279/U56F4/U5F1F/U80DC/U6559/U70ED/U5C55/U5305/U6B4C/U7C7B/U6E10/U5F3A/U670/U4E61/U5F3A/u670/U4E61/U54 7C/U6027/U97F3/U7B54/U54E5/U9645/U65E7/U795E/U5EA7/U7AE0/U5E2E/U5566/U53D7/UU5EA7/U7AE0/U5E2E/U556/U56/U56/U56/U56/U56/U56/U56/U5/UU 7CFB/U4EE4/U8DF3/U975E/U4F55/U725B/U53D6/U5165/U5CB8/U6562/U6389/U5FFD/U79CD/U88C5/U9876/U6 025/U6797/U505C/U606F/U53E5/U533A/U8863/U822C/U62A5/U53F6/U538B/U6162/U53D4/U80CC/U7EC6 "; x = 5; // Kontrollwortanzahl für (int i = 0; i <4; i ++) {// Setzen Sie den Schriftwinkel -Winkel int Grad = new random (). NextInt () % 30; // chinesische Zeichen String ch = base.charat (new random (). NextInt (Base.Length ())+"; 20);Die oben genannten sind die relevanten Codes für Java -Erzeugen -Bildüberprüfungscodes und chinesische Zeichenüberprüfungscodes. Ich hoffe, es wird für das Lernen aller hilfreich sein.