2009-10-20 87 views
1

我正在開發一個涉及WebView(來自WebKit框架)的Cocoa/Obj-C應用程序。我注意到這個WebView提供了一個縮小版的渲染網頁。一個例子截圖:如何防止WebView縮小呈現的網頁?

在瀏覽器(Safari或Firefox):

alt text http://img132.imageshack.us/img132/9824/plain.png

在我的WebView:

alt text http://img21.imageshack.us/img21/6673/picture2sa.png

這些恰好是通過生成的本地HTML/CSS文件該程序,但如果你告訴WebView加載http://www.google.com,它會做同樣的事情。圖像和文字都略小。正如你看到的,在這個例子中,1px水平線就消失了。

這個WebView呈現頁面在瀏覽器中看起來像什麼的準確圖片是非常重要的,所以我想解決這個問題。我已經查看了WebView文檔以及Interface Builder中的所有選項,但沒有運氣。

回答

1

你可能想嘗試這種方法:- (void)setTextSizeMultiplier:(float)multiplier

+0

不應該默認爲1嗎?而且,正如我所說,文字和圖像都在縮小。我會嘗試一下,雖然... – 2009-10-31 16:28:19

+0

可能是因爲WebView的默認文本大小不同,而不是它們被縮小。 – 2009-11-01 01:31:31

+0

不,我檢查了默認的文字大小。他們是正確的。就像我說的,圖像也縮小了。 – 2009-11-02 20:48:31

0

是否有可能包含您的webview的超級視圖之一被重新縮放?我不記得在WebKit文檔中看到任何自動縮放。

+0

感謝您的建議,但看起來不是這樣。這只是一個NSPanel中的簡單WebView,當您單擊按鈕時會彈出。我在別處也有另一個WebView,它有同樣的問題。 – 2009-11-02 20:52:16

1

在Interface Builder中,嘗試將Web視圖的字體大小默認選項從12更改爲16.我相信大多數Web瀏覽器(包括Safari)都使用默認字體大小16,但默認字體大小設置爲12對於Cocoa web視圖來說,所有的東西都會變得更小一些。

+0

這不起作用,但調用setTextSizeMultiplier:值> 1.0。去搞清楚。 – 2009-12-02 23:23:43

0

以下是我所做的WebView中的網頁看起來一樣在Safari:

[[webView preferences] setDefaultFontSize:16]; 

(我沒有在applicationDidFinishLaunching處理器上面,之後setMainFrameURL呼叫解決方案是採取from a similar question在接口更改的WebView字體大小。生成器由於某種原因不工作。)