9

如何缩放 WebView 的内容?

4

4 回答 4

11

您需要调用-scaleUnitSquareToSize:要调整大小的单个框架的文档视图,例如主框架:

[[[[webView mainFrame] frameView] documentView] scaleUnitSquareToSize:NSMakeSize(1.5, 1.5)];
[[[[webView mainFrame] frameView] documentView] setNeedsDisplay:YES];
于 2010-02-02T04:54:24.950 回答
5

或者您可以尝试以下方法:

- (IBAction)takeZoom:(NSSlider *)sender {
    WebView *aWebView = [[window.contentView subviews] lastObject];
    NSView *clipView = [[[[aWebView mainFrame] frameView] documentView] superview];
    float scale = pow( 4, [sender floatValue] )/(clipView.frame.size.width/clipView.bounds.size.width);
    [clipView scaleUnitSquareToSize:NSMakeSize(scale, scale)];
    [clipView setNeedsDisplay:YES];
}
于 2011-01-10T21:07:53.633 回答
2

Javascript 是你最好的朋友:

 [_webview stringByEvaluatingJavaScriptFromString:@"document.documentElement.style.zoom = \"0.5\""];
于 2014-08-20T13:51:32.070 回答
-2

WebView 是 NSView,因此一种方法是向它发送scaleUnitSquareToSize:message

于 2010-02-02T03:21:14.833 回答