npm 包 @nodert-win10/windows.globalization.fonts 使用教程

概述

@nodert-win10/windows.globalization.fonts 是一个 Node.js 模块,通过它可以获取 Windows 操作系统中已安装的字体信息。

这个模块主要面向使用 Electron 等桌面应用程序开发的前端开发人员。

本文将详细介绍如何使用这个 npm 包。

安装

在项目目录下打开命令行终端,输入以下命令安装 @nodert-win10/windows.globalization.fonts

--- - -----------------------------------------

API

该模块提供以下 API:

1. getFontFamilies()

获取系统中安装的字体家族列表。返回值类型是一个字符串数组。

----- ----- - -----------------------------------------------------

----- ------------ - ------------------------
--------------------------

2. getFontsForFamily(fontFamily: string)

获取指定字体家族中的字体列表。参数 fontFamily 是字体家族名称,返回值类型是一个数组,数组中每个元素都是一个字体的信息对象,包括 namedisplayNameisBoldisItalicfilePath 等属性。

----- ----- - -----------------------------------------------------

----- ------------- - --------------------------------
---------------------------

3. getFontFiles()

获取系统中安装的所有字体文件的路径列表。返回值类型是一个字符串数组。

----- ----- - -----------------------------------------------------

----- --------- - ---------------------
-----------------------

4. getLocalizedFontNamesForFamily(fontFamily: string, languageTag?: string)

获取指定字体家族中的字体列表,并使用指定语言标记对字体名称进行本地化。参数 fontFamily 是字体家族名称,参数 languageTag 是语言标记,可选参数。返回值类型与 getFontsForFamily() 相同。

----- ----- - -----------------------------------------------------

----- ------------- - -------------------------------------------- -----------
---------------------------

示例

下面是一个使用 @nodert-win10/windows.globalization.fonts 模块获取系统字体信息并在 Electron 桌面应用程序中使用的示例代码。

首先,需要在 package.json 文件中添加以下依赖:

-
  --------------- -
    -------------------------------------------- --------
  -
-

然后,在 Electron 主进程中使用以下代码:

----- - ---- -------------- ------- - - --------------------
----- ----- - -----------------------------------------------------

--------------------------- ----- ------- ---- -- -
  ------ ------
---

-------- ------------ -- -
  ----- --- - --- ---------------
    ------ ----
    ------- ----
    --------------- -
      -- - ---------- ----------
      -------- -------------------- -------------
    -
  ---

  ---------------------------
-

----------------------- -- -
  ---------------
---

--------------------------- -- -- -
  -- ----------------- --- --------- -
    -----------
  -
---

------------------ -- -- -
  -- ------------------------------------- --- -- -
    ---------------
  -
---

在这里,我们暴露了 fonts 对象给渲染进程,并通过 ipcMain 模块将其传递给渲染进程。

接下来,在渲染进程的 preload.js 脚本中使用以下代码:

----- - -------------- ----------- - - -------------------

------------------------------------------ -
  --------- ----- -- -- -
    ------ --------------------------------
  -
---

在这里,我们使用 contextBridgegetFonts 函数暴露给渲染进程,这个函数通过 ipcRenderer.invoke() 调用主进程的 get-fonts 方法获取 fonts 对象。

现在,在渲染进程的 JavaScript 代码中,就可以像下面这样使用 windows.getFonts() 获取系统字体信息:

----- ---------- - ---------------------------------------
----- ------------ - ----- --------------------------------------------
------------------------------- -- -
  ----- ------ - ---------------------------------
  ----------- - -----------
  -----------------------
---

------------------------------------- ----- ------- -- -
  ----- ---------- - -------------------
  ----- ------------- - ----- --------------------------------------------------------
  -- ---
---

在这里,我们用所有字体家族填充了下拉列表框(ID 为 font-select),当用户选择家族时,我们使用 getFontsForFamily() 方法获取该家族的字体信息,并做相应处理。可以看到,在 Electron 桌面应用程序开发中,使用 @nodert-win10/windows.globalization.fonts 模块非常方便。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/60066bce967216659e244af1


