欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java如何處理圖片保存之后變紅色的問(wèn)題

 更新時(shí)間:2023年11月18日 10:05:25   作者:請(qǐng)告訴他  
這篇文章主要介紹了Java如何處理圖片保存之后變紅色的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

問(wèn)題

原圖如下

上傳之后效果如下

馬賽克是我打的,別人家的logo,避免廣告之嫌,系統(tǒng)審核不過(guò)

然而其他圖片并不存在這個(gè)問(wèn)題,如

 這張,不存在這樣的問(wèn)題

兩張圖片不同點(diǎn)在于正常的為jpg,變色的為png

后面經(jīng)過(guò)不同的嘗試后發(fā)現(xiàn),透明的PNG圖、改alpha通道或四色圖等都會(huì)引起以上問(wèn)題

解決辦法

有兩種,這里分享比較好用的一種,方便快捷,復(fù)制粘貼就能用

  // 這里是直接根據(jù)url讀取圖片
    public static BufferedImage getBufferedImage(String  imgUrl) throws MalformedURLException {
        URL url = new URL(imgUrl);
        ImageIcon icon = new ImageIcon(url);
        Image image = icon.getImage();
 
        // 如果是從本地加載,就用這種方式,沒(méi)親自測(cè)試過(guò)
        // Image src=Toolkit.getDefaultToolkit().getImage(filePath);
 
        // This code ensures that all the pixels in the image are loaded
        BufferedImage bimage = null;
        GraphicsEnvironment ge = GraphicsEnvironment
                .getLocalGraphicsEnvironment();
        try {
            int transparency = Transparency.OPAQUE;
            GraphicsDevice gs = ge.getDefaultScreenDevice();
            GraphicsConfiguration gc = gs.getDefaultConfiguration();
            bimage = gc.createCompatibleImage(image.getWidth(null),
                    image.getHeight(null), transparency);
        } catch (HeadlessException e) {
            // The system does not have a screen
        }
        if (bimage == null) {
            // Create a buffered image using the default color model
            int type = BufferedImage.TYPE_INT_RGB;
            bimage = new BufferedImage(image.getWidth(null),
                    image.getHeight(null), type);
        }
        // Copy image to buffered image
        Graphics g = bimage.createGraphics();
        // Paint the image onto the buffered image
        g.drawImage(image, 0, 0, null);
        g.dispose();
        return bimage;
    }

我的是在原代碼中,將

 bi = ImageIO.read(inStream);

替換為

bi =  getBufferedImage(inFile.getPath());

具體如下

最終效果

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • java實(shí)現(xiàn)飛機(jī)大戰(zhàn)小游戲

    java實(shí)現(xiàn)飛機(jī)大戰(zhàn)小游戲

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)飛機(jī)大戰(zhàn)小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • java字符串壓縮解壓示例

    java字符串壓縮解壓示例

    這篇文章主要介紹了java字符串壓縮解壓示例,先壓縮,再加密,再壓縮,數(shù)據(jù)越大,壓縮比例越高,需要的朋友可以參考下
    2014-03-03
  • java實(shí)現(xiàn)四子棋游戲

    java實(shí)現(xiàn)四子棋游戲

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)四子棋游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-03-03
  • SpringBoot之ApplicationRunner解析(spring容器啟動(dòng)完成執(zhí)行的類)

    SpringBoot之ApplicationRunner解析(spring容器啟動(dòng)完成執(zhí)行的類)

    這篇文章主要介紹了SpringBoot之ApplicationRunner解析(spring容器啟動(dòng)完成執(zhí)行的類),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • IDEA搭建SpringBoot離線工程的方法

    IDEA搭建SpringBoot離線工程的方法

    這篇文章主要介紹了IDEA搭建SpringBoot離線工程的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • Java實(shí)現(xiàn)List去重的方法詳解

    Java實(shí)現(xiàn)List去重的方法詳解

    本文用示例介紹Java的List(ArrayList、LinkedList等)的去重的方法。List去重的常用方法一般是:JDK8的stream的distinct、轉(zhuǎn)為HashSet、轉(zhuǎn)為TreeSet等,感興趣的可以了解一下
    2022-05-05
  • SpringBoot整合MyBatis實(shí)現(xiàn)CRUD操作項(xiàng)目實(shí)踐

    SpringBoot整合MyBatis實(shí)現(xiàn)CRUD操作項(xiàng)目實(shí)踐

    本文主要介紹了SpringBoot整合MyBatis實(shí)現(xiàn)CRUD操作項(xiàng)目實(shí)踐,如何實(shí)現(xiàn)數(shù)據(jù)庫(kù)的CRUD創(chuàng)建、讀取、更新、刪除操作,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-02-02
  • SpringCache緩存抽象之CacheManager與自定義鍵生成方式

    SpringCache緩存抽象之CacheManager與自定義鍵生成方式

    本文將深入探討Spring Cache的核心組件CacheManager及自定義鍵生成策略,幫助開發(fā)者掌握緩存配置與優(yōu)化技巧,從而構(gòu)建高效可靠的緩存系統(tǒng),希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-04-04
  • Java求1+2!+3!+...+20!的和的代碼

    Java求1+2!+3!+...+20!的和的代碼

    這篇文章主要介紹了Java求1+2!+3!+...+20!的和的代碼,需要的朋友可以參考下
    2017-02-02
  • 連續(xù)調(diào)用多個(gè)外部系統(tǒng)寫接口保證數(shù)據(jù)一致性的思路

    連續(xù)調(diào)用多個(gè)外部系統(tǒng)寫接口保證數(shù)據(jù)一致性的思路

    今天小編就為大家分享一篇關(guān)于連續(xù)調(diào)用多個(gè)外部系統(tǒng)寫接口保證數(shù)據(jù)一致性的思路,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2018-12-12

最新評(píng)論