簡體   English   中英

使用Java顯示隨機圖片

[英]display random pictures using java

我試圖顯示基於Random()方法的生成的隨機圖片(只是嘗試像驗證碼)。 我正在從數組中生成隨機否,但不知道如何用圖像映射這些否。 有任何想法嗎 ? 到目前為止,我所做的是:

導入java.util.Arrays; 導入java.util.Random;

公共課程Gen_Captcha {

static String[] myCaptchaLetters = {"a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","0","1","2","3","4","5","6","7","8","9"};
Gen_Captcha captcha= new Gen_Captcha();
public static void main(String[] args) {
    Random randomGenerator = new Random();
    for(int i=0;i<5;i++){
        int random = randomGenerator.nextInt(62);
        System.out.print((myCaptchaLetters[random]));       
    }

}

}

}

注意:上面的代碼不包括顯示圖像的swing框架代碼。

創建一個List<BufferedImage> ,然后使用Collections.shuffle()將列表隨機化。 使用列表的迭代器將隨機訪問圖像,而不會重復。

但不知道如何用圖像映射這些否

不要映射數字,請映射字母:

Map<String, Image> images = new HashMap<String, Image>();
images.put("a", imageA);
images.put("b", imageB);

您可能想看看Graphics.drawString()

您可以通過創建BufferedImage來獲取graphics2D對象。請注意,還有一些更改字體的方法。 對於更高級的驗證碼,您可以使用相同的api扭曲圖像並在其上繪制隨機內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM