我将本地HTML模板加载到WebView
。我的webview的框架尺寸非常小(250X300)。我用这个只显示预览。问题是,我无法在webview中看到整个html内容。我只看到左上角。我必须滚动才能看到整个内容。
那么是否有可能为webview设置比例或缩放因子?
答案 0 :(得分:2)
如果仅对文本进行缩放就足够了,请使用方法-[WebView makeTextSmaller:]
和-[WebView makeTextLarger:]
并重置文本大小-[WebView makeTextStandardSize:]
,如WebView
所述。这些方法对应于Safari中的“Cmd - ”和“Cmd +”和“Cmd 0”。
如果要扩展包含图像的WebView的整个内容,请使用以下方法:
- (void) zoomWebView:(WebView *)aWebView withFactor:(float)fac
{
NSString *script = @"document.body.style.zoom";
float oldFac = [[aWebView stringByEvaluatingJavaScriptFromString:script] floatValue];
if( oldFac==0 ){ oldFac = 1.0; }
NSString *res = [aWebView stringByEvaluatingJavaScriptFromString:
[NSString stringWithFormat:@"%@='%1.2f';", script, (oldFac*fac)]];
[aWebView setNeedsDisplay:YES];
}
答案 1 :(得分:2)
经过一番游戏,我得到了答案。
[[[[[previewWeb mainFrame] frameView] documentView] superview] scaleUnitSquareToSize:NSMakeSize(.5, .5)];
答案 2 :(得分:0)
您可以使用未记录的
- (void)_setZoomMultiplier:(float)m isTextOnly:(BOOL)isTextOnly
注意:这可能会导致提交到App Store时出现问题。