# @ar-js-org/artoolkit5-js 中文文档

规范地址：https://npmcn.com/package/%40ar-js-org/artoolkit5-js/

版本：0\.3\.2
npm 元数据更新时间：2025-11-01T13:02:38.668Z
中文译文更新时间：2026-11-06T14:03:25.351Z
软件包许可：LGPL-3\.0

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40ar-js-org/artoolkit5-js
原文对照：https://npmcn.com/package/%40ar-js-org/artoolkit5-js/?lang=original
项目主页：https://github.com/andypotato/artoolkit5-js#readme
源码仓库：https://github.com/andypotato/artoolkit5-js

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：885 kB，18 个文件
- 模块格式：CommonJS
- TypeScript 类型：包内自带
- 运行依赖：2 个
- 首次发布：2021-04-20T20:08:14.133Z
- 最新版本发布：2025-11-01T13:02:38.447Z
- 近 30 天下载量：3065（2026-10-07 至 2026-11-05，npm 官方下载统计）
- 已发布版本数：8（近 12 个月 0 个）

## 中文简介

Aratolokit5的ES6模块端口

## 安装

```sh
npm install @ar-js-org/artoolkit5-js
```

也可以使用：`pnpm add @ar-js-org/artoolkit5-js`、`yarn add @ar-js-org/artoolkit5-js`、`bun add @ar-js-org/artoolkit5-js`

## README

# 校对:soup

这是AR.js项目的Artoolkit5-js分叉.

ES6 模块端口 [aratoolkit5 (英语)](https://github.com/artoolkitx/artoolkit5)基于(现已失效的)原件 [标记到 JavaScript 端口](https://npmcn.com/package/%40ar-js-org/artoolkit5-js/github.com/artoolkitx/jsartoolkit5) 财务报告和审定财务报表 [改进](https://github.com/kalwalt/jsartoolkit5) 以 [沃尔特·佩尔丹](https://github.com/kalwalt)。 。 。 .

这个构件是用WASM来进行尽可能最佳的性能,被设计成(或多或少地)作为前作jsartoolkit5的倒置替代. 先前API的某些部分被重构,以实施Async接口而不是之前基于回调的接口.

## 安装

这个 **校对:soup** 软件包可通过国家预防机制安装:

```
npm install @ar-js-org/artoolkit5-js
```

该模块以UMD格式构建,可以用于不同的环境:

### 浏览器

```html
<script src="/path/to/ARToolkit.js"></script>
```

### 节点.js

```js
const ARToolkit = require('artoolkit5-js');
```

### ES6 导入

```js
import ARToolkit from 'artoolkit5-js';
```

## 使用量

### 1) 创建控制器实例

首先,你需要创建实例 `ARController`数字 :

```js
ARController.initWithDimensions(640, 480, '/data/camera_para.dat').then(controller => { ... });
```

这将创建一个 AR 控制器 , 期望 640x480 维度的源图像 。 第二个参数是一个相机定义文件,它描述了您图像/视频输入设备的特性. 如果您不知道要使用哪个文件, 请使用默认 [相机 para.dat](https://github.com/andypotato/artoolkit5-js/blob/master/data/camera_para.dat) 包含在本存储库中.

还有一个替代的初始化器 `initWithImage` 以方便方法接受 `HTMLImageElement` 或者说 `HTMLVideoElement` 而不是宽度 / 高。 然而这显然只在浏览器(或MonkeyPatched)环境中有效.

### (2) 添加要跟踪的标记

您接下来需要加载标记文件以跟踪您的控制器 。 在这个例子中,“ Hiro” 标记的图案文件被加载:

```js
controller.artoolkit.addMarker(controller.id, '/data/hiro.patt').then(hiroMarkerId => { ... });
```

### 3) 开始跟踪

```js
// track with 60 FPS
const FPS = 60;

setInterval(() => {

  const result = controller.detectMarker();
  if(result !== 0) {
    // ARToolkit returning a value !== 0 means an error occured
    console.log('Error detecting markers');
    return;
  }

  // get the total number of detected markers in frame
  const markerNum = controller.getMarkerNum();
  let hiroFound = false;

  // check if one of the detected markers is the "Hiro" marker
  for(let i = 0; i < markerNum; i++) {
    const markerInfo = controller.getMarker(i);
    if(markerInfo.idPatt == hiroMarkerId) {
      // store the marker ID from the detection result
      hiroFound = i;
      break;
    }
  }

  if(hiroFound !== false) {
    console.log("You have found the HIRO marker");
  }

}, 1000 / FPS);
```

## 其他ARTolkit API方法

您可以访问所有公开的 ARTolkit 方法 和这样的类常数 :

```js
  // for the full API documentation see
  // https://github.com/artoolkit/artoolkit5
  artoolkit.detectMarker( ... );

  console.log(artoolkit.AR_LOG_LEVEL_DEBUG);
```

## 目前的限制

由于时间限制,该建筑不执行多标记支持(yet). 增加支持应该是微不足道的,尽管所有的基础已经奠定。 一旦时间允许,我会执行它 但公关当然欢迎!

## 常见问题

### @ar-js-org/artoolkit5-js 是什么？

Aratolokit5的ES6模块端口

### 如何安装 @ar-js-org/artoolkit5-js？

在项目目录运行 npm install @ar-js-org/artoolkit5-js，或使用 pnpm add / yarn add / bun add。

### @ar-js-org/artoolkit5-js 支持 TypeScript 吗？

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

### @ar-js-org/artoolkit5-js 支持 ESM 还是 CommonJS？

以 CommonJS 形式发布，可以直接 require\(\)；在 ES Module 项目中也可以用 import 引入（Node\.js 会把 module\.exports 作为默认导出）。

### @ar-js-org/artoolkit5-js 可以商用吗？

@ar-js-org/artoolkit5-js 使用 LGPL-3\.0 许可。弱 Copyleft：作为库被调用时通常不要求开源你自己的代码，但修改库本身需以 LGPL 开源；前端打包合并后的适用边界存在不同理解。以上为概括，不构成法律意见，请以许可原文为准。

### @ar-js-org/artoolkit5-js 的下载量有多少？

根据 npm 官方下载统计，@ar-js-org/artoolkit5-js 在 2026/10/07 – 2026/11/05 这 30 天内被下载 3,065 次，日均约 102 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @ar-js-org/artoolkit5-js 还在维护吗？

最新版本 0\.3\.2 发布于 2025/11/01（1 年前）；至今共发布 8 个版本，其中过去 12 个月发布了 0 个；首次发布于 2021/04/21。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

