2010-04-05 43 views
0

我想写一个函数(理想情况下在PHP中),我可以输入一个url并返回一个字符串对应的超文本从网页,这将呈现在浏览器(任何标准的浏览器罚款)最大。如何确定网页上的文字会呈现最大的文字?

使用DOM获取网页和标记事物非常简单,但计算渲染文本标记的最终大小的最佳方法是什么 - 您如何计算包含px,em,%等不同字体大小的CSS 。

在我走之前,任何人都做过类似的事情并重新发明轮子?

在此先感谢。

回答

1

我不认为PHP可以测量呈现的HTML元素,因为这些元素不是呈现在服务器上,而是在客户端,PHP是服务器端。

我已经使用jQuery和outerHeight()和outerWidth函数对呈现的HTML元素进行了测量。

http://www.ccsnetwork.eu看到源> lib.js> correctHeightMainAndSidebar()

+0

这是一个微型蜘蛛的一部分,因此客户端JS是不理想的。我打算做的是抓取引用或包含在网页中的css,并将每个标签与其属性配对,然后计算高度。然而,这是一个相当的工作,因为你基本上必须重新创建级联式样规则逻辑(即使大多数浏览器版本似乎都无法在大多数情况下正常使用)。我希望有一些我可以使用的开源渲染器改为征服者。 – TMG 2010-04-05 22:43:31

+0

现在的问题是,没有一个人人都严格遵守的标准。但是,因为您只想测量字体大小,所以我会尝试Webkit(http://webkit.org/),Safari和Chrome使用Webkit(http://webkit.org/)等等。 Webkit使用C++编写,您可以根据需要运行serverside。 我严重怀疑是否有用PHP编写的We-page渲染引擎。 – 2010-04-06 14:06:01