5

我最近一直在使用很多字符集,在尝试为随机网页建立正确的字符集时发现了很多问题。charset 可以在 html 文档的 headers 中设置,也可以在<head>section 中设置,多次或有时省略声明。尽管存在这些问题,chrome 每次都在设置最佳字符集方面做得很好。

我试过搜索资源,但没有找到任何东西,因为我不知道去哪里找。

所以我的问题是我在哪里可以找到算法?

谢谢


更新:

有问题的示例:

文档的 HTTP 标头(基于服务器配置):
Content-type: text/html; charset=utf-8
并且文档看起来像:

<?xml version="1.0" encoding="ISO-8859-1"?>
<html>
<head>
<meta charset="UTF-8">
<meta http-equiv="Content-type" content="text/html;charset=ISO-8859-1" />
</head>
<body>...</body>
</html>

将使用哪种编码来呈现文本?

4

2 回答 2

3

Chrome 使用https://github.com/google/compact_enc_det

如果您想阅读调用该项目的实际代码,该函数DetectTextEncoding位于文件中third_party/blink/renderer/platform/text/text_encoding_detector.cc

于 2019-08-05T22:11:18.070 回答
-1

标头字符集将始终覆盖元字符集。

于 2013-01-17T15:24:51.877 回答