# @cornerstonejs/jpeg-lossless-decoder-js 中文文档

规范地址：https://npmcn.com/package/%40cornerstonejs/jpeg-lossless-decoder-js/

版本：2\.2\.1
npm 元数据更新时间：2026-09-11T14:05:23.703Z
中文译文更新时间：2026-11-10T19:27:38.013Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40cornerstonejs/jpeg-lossless-decoder-js
原文对照：https://npmcn.com/package/%40cornerstonejs/jpeg-lossless-decoder-js/?lang=original
项目主页：https://github.com/cornerstonejs/JPEGLosslessDecoderJS
源码仓库：https://github.com/cornerstonejs/JPEGLosslessDecoderJS

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

- 包体积（解压后）：309 kB，22 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：0 个
- 首次发布：2026-09-10T21:06:11.232Z
- 最新版本发布：2026-09-11T14:05:23.327Z
- 近 30 天下载量：97882（2026-10-11 至 2026-11-09，npm 官方下载统计）
- 已发布版本数：2（近 12 个月 2 个）

## 中文简介

一个JavaScript JPEG Lossless 解码器.

## 安装

```sh
npm install @cornerstonejs/jpeg-lossless-decoder-js
```

也可以使用：`pnpm add @cornerstonejs/jpeg-lossless-decoder-js`、`yarn add @cornerstonejs/jpeg-lossless-decoder-js`、`bun add @cornerstonejs/jpeg-lossless-decoder-js`

## README

# JPEG LosslessDecoderJS 化学化学反应

一个常见的DICOM压缩格式是JPEG Lossless. 标准JPEG解码器库中一般不支持这种格式.

此解码器可以从以下 DICOM 传输语法读取数据 :

-   1.2.840.1008.1.2.4.4.57 JPEG 无损失,无等级(流程14)
-   1.2.840.10008.1.2.4.4.70 JPEG 无损失,无等级(程序14\[选 1\])

### 使用量

