2009-10-20 39 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字体大小。生成器由于某种原因不工作。)