From b3ab426a5ed5513293ed546980c5ea0eba4aab39 Mon Sep 17 00:00:00 2001 From: Jonas Zhang <106856363@qq.com> Date: Wed, 15 Feb 2017 14:20:48 +0800 Subject: [PATCH 1/3] Optimize zh-CN language logic and grammar Optimize zh-CN language logic and grammar. --- .../zh-CN/tutorial/supported-platforms.md | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/docs-translations/zh-CN/tutorial/supported-platforms.md b/docs-translations/zh-CN/tutorial/supported-platforms.md index 42c180dbafe9..27e8976aa091 100644 --- a/docs-translations/zh-CN/tutorial/supported-platforms.md +++ b/docs-translations/zh-CN/tutorial/supported-platforms.md @@ -1,26 +1,24 @@ # 支持的平台 -以下的平台是 Electron 目前支持的: +目前 Electron 支持以下平台: ### macOS -对于 macOS 系统仅有64位的二进制文档,支持的最低版本是 macOS 10.9。 +对于 macOS 仅提供64位版本,并且只支持 macOS 10.9 或更高版本。 ### Windows -仅支持 Windows 7 及其以后的版本,之前的版本中是不能工作的。 +仅支持 Windows 7 或更高版本。 -对于 Windows 提供 `ia32` (x86) 和 `amd64` (x64) 版本的二进制文件。需要注意的是 `ARM` 版本的 Windows 目前尚不支持。 +对于 Windows 提供 `ia32` (x86) 和 `amd64` (x64) 版本。需要注意的是 `ARM` 版本的 Windows 目前尚不支持。 ### Linux -预编译的 `ia32` (`i686`) 和 `x64` (`amd64`) 版本 Electron 二进制文件都是在 -Ubuntu 12.04 下编译的,`arm` 版的二进制文件是在 ARM v7(硬浮点 ABI 与 +Electron 的 `ia32` (`i686`) 和 `x64` (`amd64`) 预编译版本均是在Ubuntu 12.04 下编译的,`arm` 版的二进制文件是在 ARM v7(硬浮点 ABI 与 Debian Wheezy 版本的 NEON)下完成的。 -预编译二进制文件是否能够运行,取决于其中是否包括了编译平台链接的库,所以只有 Ubuntu 12.04 -可以保证正常工作,但是以下的平台也被证实可以运行 Electron 的预编译版本: +预编译版本是否能够正常运行,取决于其中是否包含了编译平台的链接库。所以只有 Ubuntu 12.04 是可以保证能正常运行的,并且以下平台也被证实可以正常运行 Electron 的预编译版本: -* Ubuntu 12.04 及更新 +* Ubuntu 12.04 或更高版本 * Fedora 21 * Debian 8 From f79ce38a5727b89625020d054db1265ef0a87eca Mon Sep 17 00:00:00 2001 From: DemoPark <106856363@qq.com> Date: Wed, 15 Feb 2017 17:21:20 +0800 Subject: [PATCH 2/3] add zh-CN translations for electron-versioning.md add zh-CN translations for 'electron-versioning.md' --- docs-translations/zh-CN/README.md | 2 +- .../zh-CN/tutorial/electron-versioning.md | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 docs-translations/zh-CN/tutorial/electron-versioning.md diff --git a/docs-translations/zh-CN/README.md b/docs-translations/zh-CN/README.md index 64c89cdcc534..b5bd420c5845 100644 --- a/docs-translations/zh-CN/README.md +++ b/docs-translations/zh-CN/README.md @@ -13,7 +13,7 @@ * [术语表](glossary.md) * [支持平台](tutorial/supported-platforms.md) * [安全性](tutorial/security.md) 未翻译 -* [Electron 版本管理](tutorial/electron-versioning.md) 未翻译 +* [Electron 版本管理](tutorial/electron-versioning.md) * [分发应用](tutorial/application-distribution.md) * [提交应用到 Mac App Store](tutorial/mac-app-store-submission-guide.md) * [Windows 商店提交指引](tutorial/windows-store-guide.md) diff --git a/docs-translations/zh-CN/tutorial/electron-versioning.md b/docs-translations/zh-CN/tutorial/electron-versioning.md new file mode 100644 index 000000000000..18bd3735404f --- /dev/null +++ b/docs-translations/zh-CN/tutorial/electron-versioning.md @@ -0,0 +1,11 @@ +# Electron 版本管理 + +如果你是一个经验丰富的Node开发人员,你肯定知道`semver` - 然而这里给你的依赖管理系统可能只有粗略的指导建议而不是固定的版本号。由于对 Node 和 Chromium 的硬性依赖,Electron 处于一个稍微复杂的境地,而且不遵循semver。因此,您应该始终引用特定版本的Electron。 + +版本号使用参照以下规则: + +* 主要版本: 适用于 Electron API 的突破性变更 - 如果您从 `0.37.0` 升级到 `1.0.0`, 您将需要升级您的应用程序。 +* 次要版本: 适用于 Chrome 主要版本 和 Node 次要版本升级; 或重大的 Electron 变动 - 如果您从 `0.37.0` 升级到 `1.0.0`, 您的应用程序仍然可以正常运行, 但你可能需要解决一些小幅的变动。 +* 补丁版本: 适用于新功能的添加和 bug 修复 - 如果您从 `0.37.0` 升级到 `1.0.0`, 你的应用程序仍然像之前一样正常运行。 + +如果你使用 `electron` 或 `electron-prebuilt`,我们建议您设置固定的版本号(如 1.1.0 而不是 ^1.1.0),以确保Electron的所有升级都是由您(开发人员)进行的手动操作。 From 1170ecb2695801e82567e58c97a000d11d78e5fd Mon Sep 17 00:00:00 2001 From: DemoPark <106856363@qq.com> Date: Wed, 15 Feb 2017 17:45:52 +0800 Subject: [PATCH 3/3] add zh-CN translations for offscreen-rendering.md add zh-CN translations for offscreen-rendering.md --- docs-translations/zh-CN/README.md | 2 +- .../zh-CN/tutorial/offscreen-rendering.md | 44 +++++++++++++++++++ 2 files changed, 45 insertions(+), 1 deletion(-) create mode 100644 docs-translations/zh-CN/tutorial/offscreen-rendering.md diff --git a/docs-translations/zh-CN/README.md b/docs-translations/zh-CN/README.md index b5bd420c5845..04167acf629c 100644 --- a/docs-translations/zh-CN/README.md +++ b/docs-translations/zh-CN/README.md @@ -25,7 +25,7 @@ * [使用 Pepper Flash 插件](tutorial/using-pepper-flash-plugin.md) * [使用 Widevine CDM 插件](tutorial/using-widevine-cdm-plugin.md) * [通过自动化持续集成系统(CI)进行测试 (Travis, Jenkins)](tutorial/testing-on-headless-ci.md) 未翻译 -* [离屏渲染](tutorial/offscreen-rendering.md) 未翻译 +* [离屏渲染](tutorial/offscreen-rendering.md) ## 教程 diff --git a/docs-translations/zh-CN/tutorial/offscreen-rendering.md b/docs-translations/zh-CN/tutorial/offscreen-rendering.md new file mode 100644 index 000000000000..bff3f939fb37 --- /dev/null +++ b/docs-translations/zh-CN/tutorial/offscreen-rendering.md @@ -0,0 +1,44 @@ +# 离屏渲染 + +离线渲染允许您在位图中获取浏览器窗口的内容,因此可以在任何地方渲染,例如在3D场景中的纹理。Electron中的离屏渲染使用与 [Chromium +Embedded Framework](https://bitbucket.org/chromiumembedded/cef) 项目类似的方法。 + +可以使用两种渲染模式,并且只有脏区通过 `'paint'` 事件才能更高效。渲染可以停止、继续,并且可以设置帧速率。 指定的帧速率是上限值,当网页上没有发生任何事件时,不会生成任何帧。 最大帧速率是60,因为再高没有好处,而且损失性能。 + +**注意:** 屏幕窗口始终创建为 [Frameless Window](../api/frameless-window.md). + +## 两种渲染模式 + +### GPU加速 + +GPU加速渲染意味着使用GPU用于合成。因为帧必须从需要更多性能的GPU中复制,因此这种模式比另一个模式慢得多。这种模式的优点是支持WebGL和3D CSS动画。 + +### 软件输出设备 + +此模式使用软件输出设备在CPU中渲染,因此帧生成速度更快,因此此模式优先于GPU加速模式。 + +要启用此模式,必须通过调用 [`app.disableHardwareAcceleration()`][disablehardwareacceleration] API 来禁用GPU加速。 + +## 使用 + +``` javascript +const {app, BrowserWindow} = require('electron') + +app.disableHardwareAcceleration() + +let win +app.once('ready', () => { + win = new BrowserWindow({ + webPreferences: { + offscreen: true + } + }) + win.loadURL('http://github.com') + win.webContents.on('paint', (event, dirty, image) => { + // updateBitmap(dirty, image.getBitmap()) + }) + win.webContents.setFrameRate(30) +}) +``` + +[disablehardwareacceleration]: ../api/app.md#appdisablehardwareacceleration