處理HTML圖片適應(yīng)webView和壓縮圖片

創(chuàng)建圖片工具類

public class ImageUtil {

    // 調(diào)整HTML圖片
    public static String adjustHTMLImage(String htmlText){
        if (htmlText == null){
            return null;
        }
        Document doc = Jsoup.parse(htmlText);
        Elements eLements = doc.getElementsByTag("img");
        for (Element element: eLements){
            // Override the width and height attribute
            element.attr("style", "display:block;width:100%;height:auto");
            // max-height:700px
        }
        return doc.toString();
    }


    // 壓縮圖片
    public static String compressImage(String filePath, String targetPath, int quality){
        Bitmap bm = getScaledBitmap(filePath);
        File output = new File(targetPath);
        try {
            if (!output.exists()){
                output.getParentFile().mkdir();
            } else {
                output.delete();
            }

            FileOutputStream out = new FileOutputStream(output);
            bm.compress(Bitmap.CompressFormat.JPEG, quality, out);
            out.close();
        } catch (Exception e){
            e.printStackTrace();
        }
        return output.getPath();
    }

    // 獲得壓縮圖片
    private static Bitmap getScaledBitmap(String filePath){
        final BitmapFactory.Options options = new BitmapFactory.Options();
        options.inJustDecodeBounds = true;
        BitmapFactory.decodeFile(filePath, options);
        options.inSampleSize = calculateInSampleSize(options);
        options.inJustDecodeBounds = false;
        return BitmapFactory.decodeFile(filePath, options);
    }

    // 計(jì)算壓縮尺寸
    private static int calculateInSampleSize(BitmapFactory.Options options){
        final int height = options.outHeight;
        final int width = options.outWidth;
        int inSampleSize = 1;
        if (height > 400 || width > 240){
            final int heightRatio = Math.round(height/ 400);
            final int widthRatio = Math.round(width/ 240);
            inSampleSize = heightRatio < width ? heightRatio : widthRatio;
        }
        return inSampleSize;
    }
}

webView中引用

mWebView = WebView(this)
mWebView!!.loadDataWithBaseURL(null, ImageUtil.adjustHTMLImage(mArticle.content), "text/html", "charset=UTF-8", null)

上傳圖片壓縮

File(ImageUtil.compressImage(qrCodePath, compressedImagePath, 20))
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末咖刃,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子湃崩,更是在濱河造成了極大的恐慌,老刑警劉巖写妥,帶你破解...
    沈念sama閱讀 206,214評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件绅你,死亡現(xiàn)場離奇詭異,居然都是意外死亡躲叼,警方通過查閱死者的電腦和手機(jī)谤辜,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,307評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門蓄坏,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人丑念,你說我怎么就攤上這事涡戳。” “怎么了脯倚?”我有些...
    開封第一講書人閱讀 152,543評(píng)論 0 341
  • 文/不壞的土叔 我叫張陵渔彰,是天一觀的道長。 經(jīng)常有香客問我推正,道長恍涂,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,221評(píng)論 1 279
  • 正文 為了忘掉前任植榕,我火速辦了婚禮再沧,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘尊残。我一直安慰自己炒瘸,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,224評(píng)論 5 371
  • 文/花漫 我一把揭開白布寝衫。 她就那樣靜靜地躺著顷扩,像睡著了一般。 火紅的嫁衣襯著肌膚如雪慰毅。 梳的紋絲不亂的頭發(fā)上屎即,一...
    開封第一講書人閱讀 49,007評(píng)論 1 284
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼技俐。 笑死,一個(gè)胖子當(dāng)著我的面吹牛统台,可吹牛的內(nèi)容都是我干的雕擂。 我是一名探鬼主播,決...
    沈念sama閱讀 38,313評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼贱勃,長吁一口氣:“原來是場噩夢啊……” “哼井赌!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起贵扰,我...
    開封第一講書人閱讀 36,956評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤仇穗,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后戚绕,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體纹坐,經(jīng)...
    沈念sama閱讀 43,441評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,925評(píng)論 2 323
  • 正文 我和宋清朗相戀三年舞丛,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了耘子。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,018評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡球切,死狀恐怖谷誓,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情吨凑,我是刑警寧澤捍歪,帶...
    沈念sama閱讀 33,685評(píng)論 4 322
  • 正文 年R本政府宣布,位于F島的核電站鸵钝,受9級(jí)特大地震影響糙臼,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜蒋伦,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,234評(píng)論 3 307
  • 文/蒙蒙 一弓摘、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧痕届,春花似錦韧献、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,240評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至嚷炉,卻和暖如春渊啰,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,464評(píng)論 1 261
  • 我被黑心中介騙來泰國打工绘证, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留隧膏,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,467評(píng)論 2 352
  • 正文 我出身青樓嚷那,卻偏偏與公主長得像胞枕,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子魏宽,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,762評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • Swift1> Swift和OC的區(qū)別1.1> Swift沒有地址/指針的概念1.2> 泛型1.3> 類型嚴(yán)謹(jǐn) 對(duì)...
    cosWriter閱讀 11,089評(píng)論 1 32
  • Tips 由于WebView的用法實(shí)在太多腐泻,如果您只是想查詢某個(gè)功能的使用——建議Ctrl+F(Commad+F)...
    BugDev閱讀 7,737評(píng)論 11 109
  • View 自定義View中在onDraw()方法中可以設(shè)置padding嗎?答案是不能队询,設(shè)置padding后派桩,Vi...
    ElvenShi閱讀 1,821評(píng)論 0 0
  • 寫手帳是因?yàn)橄矚g筆記本,喜歡各種樣式的筆蚌斩,以及各種用途又精致的文具铆惑,而手帳能讓她們之間產(chǎn)生鏈接,發(fā)生故事凳寺。 這個(gè)開...
    魔菇靜閱讀 488評(píng)論 0 3
  • 蘭辛是美國密歇根州州府鸭津,冬天來得很早,往往十月底就下起雪來肠缨。 蘭辛的冬天逆趋,白茫茫的。從北邊來的風(fēng)晒奕,呼呼地吹闻书,吹跑了...
    ruirui0822閱讀 458評(píng)論 0 1