如何缩放WebView的内容?在可可中缩放WebView
回答
你需要调用-scaleUnitSquareToSize:
上要调整个体框架的文档视图,例如主框架:
[[[[webView mainFrame] frameView] documentView] scaleUnitSquareToSize:NSMakeSize(1.5, 1.5)];
[[[[webView mainFrame] frameView] documentView] setNeedsDisplay:YES];
WebView是一个NSView,所以一种方式是to send it a scaleUnitSquareToSize:
message。
因为WebView实际上是一套相当复杂的管理工具但是你实际上不能在主WebView对象上调用'-scaleUnitSquareToSize:'。 – 2010-02-02 04:55:27
或者你可以尝试以下方法:
- (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];
}
设置剪辑视图中的缩放似乎是正确的方法。我太累了,难以实现这一点,但Rob的上述建议确实可以扩展,但同时也会扩大滚动内容区域,因此您可以获得一个缩放页面,但是在Web视图右侧会出现一个虚构像素的“人造物游乐场” 。我刚刚拿出上述例行的2,4,5行,似乎工作。我的报告视图被缩放到对话框中的网页视图。谢谢流浪者! – 2011-08-23 05:23:35
这对我很好!被接受的答案会被不恰当地剪掉。 – Wevah 2012-07-14 11:26:23
你们都找到缩放documentView的超级视图来完美缩放吗?我看到正确和不正确的回流剪裁。你是否缩放一次或反复缩放,如用户控制下的放大和缩小按钮? scaleUnitSquareToSize在这种情况下不能像预期的那样工作,我终于找到了这个问题的Apple Q&A,https://developer.apple.com/library/mac/#qa/qa2004/qa1346.html但是还有一些问题仍然存在,没错。使用那里的类别,我基本上使用:clipView = [documentView superview]; clipView.scale = NSMakeSize(刻度,刻度); clipView.needsDisplay = YES; – 2012-08-14 16:59:42
Javascript是你最好的朋友:
[_webview stringByEvaluatingJavaScriptFromString:@"document.documentElement.style.zoom = \"0.5\""];
- 1. 可可WebView和HTML5拖放
- 2. 可可的WebView拖放
- 3. 活动缩放中的WebView
- 4. 可缩放可编辑JTextPane
- 5. 缩放webview动画
- 6. 禁用缩放WebView?
- 7. webview缩放控件
- 8. 如何在Java中缩放/缩放Android WebView
- 9. 可缩放按钮
- 10. 在WebView中启用缩放android
- 11. 不可缩放的webview,适用于iPhone和iPhone4的分辨率
- 12. Android的webview缩放问题
- 13. WebView和缩放图像
- 14. 设置为Webview的缩放
- 15. WebView无法正确缩放?
- 16. webView和缩放范围
- 17. iOS Webview缩放级别
- 18. Android WebView iFrame字体缩放
- 19. iOS的webview swipegesturerecognizer和缩放
- 20. Android Webview缩放密度
- 21. 可可WebView SWF
- 22. 是否可以使字体可缩放?
- 23. 制作UIView可缩放
- 24. Jquery流沙不可缩放
- 25. 可绘制图像缩放
- 26. 在Qt中的可滚动,可缩放图像上绘图
- 27. 如何在webview中设置修正缩放级别或缩小?
- 28. 防止在使用searchview时缩放webview
- 29. 在邻居上的可缩放循环
- 30. netbeans中的可缩放面板
这导致内容被截取在视图边界的1/1.5(即2/3)的右侧,就像@Wanderer回答的评论所证实的那样。缩放documentView的superView也不起作用,因为那时鼠标指针不能正确工作(正如其他答案的注释中所述)。所以,到目前为止,这里的答案都不适用于我(在10.10.5) – 2016-08-19 19:46:51
另请参阅:http://stackoverflow.com/questions/23010634/zooming-in-and-out-in-webview-cocoa – 2016-08-19 20:00:05