[API 密码](https://github.com/rii-mango/JPEGLosslessDecoderJS/wiki/API) 财务报告和审定财务报表 [更多实例](https://github.com/cornerstonejs/JPEGLosslessDecoderJS/tree/main/tests)

```javascript
var decoder = new jpeg.lossless.Decoder();
var output = decoder.decompress(buffer [, offset [, length]]);

// Parameters
// {ArrayBuffer} buffer
// {Number} offset offset into buffer (default = 0)
// {Number} length length of buffer (default = end of JPEG block)

// Returns
// {ArrayBuffer} output (size = cols * rows * bytesPerComponent * numComponents)
```

### 安装

通过此分叉安装 [国家预防机制](https://www.npmjs.com/)数字 :

```
npm install @cornerstonejs/jpeg-lossless-decoder-js
```

这个叉子增加了字节相通的末端扫描固定. 没有瞄准镜 `jpeg-lossless-decoder-js@2.1.2` npm 上丢弃任意框架的最后样本 最后的Huffman代码完全结束在一个字节边界上,所以真实的 CT 图像 以错误的上一个像素解码.

### 测试

```
npm test
```

### 大楼

```
npm run build
```

这个写着 `lossless.js` 财务报告和审定财务报表 `lossless-min.js`,连同宣言 文件与源地图, 到 `/release`。 。 。 .

`release/` 正在构建输出并忽略它。 别犯法 承诺 `release/` 永远无法完整 因为同样 `.gitignore` 也排除 源地图和创建源代码的申报文件。 提交 `03bb80c0` 显示成本:承诺 `release/cjs/lossless.cjs` 还在 2.1.2建筑,它没有固定同一承诺增加的 `src/`。 。 。 .

两个版本 `package.json` 被故意持有, 每个人保留 建立稳定:

-   `overrides.esbuild` 坚持建设 `0.19.7`把它盖起来,然后 用于同一来源的不同编译 JavaScript 。 针 让我们 `npm audit fix` 更新测试工具而不修改已公布的工具 艺术品. `cornerstonejs/codecs` 针起起同样的原因.
    
    指针故意地覆盖了整棵树. 一针 `tsup` 一个人,因为 `overrides.tsup.esbuild`,使npm 10和npm 11建立不同的树—— npm 11会把树倒到0.19.7,npm 10会保持vite的筑起 0.28.2 旁边——然后一个锁文件不能为两者服务. 有了这个公寓 pin,npm 10.8,npm 10.9和npm 11.19都安装了同一种锁文件.
    
-   `typescript` 用途 `~5.4.3`没有 `^5.4.3`。类型脚本 5.7 制作 `ArrayBufferLike` 停止满足 `ArrayBuffer`,以及 `src/decoder.ts` 第93行 然后无法编译, 无法建立声明 。 抬起胸针 和类型说明一起使用 `src/`。 。 。 .
    

### 出版

**牵引请求标题决定释放.** 这个仓库壁球合并, 所以合并会写一个承诺 `main` 而拉动请求的标题是 承诺的主体. `.github/workflows/release.yml` 阅读主题和 选取版本. 您不手工编辑版本 .

| 标题 | 凸起 |
| --- | --- |
| `feat!: …`,或一个 `BREAKING CHANGE:` 页脚 | 主要 |
| `feat: …` | 小声 |
| `fix: …`, (中文(简体) ), `perf: …` | 补丁 |
| `build:`, (中文(简体) ), `chore:`, (中文(简体) ), `ci:`, (中文(简体) ), `docs:`, (中文(简体) ), `refactor:`, (中文(简体) ), `revert:`, (中文(简体) ), `style:`, (中文(简体) ), `test:` | 无释放 |
| 无常规前缀 | 合并前被拒绝 |

第四行中带有类型的标题是有效的,不发表任何内容,即 右键用于未到达软件包的更改.

`.github/workflows/pr-title.yml` 检查每个拉请求的标题,然后它 编辑后重新检查。 它没有一个非常规的标题,它 声明释放的有效标题将产生,因此结果在 合并。 检查本地标题 :

```bash
node tools/check-pr-title.mjs "fix: decode the last sample of a scan"
```

Pull request # 1 是检查存在的原因 。 7个,4个 `fix:`, (中文(简体) ), 在标题下合并 `chore: publish as @cornerstonejs/jpeg-lossless-decoder-js`。 。 。 . `chore` 释放什么,所以 发布工作流程没有发表任何内容——运行仍然报告成功, 因为"没什么可以释放的"是一个合法的绿色结果. 只有登记处 显示错误.

`tools/conventional.mjs` 遵守检查和释放的规则 读取,所以两者不能分开.

当发布到期时,工作流程将新版本写到 `package.json`, (中文(简体) ), 预留一个区域到 `CHANGELOG.md`,承诺为 `chore(release): publish`标记 `v<version>`并创建 GitHub发布. 构建任务跳过释放承诺,所以释放不会 开始另一个释放.

`tools/version.mjs` 决定版本, 它只写文件 。 问甚么 在任何时间,释放都会对一棵肮脏的树:

```bash
node tools/version.mjs --dry-run
```

每个git写作都留在工作流程中,因此脚本可以安全地在当地运行. `cornerstonejs/codecs` 分隔 `tools/release/version.mjs` 及其释放 工作流程也一样.

工作流程通过 OIDC 信任的出版以 npm 认证 。 它使用一个 短命的符號: npm 薄荷,用于每个运行和此工作流程文件的范围, 因此此寄存器没有 `NPM_TOKEN`。工作流程文件的名称是部分 配置: 重命名文件, npm 拒绝交换 .

#### 这个包裹是如何被拖走的

以下步骤已经完成。 它们被录制是因为 npm 无法创建软件包 通过信任的出版来命名, 所以首次发布任何新软件包名称 必须是手工的, 下一个从这里开始.

`2.2.0` 手工出版:

```bash
npm login                       # a web login session, not an access token
npm ci
npm run lint && npm test
npm publish                     # prepublishOnly runs the build first
```

这个工作流程后来被注册为软件包所信任的出版商,因此 以后的发行不需要符号 :

```bash
npm trust github @cornerstonejs/jpeg-lossless-decoder-js \
  --repo cornerstonejs/JPEGLosslessDecoderJS \
  --file release.yml \
  --allow-publish --yes

npm trust list @cornerstonejs/jpeg-lossless-decoder-js   # confirm it
```

`npm trust` 需要npm 11.1.5.0 或稍后,它只接受一个网页登录会话 - 颗粒状或经典访问符 `~/.npmrc` 401失败,甚至 虽然同一种出版物没有问题.

`npm trust github` ADDS 一个授权的发布路径,它不撤销任何内容. 在发布此软件包之前, 每一个访问符都可以发布 后来 要关闭此路径, 请设定软件包的出版访问权限 npmjs.com 改为"需要双要素认证和不允许令牌".

最后一个, `v2.2.0` 被标记在 `main`,因为手动发布不会创建标签和 `tools/version.mjs` 阅读自上次以来的承诺 `v*` 标签。 每个后来的标签 来自工作流程.

`2.2.0` 无出处证明: npm 只为信任者生成一个 发表于CI. 工作流程出版的每个版本都有一个.

### 承认

这个解码器最初由Helmut Dersch为Java所写. 我加入了对选择值 2 到 7 的支持, 贡献了错误修正并移植到 JavaScript .

还感谢 [@jens-ox (英语)](https://github.com/jens-ox) 用于更新此软件包到 TypeScript .

## 常见问题

### @cornerstonejs/jpeg-lossless-decoder-js 是什么？

一个JavaScript JPEG Lossless 解码器\.

### 如何安装 @cornerstonejs/jpeg-lossless-decoder-js？

在项目目录运行 npm install @cornerstonejs/jpeg-lossless-decoder-js，或使用 pnpm add / yarn add / bun add。

### @cornerstonejs/jpeg-lossless-decoder-js 支持 TypeScript 吗？

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

### @cornerstonejs/jpeg-lossless-decoder-js 支持 ESM 还是 CommonJS？

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

### @cornerstonejs/jpeg-lossless-decoder-js 可以商用吗？

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

### @cornerstonejs/jpeg-lossless-decoder-js 的下载量有多少？

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

### @cornerstonejs/jpeg-lossless-decoder-js 还在维护吗？

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

