shi0rik0 的博客shi0rik0 的博客
主页
所有文章
按类别浏览
按标签浏览
主页
所有文章
按类别浏览
按标签浏览
ACGN 1pinia 1electron 2理财 1神经网络 1transformer 1npm 1WSL 1算法八股文 7滑动窗口 1前缀和 1前缀树 1树状数组 1VuePress 1
在Electron中读取并显示本地图片

Date: 2/12/2025Category: Tag: electron

最近需要在Electron应用程序中实现读取并显示本地图片的功能。这个功能看起来简单,但实现起来还是会遇到很多坑。这里就总结一下我遇到的问题,并给出一个完整的解决方案。

两种方案

首先,Electron是不支持在渲染进程中直接读取本地文件的,所以必须要通过主进程来读取文件。这里有两种方案:

  1. 利用Electron的Protocol API,将本地文件映射到一个自定义的协议,然后在渲染进程中通过这个协议来读取文件。
  2. 直接在主进程中提供一个读取文件的接口,然后在渲染进程中调用这个接口来读取文件。
Electron IPC教程

Date: 2/10/2025Category: Tag: electron

Electron的进程模型

在Electron中,有两种进程:主进程和渲染进程。渲染进程本质上就是一个Chromium的进程,它只负责渲染页面,不能访问Node.js提供的操作系统相关的API。主进程是Node.js的进程,可以访问操作系统的API。主进程和渲染进程之间通过IPC(Inter-Process Communication)进行通信。

这种模型的好处就在于:

  1. 不需要大幅修改Chromium的源码。
  2. 保证了浏览器环境的安全性。

如何使用IPC

假设我们希望在渲染进程中读取本地文件。