Skip to content

Improve PNG handling#14

Merged
terurou merged 17 commits intodenkiyagi-forkfrom
improvement/replace-png-lib
Jan 7, 2026
Merged

Improve PNG handling#14
terurou merged 17 commits intodenkiyagi-forkfrom
improvement/replace-png-lib

Conversation

@falworks-dy
Copy link

@falworks-dy falworks-dy commented Jan 6, 2026

機能変更概要

  • 破損したPNGを入力した際にフリーズすることがある問題を解消
  • (副産物的な変更として)アニメーションPNGを拒否せず、単一画像として扱うように変更

実装等の変更点

  • PNGデコードに用いるnpmライブラリーを @pdf-lib/upng から fast-png に切り替え
  • @pdf-lib/upng が提供していたRGBA変換処理が fast-png には存在しないため、新規モジュール fast-png-helper.ts にて同等の再実装を行うことで、既存モジュール png.ts 内の流れを維持

テスト

  • PDFDocument.spec.ts: 破損PNGをPDFに埋め込む際にフリーズしないことを確認するテストを追加
  • png.spec.ts: 様々な形式(色チャネル数やビット深度)のPNGを処理できることを確認するテストを追加

その他

  • バージョンを 1.17.1-mod.2025.8 から 1.17.1-mod.2026.1 に更新

@falworks-dy falworks-dy requested a review from terurou January 6, 2026 18:19
@terurou terurou merged commit 6ec384e into denkiyagi-fork Jan 7, 2026
4 checks passed
@terurou terurou deleted the improvement/replace-png-lib branch January 7, 2026 00:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants