android WebView載入html 處理的圖片過寬的工具類 (過寬的控制到100%,正常尺寸的不放大)
阿新 • • 發佈:2018-12-28
參考 部落格: 小曾同志的專欄: https://blog.csdn.net/u010023795/article/details/53509495
工具類
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
public class WebContentFormatUtil {
private static String sHead = "<html><head><meta name=\"viewport\" content=\"width=device-width, " +
"initial-scale=1.0, minimum-scale=0.5, maximum-scale=2.0, user-scalable=yes\" />" +
"<style>img{max-width:100% !important;height:auto !important;}</style>"
+ "<style>body{max-width:100% !important;}</style>" + "</head><body>";
/**
* 圖寬度都控制到 100% 小圖示會被放到超級大
*/
public static String getNewContent(String htmltext) {
try {
Document doc = Jsoup.parse(htmltext);
Elements elements = doc.getElementsByTag("img");
for (Element element : elements) {
element.attr("max-width", "100%")
.attr("width" , "100%")
.attr("height", "auto")
.attr("style", "");
}
return doc.toString();
} catch (Exception e) {
return htmltext;
}
}
/**
* 圖片自動適應 過寬縮到100%,正常的不放大
*/
public static String getFinalContent(String htmltext) {
return sHead + htmltext + "</body></html>";
}
}
使用方式:
//用jquery對返回的html進行處理
detailInform.loadDataWithBaseURL(null, getFinalContent(DetailInfo), “text/html”, “utf-8”, null);