@embedpdf/plugin-i18n

中文文档
3.2.0发布于 2026/11/12Apache-2.0TypeScriptESM + CJS近 30 天下载 121.3万

Translations for EmbedPDF: your viewer's UI in the user's language.

原始使用文档

@embedpdf/plugin-i18n

Translations for EmbedPDF: your viewer's UI in the user's language.

This plugin comes with each EmbedPDF framework package. Import it from the one you use:

FrameworkImport fromDocs
React@embedpdf/react/i18nTranslations
Vue@embedpdf/vue/i18nTranslations
Svelte@embedpdf/svelte/i18nTranslations
Angular@embedpdf/angular/i18nTranslations

In React

The translations plugin holds your viewer's text in every language you support, and switches between them while the app runs. Register it with the user's language:

i18n-plugin.tsx

import { i18nPlugin, negotiateLocale } from '@embedpdf/react/i18n';
import en from './locales/en';

const locale = negotiateLocale(['en', 'nl', 'de'], navigator.languages) ?? 'en';

export const plugins = [
  /* … */
  i18nPlugin({
    locale,
    locales: [{ code: 'en', name: 'English', translations: en }],
    loaders: {
      nl: () => import('./locales/nl').then((module) => module.default),
      de: () => import('./locales/de').then((module) => module.default),
    },
  }),
];

Then translate with useT():

save-button.tsx

import { useT } from '@embedpdf/react/i18n';

export function SaveButton() {
  const t = useT();
  return <button>{t('toolbar.save')}</button>;
}

negotiateLocale picks the best language you have for what the browser asks, such as nl for a browser set to nl-BE, within the script it's written in: zh-TW doesn't get zh-CN, since Taiwan writes Traditional Chinese and zh-CN is Simplified. A language in loaders is loaded the first time someone switches to it, so your bundle carries only the one you start with. A fallback language in loaders loads at the start, and a language shows once it and the fallback language are in.

License

Apache-2.0

版本与发布记录

@embedpdf/plugin-i18n 共发布 63 个版本,首次发布于 2025/12/04;过去 12 个月发布了 63 个版本。

版本发布日期距今
3.2.0latest2026/11/121 天前
3.1.02026/11/094 天前
3.0.02026/11/076 天前
3.0.0-next.23next2026/11/076 天前
3.0.0-next.222026/11/049 天前
3.0.0-next.212026/11/0310 天前

关于 @embedpdf/plugin-i18n 的常见问题

@embedpdf/plugin-i18n 是什么?

Translations for EmbedPDF: your viewer's UI in the user's language.

如何安装 @embedpdf/plugin-i18n?

在项目目录运行 npm install @embedpdf/plugin-i18n,或使用 pnpm add / yarn add / bun add。

@embedpdf/plugin-i18n 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@embedpdf/plugin-i18n 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@embedpdf/plugin-i18n 可以商用吗?

@embedpdf/plugin-i18n 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@embedpdf/plugin-i18n 的下载量有多少?

根据 npm 官方下载统计,@embedpdf/plugin-i18n 在 2026/10/14 – 2026/11/12 这 30 天内被下载 1,213,321 次,日均约 40,444 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@embedpdf/plugin-i18n 还在维护吗?

最新版本 3.2.0 发布于 2026/11/12(1 天前);至今共发布 63 个版本,其中过去 12 个月发布了 63 个;首次发布于 2025/12/04。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。