这里是文章模块栏目内容页
HTML 在Linux上的透明窗口(Electron)

在 Linux 上创建一个透明的窗口,我们可以使用 Electron 这个开源框架,Electron 是一个使用 JavaScript, HTML 和 CSS 构建跨平台桌面应用程序的框架,它是由 GitHub 开发,用于构建 Atom 编辑器。

HTML 在Linux上的透明窗口(Electron)
(图片来源网络,侵删)

以下是如何在 Linux 上使用 Electron 创建一个透明窗口的详细步骤:

1、你需要在你的机器上安装 Node.js 和 npm,Node.js 是运行 JavaScript 的平台,npm 是 Node.js 的包管理器,你可以在 Node.js 的官方网站下载并安装它们。

2、安装完成后,打开终端,输入以下命令来创建一个新的项目文件夹并初始化一个新的 Node.js 项目:

mkdir transparentwindow
cd transparentwindow
npm init y

3、接下来,我们需要安装 Electron,在项目文件夹中,输入以下命令:

npm install electron savedev

4、现在,我们需要创建一个主进程文件和一个渲染进程文件,在项目文件夹中,创建一个名为 main.js 的文件,这将是我们的主进程文件,在这个文件中,我们将设置窗口的透明度:

const { app, BrowserWindow } = require('electron')
function createWindow () {
  const win = new BrowserWindow({
    width: 800,
    height: 600,
    transparent: true,
    frame: false,
    webPreferences: {
      nodeIntegration: true,
    }
  })
  win.loadFile('index.html')
}
app.whenReady().then(createWindow)

5、我们需要创建一个 HTML 文件来显示在我们的窗口中,在项目文件夹中,创建一个名为 index.html 的文件,这将是我们的渲染进程文件,在这个文件中,我们将添加一些基本的 HTML:



  
    

Hello World!

6、现在,我们需要创建一个 package.json 文件来配置我们的项目,在项目文件夹中,输入以下命令:

npm init y

编辑 package.json 文件,将 "main" 字段设置为 "main.js",将 "start" 字段设置为 "electron .":

{
  "name": "transparentwindow",
  "version": "1.0.0",
  "description": "",
  "main": "main.js",
  "scripts": {
    "start": "electron ."
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "electron": "^13.1.7"
  }
}

7、现在,我们可以运行我们的应用程序了,在终端中,输入以下命令:

npm start

你应该能看到一个透明的窗口,其中显示着 "Hello World!",这就是我们在 Linux 上使用 Electron 创建透明窗口的方法。

注意:Electron 不支持在所有平台上创建透明窗口,在某些平台上,你可能需要禁用某些功能才能使窗口透明,在 Windows 上,你需要在创建浏览器窗口时设置 webPreferencesnativeWindowOpen 属性为 true,在 Linux 上,你需要设置 frame 属性为 false,你可能还需要在你的系统设置中启用窗口透明度。