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 であるため、1 つの方法はメッセージを送信することscaleUnitSquareToSize:です。

于 2010-02-02T03:21:14.833 に答える