将随机大小的图像合并到UIWebview(IOS)

我想将大图像放入UIwebview中,保持图像比例与图像视图相同。

我该怎么做。?

我的代码如下,以适应Uiwebview中的图像。 如果图像很大,则显示效果不佳。

CGFloat screenWidth = self.view.frame.size.width; CGFloat screenHeight = self.view.frame.size.height; NSString *htmlString = [NSString stringWithFormat:@"%@", @"<html><head><meta name='viewport' content='user-scalable=yes,width=device-width'></head><body bgcolor='000000'><img src='%@' width='%f' height='%f' style='max-width:200% max-height:200%'></body></html>"]; imageHTML = [[NSString alloc] initWithFormat:htmlString, fileUrl, screenWidth, screenHeight]; [Webview loadHTMLString:imageHTML baseURL:nil]; [imageHTML release]; 

我已经使用了下面的代码和它的工作。

  NSString *imageHTML = [[NSString alloc] initWithFormat:@"%@%@%@", @"<!DOCTYPE html>" "<html lang=\"ja\">" "<head>" "<meta charset=\"UTF-8\">" "<style type=\"text/css\">" "html{margin:0;padding:0;}" "body {" "margin: 0;" "padding: 0;" "color: #363636;" "font-size: 90%;" "line-height: 1.6;" "background: black;" "}" "img{" "position: absolute;" "top: 0;" "bottom: 0;" "left: 0;" "right: 0;" "margin: auto;" "max-width: 100%;" "max-height: 100%;" "}" "</style>" "</head>" "<body id=\"page\">" "<img src='",fileUrl,@"'/> </body></html>"]; [wview_contents loadHTMLString:imageHTML baseURL:nil]; 

设置您的WebView页面以适合比例:

 [webView setScalesPageToFit:YES]; 

编辑:

这里也检查这两条线

 CGFloat screenWidth = self.view.frame.size.width; CGFloat screenHeight = self.view.frame.size.height; 

如果你知道你希望他们在这里通过静态值的大小,将解决你的问题。

例如

 CGFloat screenWidth = 300; CGFloat screenHeight = 300; 

要从UIWebView中的应用程序文档目录中以预期的比例从Swift 3.0加载图像 –

 if let dir = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first { let path = dir.appendingPathComponent(imageName) let fullHTML = "<!DOCTYPE html>" + "<html lang=\"ja\">" + "<head>" + "<meta charset=\"UTF-8\">" + "<style type=\"text/css\">" + "html{margin:0;padding:0;}" + "body {" + "margin: 0;" + "padding: 0;" + "color: #363636;" + "font-size: 90%;" + "line-height: 1.6;" + "background: black;" + "}" + "img{" + "position: absolute;" + "top: 0;" + "bottom: 0;" + "left: 0;" + "right: 0;" + "margin: auto;" + "max-width: 100%;" + "max-height: 100%;" + "}" + "</style>" + "</head>" + "<body id=\"page\">" + "<img src='\(path)'/> </body></html>" imgWbView.loadHTMLString(fullHTML, baseURL: nil) } 

下面的代码片段可以帮助你

 NSString *fontString = @"<!DOCTYPE html><html>\ <head>\ <style>\ img{"; NSString *imageDimensionsStr = [NSString stringWithFormat:@"max-width: %fpx; max-height: %fpx;}",self.view.frame.size.width - 50.0f, self.view.frame.size.height/2]; fontString =[fontString stringByAppendingString:imageDimensionsStr]; fontString = [fontString stringByAppendingString:@"</style></head><body>"]; fontString = [[fontString stringByAppendingString:htmlString] stringByAppendingString:@"</body></html>"]; [webView loadHTMLString:fontString baseURL:nil]; 

上面的代码将根据视图尺寸调整图像的宽度和高度。 您可以根据您的要求进行更改。