如何縮放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拖放
- 2. 可可WebView和HTML5拖放
- 3. Android:在WebView中縮放SVG
- 4. 可縮放可編輯JTextPane
- 5. 活動縮放中的WebView
- 6. 使用Viewbox,我可以縮放Webview而不實際縮放內容嗎?
- 7. 縮放webview動畫
- 8. webview縮放控件
- 9. 禁用縮放WebView?
- 10. Android WebView中的可伸縮性問題
- 11. 可縮放按鈕
- 12. 如何在Java中縮放/縮放Android WebView
- 13. 鈦 - 在webview中重置縮放比例
- 14. 在WebView中啓用縮放android
- 15. 在Webview中縮放html內容
- 16. jQuery在webview中的移動UI縮放
- 17. 在webview中放大/縮小(+/-)android
- 18. 縮放圖像在Android中不可見
- 19. d3.js v3和可縮放的可縮放樹狀圖示例
- 20. 不可縮放的webview,適用於iPhone和iPhone4的分辨率
- 21. 可可WebView SWF
- 22. webView和縮放範圍
- 23. 設置爲Webview的縮放
- 24. WebView和縮放圖像
- 25. WebView無法正確縮放?
- 26. Android WebView iFrame字體縮放
- 27. iOS的webview swipegesturerecognizer和縮放
- 28. Android Webview縮放密度
- 29. iOS Webview縮放級別
- 30. Android的webview縮放問題
這導致內容被截取在視圖邊界的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