簡體   English   中英

將UIWebView中的所有圖像調整為一定寬度以上

[英]Resize all images in a UIWebView above a certain width

我正在開發一個iPhone應用程序,它將在Web視圖中顯示XML中的文本和圖像,並將Web視圖放置在滾動視圖上(每個Web視圖是一個頁面)。 有100多種不同大尺寸的圖像,但我將Webview放置為550寬度和500高度的框架。

我發現有些圖片的寬度超過550,因此在滾動查看下一頁(即下一個Webview內容)時遇到問題。

我試圖為webview設置scalePageToFit ,但是圖像和文本都顯得很小。

任何人都可以幫助將所有大於550像素寬的Web視圖圖像調整為設置的寬度500,以使圖像適合Web視圖嗎? 是否可以在iPhone的JavaScript中或通過其他任何方式實現?

您可以嘗試將一些CSS放在要加載到Webview中的任何內容的前面:

img {
  width: 500px;
  height: auto;
}

在Objective-C中

NSString *cssString = @"<style type='text/css'>img {width: 500px; height: auto;}</style>";
NSString *htmlString = [NSString stringWithFormat:@"%@%@",cssString,myHTMLContent];
[myWebView loadHTMLString:htmlString];
use this one  
  - (UIImage*)imageWithImage:(UIImage*)image 
                  scaledToSize:(CGSize)newSize
    {
        UIGraphicsBeginImageContext(newSize);
        [image drawInRect:CGRectMake(0,0,newSize.width,newSize.height)];
        UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();
        UIGraphicsEndImageContext();

        return newImage;
    }

作為NathanGaskin答案的補充,如果您不想調整寬度小於500的圖像,可以使用“ img {max-width:500px; height:auto;}”。對於max-width ,請參閱: http : //www.w3schools.com/cssref/pr_dim_max-width.asp

暫無
暫無

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

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