猜你喜欢

  • npm 包 bootstrap-float-label 使用教程

    随着 Web 应用程序的复杂性的提高,前端开发工程师们一直在寻找更好的方法来提高开发效率和用户体验。处理表单验证和标签浮动效果是一项常见的任务,而 Bootstrap-float-label 是一种非...

    4 年前
  • npm 包 Bombom 使用教程

    Bombom 是一个基于 Vue.js 的 UI 组件库,它包含了许多常用的 UI 组件,如按钮、输入框、下拉框等。它的设计模式简洁,功能强大,易于使用。本文将为你介绍如何使用 Bombom。

    4 年前
  • npm 包 bomd5 使用教程

    在前端开发中,经常需要对数据进行加密处理,以保证数据的安全性和完整性。其中,一种常用的加密方式是使用MD5算法。而 npm 包 bomd5 就是一个方便快捷的MD5加密库。

    4 年前
  • npm 包 bomobile 使用教程

    在前端开发中,组件库和工具库的使用非常重要,npm 是现在最流行和方便的一个前端包管理工具,通过 npm 可以安装和使用许多优秀的开源库和组件,方便我们的开发提效。

    4 年前
  • npm 包 bomstream 使用教程

    在前端开发中,操作二进制数据是非常常见的需求。为了解决这个需求,npm 上提供了一个 bomstream 包,该包提供了一个可读可写的输入输出流,方便开发者操作二进制数据。

    4 年前
  • npm 包 bon 使用教程

    简介 bon 是一个基于 webpack 的前端打包工具,它提供了一系列优秀的功能,如代码压缩、图片压缩、CSS 合并、代码分析等等,使得开发者能够更加高效地进行项目开发。

    4 年前
  • npm 包 botbuilder-calling 使用教程

    在现代Web应用中,人机交互已经成为了一个不可或缺的组成部分。botbuilder-calling 是一款使用 Node.js 来构建基于电话咨询的应用程序的框架和库,它广泛应用于语音识别和自然语言处...

    4 年前
  • npm 包 botbuilder-calling-logging 使用教程

    在前端应用程序开发中,使用聊天机器人已成为一种越来越流行的交互方式。Bot Framework 是一款微软官方提供的聊天机器人开发框架。而 botbuilder-calling-logging 则部分...

    4 年前
  • npm 包 botbuilder-cognitiveservices 使用教程

    介绍 本文将提供 botbuilder-cognitiveservices npm 包的使用方法。botbuilder-cognitiveservices 是一个用于在 Microsoft Bot F...

    4 年前
  • npm 包 botbuilder-dynamodb-storage 使用教程

    在开发聊天机器人时,储存用户会话数据是很重要的一环。AWS DynamoDB 是云端 NoSQL 数据库,可与 Microsoft Bot Framework 集成,以储存和检索机器人的会话数据。

    4 年前
  • npm 包 botbuilder-facebook 使用教程

    前言 Facebook 是全球最大的社交网络之一,然而,不同于其它社交平台,Facebook 还有自己的 Messenger 平台,可以让用户在平台内聊天,创建自己的聊天机器人,为广大用户提供服务。

    4 年前
  • npm 包 bootstrap-for-ember 使用教程

    前言 Bootstrap 是目前最流行的前端框架之一,它提供了一系列的 CSS 样式和 JavaScript 插件,可以帮助开发者快速搭建一个现代化的网站。而 ember.js 是一个高性能的 Jav...

    4 年前
  • npm包bootstrap-fork使用教程

    简介 Bootstrap是一个流行的前端框架,用于设计和构建适用于各种设备和屏幕大小的响应式网站。bootstrap-fork是一个在Bootstrap基础上进行了修改、完善和增强的npm包,提供更多...

    4 年前
  • npm 包 bootstrap-form-error-reporter 使用教程

    如果您正在开发一个使用 Bootstrap 的 Web 应用程序,那么您一定会遇到需要处理表单验证和错误报告的问题。Bootstrap Form Error Reporter 是一个轻量级的 npm ...

    4 年前
  • NPM 包 Boostrapy 使用教程

    Boostrapy 是一个基于 Bootstrap 的轻量级前端 UI 库。它的设计风格简洁明了,易于使用和定制。本篇文章将介绍 Boostrapy 的基本使用方法和一些高级特性,让您在开发前端项目时...

    4 年前
  • npm 包 boostrapv4-wp 使用教程

    前言 Bootstrap 是一款基于 HTML、CSS、JS 的前端开发框架,可以帮助前端开发者快速创建漂亮且响应式的网站。而对于 WordPress 网站,我们可以通过使用 boostrapv4-w...

    4 年前
  • npm包boot-cli的使用教程

    什么是npm包? npm是Node.js的包管理工具。它允许JavaScript开发者在他们的项目中安装,共享和管理依赖项。 通常,开发人员在他们的项目中使用第三方模块包,这些模块包也可以在npm上找...

    4 年前
  • npm 包 boot-flex-grid 使用教程

    简介 bootstrap 是目前最流行的前端框架之一,而 boot-flex-grid 是 bootstrap 自带的一个弹性网格系统。这个 npm 包提供了一个简单快捷的方式使用这个弹性网格系统,让...

    4 年前
  • npm 包 boot-phase 使用教程

    前言 在前端开发中,使用 npm 包来管理依赖是非常常见的做法。而现代的前端项目中一个重要的概念是「运行阶段」(boot phase)。简单来说,就是指页面加载后在何时加载哪些资源,以及哪些资源需要最...

    4 年前
  • npm 包 bootstrap-grid-class-detector 使用教程

    在前端开发中,经常会用到 Bootstrap 框架进行 UI 的设计,而 Bootstrap 提供了一个基于栅格系统的响应式设计方式,可以让网页在不同屏幕大小下自动适应布局。

    4 年前

相关推荐

    暂无文章