如何动态存储一些CSS字体样式文件以响应公用文件夹?

我正在使用带反应的电子进行epub项目,并使用epub解析epub文件。通过此解析器,我能够获取cssttf这些文件。但是,这些文件将无法正常使用。例如,对于当前节的html可能要导入<link href="flow0003.css" rel="stylesheet" type="text/css">之类的CSS,而不会加载此css文件。

要解决此问题,是否可以动态地存储一些文件以响应公共文件夹?

我一直在网上搜索,由于安全原因,似乎无法进行搜索。我也曾搜索过类似的电子方法,但由于该项目正在使用电子与反应,因此似乎没有任何建议。

顺便说一句,我能够像这样动态注入样式: Book.tsx

  useEffect(() => {
    const css = Object.values(book.manifest).filter(({ href }) => href.endsWith('.css'));

    Promise.all(css.map(c => getcss(book,c.id)))
      .then(arr => arr.join('\n'))
      .then(styles => {
        if (!ref.current) return;
        ref.current.setattribute('style',styles);
      });
  },[book]);

但是,字体文件的嵌套improt仍然无法工作。

那么电子反应有可能将样式表,字体文件存储到其公用文件夹中吗(以后也需要删除)?

我知道可以用html解析img,样式数据。例如,使用reactdom.setattribute动态注入样式表。同样,对于img标签,可以像<img src={data:${mimeType};base64,${imgData.toString('base64')}}>一样直接注入图像数据。那么,有什么等效的方式可以加载字体吗?

zhang9987 回答:如何动态存储一些CSS字体样式文件以响应公用文件夹?

使用电子的ipcMain和ipcRenderer进行通信,电子将资产保存到文件系统中。

本文链接:https://www.f2er.com/3126837.html

大家都在问