@anaralabs/lector

中文文档
3.17.0发布于 2026/11/06MITTypeScriptESM + CJS构建来源已验证近 30 天下载 27.8万

反应的无头 PDF 查看器

中文使用文档
文档目录6 节
  1. 在屏幕上获取 PDF
  2. 构建您的应用需要的阅读器
  3. 使用编码助手
  4. 关于Lector的工作
  5. 鸣谢
  6. 许可证

莱克特

React的无头PDF查看器. 将页面、文本选择、搜索和说明写入自己的阅读经验。 Lector处理PDF.js渲染和页面虚拟化;您控制了布局和UI.

文档 • 妇女 现场演示 • 妇女 无 • 妇女 捐款

在屏幕上获取 PDF

使用回放19+. 当前来源预计 pdfjs-dist ^5.5.207。这些文档轨道 main; 检查 释放 与您安装的软件包版本相对应.

npm install @anaralabs/lector pdfjs-dist@^5.5.207

复制 PDF.js 的工人 从您的应用程序安装的依赖性到它的公共资产。 当您更新 PDF.js 时, 复制它, 这样运行时间和工人版本匹配 .

mkdir -p public/pdfjs
cp node_modules/pdfjs-dist/legacy/build/pdf.worker.min.mjs public/pdfjs/

设置 PDF 位址 public/sample.pdf,然后添加此浏览器已交付的组件 :

import { CanvasLayer, Page, Pages, Root, TextLayer } from "@anaralabs/lector";
import { GlobalWorkerOptions } from "pdfjs-dist/legacy/build/pdf.mjs";
import "pdfjs-dist/web/pdf_viewer.css";

GlobalWorkerOptions.workerSrc = "/pdfjs/pdf.worker.min.mjs";

export default function PDFViewer() {
  return (
    <Root
      source="/sample.pdf"
      style={{ height: 600 }}
      loader={<p role="status">Loading PDF…</p>}
    >
      <Pages>
        <Page>
          <CanvasLayer />
          <TextLayer />
        </Page>
      </Pages>
    </Root>
  );
}

对于 下一个.js,通过客户端组件使用 dynamic(..., { ssr: false }); 将 PDF.js 设置在动态加载模块内。 见 安装 用于全包装,维特工人设置,以及路径前缀下方的部署.

Root 装入文档并提供其状态. Pages 拥有滚动和克隆一个 Page 可见页面模板. CanvasLayer 绘制PDF; TextLayer 添加可选文本 。 给取景者一个确定的高度并导入 PDF.js 样式表, 使其分层对齐 .

构建您的应用需要的阅读器

特性从这里开始
工具栏、页面输入和布局你的第一个观众
认证的 URL、 本地文件、 错误和自寄资产正在装入文档
页面导航和适应宽度导航, (中文(简体) ), 缩放
页面预览缩略图
文本搜索和突出显示的结果搜索
甄选和引用区域选择, (中文(简体) ), 突出内容
PDF 链接和可编辑窗体字段链接, (中文(简体) ), 表单
暗页渲染黑暗模式
道具、钩子和默认API 参考

Lector是一个工具包,而不是一个完成的工具栏或PDF编辑器. 您的应用程序提供可访问控制、 错误 UI 和用户说明的存储 。 搜索需要嵌入式文本;它不执行OCR. 自定义亮度覆盖不会自动修改 PDF 文件 。 见 排除出问题 包括工人错误、空白页和排版问题.

使用编码助手

连接 MCP 客户端 https://anara.com/lector/mcp 使用可流取的 HTTP,没有 API 密钥。 它可以通过工具和资源搜索和阅读每一个指南。 见 人工智能特工和MCP 用于设置和实例请求.

直接取取时, 首先 页:1读取 个人马克下线指南,或使用 完整文档。这些出口来自与网站相同的来源.

关于Lector的工作

从寄存器根起,有节点.js 22.13+和pnpm 9.5.0:

pnpm install --frozen-lockfile
pnpm --filter @anaralabs/lector build
pnpm --filter docs dev

打开 本地主机 : 000/ docs。 Docs 应用程序使用本地工作空间软件包。 将表模式、验证命令和另一个应用程序中的测试改为 捐款额。 。 。 .

鸣谢

灵感来自 无头反应- pdf 财务报告和审定财务报表 pdf阅读器。在 PDF.js (英语) 财务报告和审定财务报表 反应。 。 。 .

许可证

麻省理工学院 © 阿纳拉

版本与发布记录

@anaralabs/lector 共发布 77 个版本,首次发布于 2025/03/20;过去 12 个月发布了 53 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
3.17.0latest2026/11/061 天前
3.16.42026/10/2810 天前
3.16.32026/10/2711 天前
3.16.22026/10/1919 天前
3.16.12026/10/1523 天前
3.16.02026/10/1424 天前

关于 @anaralabs/lector 的常见问题

@anaralabs/lector 是什么?

反应的无头 PDF 查看器

如何安装 @anaralabs/lector?

在项目目录运行 npm install @anaralabs/lector,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:react(>=19)、pdfjs-dist(^5.5.207)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@anaralabs/lector 支持 TypeScript 吗?

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

@anaralabs/lector 支持 ESM 还是 CommonJS?

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

@anaralabs/lector 可以商用吗?

@anaralabs/lector 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@anaralabs/lector 的下载量有多少?

根据 npm 官方下载统计,@anaralabs/lector 在 2026/10/06 – 2026/11/04 这 30 天内被下载 277,645 次,日均约 9,255 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@anaralabs/lector 还在维护吗?

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