云云​(留言 | 贡献)
无编辑摘要
IdleTap-bot​(留言 | 贡献)
由旧格式Infobox转换为新参数格式(label/data),修复空信息框(由IdleTap-bot执行)
 
(未显示另一用户的1个中间版本)
第1行: 第1行:
{{Infobox|标题=Blink|内容={{!}}-
{{Infobox
! 開發者
| title = Blink
{{!}} The Chromium Project及貢獻者<ref name=":0" /><ref name=":1" />
 
{{!}}-
| label1 = 開發者
! 首次发布
| data1 = The Chromium Project及貢獻者<ref name=":0" /><ref name=":1" />
{{!}} 2013年4月3日<ref name=":2" /><ref name=":3" />
 
{{!}}-
| label2 = 首次发布
! 源代码库
| data2 = 2013年4月3日<ref name=":2" /><ref name=":3" />
{{!}} chromium.googlesource.com
 
{{!}}-
| label3 = 源代码库
! 编程语言
| data3 = chromium.googlesource.com
{{!}} [[C++]]<ref name=":1" /><ref name=":4" />
 
{{!}}-
| label4 = 编程语言
! 类型
| data4 = [[C++]]<ref name=":1" /><ref name=":4" />
{{!}} 瀏覽器排版引擎<ref name=":4" />
 
{{!}}-
| label5 = 类型
! 许可协议
| data5 = 瀏覽器排版引擎<ref name=":4" />
{{!}} [[BSD许可证|BSD]]及[[LGPL|LGPLv2.1]]<ref name=":1" /><ref name=":4" />
 
{{!}}-
| label6 = 许可协议
! 前身
| data6 = [[BSD许可证|BSD]]及[[LGPL|LGPLv2.1]]<ref name=":1" /><ref name=":4" />
{{!}} [[WebKit]](WebCore)<ref name=":5" /><ref name=":6" />}}'''Blink'''是由[[Google]]主导开发的开源[[浏览器]]引擎,作为[[Chromium]]项目的一部分<ref name=":0">[https://zh.m.wikipedia.org/wiki/Blink Blink — 维基百科(中文)]</ref><ref name=":7">[https://baike.baidu.com/item/Blink/13986338 Blink — 百度百科]</ref>。该引擎最初是[[WebKit]]项目中WebCore组件的一个分支,于2013年4月首次公开发布<ref name=":2">[https://blog.chromium.org/2013/04/blink-rendering-engine-for-chromium.html Blink: A rendering engine for the Chromium project — Chromium Blog]</ref><ref name=":5">[https://developer.mozilla.org/zh-CN/docs/Glossary/Blink Blink — MDN Web Docs]</ref>。Blink被广泛应用于[[Google Chrome]]、[[Microsoft Edge]]、[[Opera]]、[[Brave]]、[[Vivaldi]]、[[Samsung Internet]]等众多基于Chromium的浏览器中<ref name=":0" /><ref name=":1">[[wikipedia:Blink_(browser_engine)|Blink (browser engine) — Wikipedia]]</ref>。由于Google Chrome的市场主导地位以及大量Chromium衍生浏览器的存在,Blink是目前使用最为广泛的浏览器引擎<ref name=":1" /><ref name=":8">[https://www.chromium.org/blink/ Blink — The Chromium Projects]</ref>。
 
| label7 = 前身
| data7 = [[WebKit]](WebCore)<ref name=":5" /><ref name=":6" />
}}'''Blink'''是由[[Google]]主导开发的开源[[浏览器]]引擎,作为[[Chromium]]项目的一部分<ref name=":0">[https://zh.m.wikipedia.org/wiki/Blink Blink — 维基百科(中文)]</ref><ref name=":7">[https://baike.baidu.com/item/Blink/13986338 Blink — 百度百科]</ref>。该引擎最初是[[WebKit]]项目中WebCore组件的一个分支,于2013年4月首次公开发布<ref name=":2">[https://blog.chromium.org/2013/04/blink-rendering-engine-for-chromium.html Blink: A rendering engine for the Chromium project — Chromium Blog]</ref><ref name=":5">[https://developer.mozilla.org/zh-CN/docs/Glossary/Blink Blink — MDN Web Docs]</ref>。Blink被广泛应用于[[Google Chrome]]、[[Microsoft Edge]]、[[Opera]]、[[Brave]]、[[Vivaldi]]、[[Samsung Internet]]等众多基于Chromium的浏览器中<ref name=":0" /><ref name=":1">[[wikipedia:Blink_(browser_engine)|Blink (browser engine) — Wikipedia]]</ref>。由于[[Go]]ogle [[Chrome]]的市场主导地位以及大量Chromium衍生浏览器的存在,Blink是目前使用最为广泛的浏览器引擎<ref name=":1" /><ref name=":8">[https://www.chromium.org/blink/ Blink — The Chromium Projects]</ref>。


== 历史 ==
== 历史 ==
Blink的诞生源于Google在Chromium项目开发过程中对[[WebKit]]代码进行的大量修改。Chromium采用与其他WebKit浏览器不同的多进程架构,多年来的架构差异导致WebKit与Chromium项目的复杂性不断增加,减缓了创新速度<ref name=":2" />。2013年4月3日,Google正式宣布从WebKit中分支出Blink渲染引擎<ref name=":2" /><ref name=":3">[https://www.phoronix.com/news/Google-Forks-WebKit-Blink Google Forks WebKit As Blink Rendering Engine — Phoronix]</ref>。其名称的由来有两层含义:一是暗示速度(blink意为“闪烁”),二是指向非标准的[[HTML]] blink元素<ref name=":1" />。
Blink的诞生源于Google在Chromium项目开发过程中对[[WebKit]]代码进行的大量修改。Chromium采用与其他WebKit浏览器不同的多进程[[架构]],多年来的架构差异导致WebKit与Chromium项目的复杂性不断增加,减缓了创新速度<ref name=":2" />。2013年4月3日,Google正式宣布从WebKit中分支出Blink渲染引擎<ref name=":2" /><ref name=":3">[https://www.phoronix.com/news/Google-Forks-WebKit-Blink Google Forks WebKit As Blink Rendering Engine — Phoronix]</ref>。其名称的由来有两层含义:一是暗示速度(blink意为“闪烁”),二是指向非标准的[[HTML]] blink元素<ref name=":1" />。


分拆之初,Blink团队即删除了超过4.5百万行代码和7个构建系统,以简化代码库<ref name=":2" />。分拆后的首批改动之一便是弃用包括WebKit前缀在内的CSS供应商前缀,实验性功能改为选择加入(opt-in)方式启用<ref name=":1" />。
分拆之初,Blink团队即删除了超过4.5百万行代码和7个构建系统,以简化代码库<ref name=":2" />。分拆后的首批改动之一便是弃用包括WebKit前缀在内的CSS供应商前缀,实验性功能改为选择加入(opt-in)方式启用<ref name=":1" />。
第31行: 第34行:


=== 渲染流程 ===
=== 渲染流程 ===
Blink作为渲染引擎,负责将[[HTML]]、[[CSS]]和[[JavaScript]]代码(以及图片和其他资源)转换为用户可查看和交互的网页<ref name=":9">[https://developer.chrome.com/docs/web-platform/blink?hl=zh-cn 什麼是 Blink? — Chrome for Developers]</ref>。其渲染过程包括资源收集、解析、样式计算、布局、绘制和合成等多个阶段<ref name=":9" />。
Blink作为渲染引擎,负责将[[HTML]]、[[CSS]]和[[JavaScript]]代码(以及图片和其他资源)转换为[[用户]]可查看和交互的网页<ref name=":9">[https://developer.chrome.com/docs/web-platform/blink?hl=zh-cn 什麼是 Blink? — Chrome for Developers]</ref>。其渲染过程包括资源收集、解析、样式计算、布局、绘制和合成等多个阶段<ref name=":9" />。


Blink使用开源的[[Skia]]图形引擎与计算机或移动设备的底层图形硬件进行交互,Skia通过[[OpenGL]]、[[Vulkan]]和[[DirectX]]等图形库提供跨平台渲染能力<ref name=":9" />。
Blink使用开源的[[Skia]]图形引擎与[[计算机]]或移动设备的底层图形硬件进行交互,Skia通过[[OpenGL]]、[[Vulkan]]和[[DirectX]]等图形库提供[[跨平台]]渲染能力<ref name=":9" />。


=== JavaScript引擎 ===
=== JavaScript引擎 ===
Blink内嵌[[V8 (JavaScript引擎)|V8]] [[JavaScript]]引擎,用于解析和执行JavaScript及[[WebAssembly]]代码<ref name=":9" /><ref name=":10">[https://cloud.tencent.com/developer/article/2182117 揭秘字节码到像素的一生!Chromium 渲染流水线 — 腾讯云]</ref>。V8根据[[ECMAScript]]标准处理[[JavaScript]],开发者可通过V8访问底层浏览器功能,如操作[[文档对象模型|DOM]]<ref name=":9" />。
Blink内嵌[[V8 (JavaScript引擎)|V8]] [[JavaScript]]引擎,用于解析和执行[[Java]]Script及[[WebAssembly]]代码<ref name=":9" /><ref name=":10">[https://cloud.tencent.com/developer/article/2182117 揭秘字节码到像素的一生!Chromium 渲染流水线 — 腾讯云]</ref>。V8根据[[ECMAScript]]标准处理[[JavaScript]],开发者可通过V8访问底层浏览器功能,如操作[[文档对象模型|DOM]]<ref name=":9" />。


=== 多进程架构 ===
=== 多进程架构 ===
第50行: 第53行:


=== 跨平台支持 ===
=== 跨平台支持 ===
Blink作为跨平台渲染引擎,支持[[Windows]]、[[Linux]]、[[macOS]]、[[Android]]和[[ChromeOS]]等多个操作系统<ref name=":1" /><ref name=":4">[https://zh.m.wikipedia.org/zh-sg/Blink Blink — 维基百科(中文·新加坡)]</ref>。但在[[iOS]]平台上,由于Apple的政策限制,所有浏览器必须使用[[WebKit]]引擎,因此基于Chromium的浏览器在iOS上无法使用Blink<ref name=":1" /><ref name=":11">[https://m.ithome.com/html/670633.htm 谷歌希望在 iOS 上使用 Chrome Blink 引擎,以取代苹果的 WebKit — IT之家]</ref>。
Blink作为跨平台渲染引擎,支持[[Windows]]、[[Linux]]、[[macOS]]、[[Android]]和[[ChromeOS]]等多个[[操作系统]]<ref name=":1" /><ref name=":4">[https://zh.m.wikipedia.org/zh-sg/Blink Blink — 维基百科(中文·新加坡)]</ref>。但在[[iOS]]平台上,由于[[Apple]]的政策限制,所有浏览器必须使用[[WebKit]]引擎,因此基于Chromium的浏览器在iOS上无法使用Blink<ref name=":1" /><ref name=":11">[https://m.ithome.com/html/670633.htm 谷歌希望在 iOS 上使用 Chrome Blink 引擎,以取代苹果的 WebKit — IT之家]</ref>。


== 应用范围 ==
== 应用范围 ==
第65行: 第68行:


== 许可协议 ==
== 许可协议 ==
Blink采用多重许可协议。Google作者贡献的部分以[[BSD许可证|BSD]]风格许可证发布,而基于WebCore的组件沿用[[LGPL|GNU宽通用公共许可证]](LGPL)v2.1<ref name=":1" /><ref name=":4" />。
Blink采用多重许可协议。Google作者贡献的部分以[[BSD许可证|BSD]]风格许可证发布,而基于WebCore的组件沿用[[LGPL|GNU宽通用公共许可证]](L[[GPL]])v2.1<ref name=":1" /><ref name=":4" />。


== 参考文献 ==
== 参考文献 ==
<references />
<references />