Skip to content

Sharp更新日志

概述

這是 Sharp 圖像處理庫的完整更新日志,記錄了從 v0.10 到最新版本的所有重要變更。

v0.34 - hat

需要 libvips v8.17.1

v0.34.3 - 2025年7月10日

  • 升級到 libvips v8.17.1 以修復上游錯誤。
  • 添加"Magic Kernel Sharp"(無關聯)到調整大小內核。
  • 棄用頂級、格式特定的構造函數參數,例如 subifd 變為 tiff.subifd
  • 暴露 stylesheethighBitdepth SVG 輸入參數。
  • 暴露 keepDuplicateFrames GIF 輸出參數。
  • 添加對 RAW 數碼相機圖像輸入的支持。需要編譯時支持 libraw 的 libvips。
  • 在可能的情況下,將 XMP 元數據作為字符串和 Buffer 提供。
  • 為動畫圖像添加 pageHeight 選項到 createraw 輸入。
  • 暴露 JPEG 2000 oneshot 解碼器選項。
  • 支持非 sRGB 管道色彩空間的合成操作。
  • 添加 keepXmpwithXmp 用於控制輸出 XMP 元數據。

v0.34.2 - 2025年5月20日

  • 確保動畫 GIF 到 WebP 轉換保留循環(0.34.0 中的回歸)。
  • 確保使用 pdfBackground 構造函數屬性。
  • 添加對預構建 Windows ARM64 二進制文件的實驗性支持。
  • 確保使用 containfit 調整大小支持多個 alpha 通道。
  • TypeScript:確保 metadata 響應更接近現實。
  • TypeScript:確保 smartDeblock 屬性包含在 WebP 定義中。
  • 確保支持 Windows 上的寬字符文件名(0.34.0 中的回歸)。

v0.34.1 - 2025年4月7日

  • TypeScript:確保新的 autoOrient 屬性是可選的。

v0.34.0 - 2025年4月4日

  • 破壞性變更:支持要連接或動畫的輸入圖像數組。
  • 破壞性變更:確保 removeAlpha 移除所有 alpha 通道。
  • 破壞性變更:非動畫 GIF 輸出默認為無循環而不是永久循環。
  • 破壞性變更:通過升級到 C++17 支持寬字符系統上的 info.size
  • 破壞性變更:確保 background 元數據可以被 color 包解析。
  • 添加 isPalettebitsPerSample 到元數據,棄用 paletteBitDepth
  • 暴露 WebP smartDeblock 輸出選項。
  • 防止使用 v1 微架構的 linux-x64 二進制文件。
  • 添加 autoOrient 操作和構造函數選項。
  • TypeScript:確保通道計數使用正確的范圍。
  • 改進對 ppc64le 架構的支持。
  • 添加 pdfBackground 構造函數屬性。
  • 暴露腐蝕和膨脹操作。
  • 添加對 RGBE 圖像的支持。需要編譯時支持 radiance 的 libvips。
  • 允許在更高位深度下輸出寬色域 HEIF。

v0.33 - gauge

需要 libvips v8.15.3

v0.33.5 - 2024年8月16日

  • 升級到 libvips v8.15.3 以修復上游錯誤。
  • 添加 pageHeightpages 到多頁輸出的響應。
  • 確保強制使用全局安裝的 libvips 的選項正常工作。
  • 最小化使用 engines 屬性以改進 yarn v1 支持。
  • 確保 sharp.format.heif 在使用預構建二進制文件時僅包含 AVIF。
  • 為 recomb 操作添加對 4x4 矩陣的支持。
  • 將 PNG 文本塊暴露為 comments 元數據。
  • 暴露 blur 操作的可選 precisionminAmplitude 參數。
  • 確保 keepIccProfile 在可能的情況下避免色彩轉換。
  • TypeScript:chromaSubsampling 元數據是可選的。

v0.33.4 - 2024年5月16日

  • 移除 pipelineColourspace 的實驗狀態。
  • 當檢測到 musl 線程過度訂閱時減少默認並發性。
  • TypeScript:添加缺失的 OverlayOptions 定義。
  • 安裝:添加強制使用全局安裝的 libvips 的高級選項。
  • 暴露 bilinear 調整大小內核(和插值器)。
  • 確保 extend 操作對多頁 TIFF 保持順序(0.32.0 中的回歸)。
  • 收緊構造函數 text 整數屬性的驗證。
  • 簡化內部 StaySequential 邏輯。
  • 確保否定操作在配置文件轉換後發生。

v0.33.3 - 2024年3月23日

  • 升級到 libvips v8.15.2 以修復上游錯誤。
  • 確保 keepIccProfile 保留 P3 和 CMYK 輸入配置文件。
  • 確保 text.wrap 屬性可以接受 word-char 作為值。
  • 確保 clone 對現有選項進行深度復制。
  • heif 輸出添加 bitdepth 選項(預構建二進制文件僅支持 8 位)。

v0.33.2 - 2024年1月12日

  • 升級到 libvips v8.15.1 以修復上游錯誤。
  • TypeScript:添加 keepMetadata 的定義。
  • 確保 extend 操作在復制時保持順序(0.32.0 中的回歸)。
  • 改進對不支持的多頁旋轉的錯誤處理。

v0.33.1 - 2023年12月17日

  • 添加對 Yarn Plug'n'Play 文件系統布局的支持。
  • 在嘗試使用無效 ICC 配置文件時發出警告。
  • 確保尊重 VIPS_NOVECTOR 環境變量。

v0.33.0 - 2023年11月29日

  • 放棄對 Node.js 14 和 16 的支持,現在需要 Node.js ^18.17.0 或 >= 20.3.0
  • 預構建二進制文件通過 npm 注冊表分發並通過包管理器安裝。
  • 從源代碼構建需要依賴 node-addon-api
  • 移除 sharp.vendor
  • 部分棄用 withMetadata(),使用 withExif()withIccProfile()
  • 添加對基於 WebAssembly 運行時的實驗性支持。
  • trim 操作的選項必須是對象,添加新的 lineArt 選項。
  • 使用加權函數改進 tint 操作的亮度。
  • 確保所有 Error 對象都包含 stack 屬性。
  • 使 heifcompression 選項成為必需,以幫助減少 HEIF vs HEIC 混淆。
  • 確保正確解釋 16 位原始輸入。
  • 添加對使用 TIFF 輸出時 miniswhite 的支持。
  • TypeScript:添加缺失的 withMetadata 布爾定義。
  • 添加對輸出元數據的更精細控制。
  • 確保多頁提取保持順序。

v0.32 - flow

需要 libvips v8.14.5

v0.32.6 - 2023年9月18日

  • 升級到 libvips v8.14.5 以修復上游錯誤。
  • 確保合成平鋪圖像完全解碼(0.32.0 中的回歸)。
  • 確保 withMetadata 可以向 RGB16 輸出添加 ICC 配置文件。
  • 確保 withMetadata 不會將 16 位圖像減少到 8 位(0.32.5 中的回歸)。
  • TypeScript:添加 block 和 unblock 的定義。

v0.32.5 - 2023年8月15日

  • 升級到 libvips v8.14.4 以修復上游錯誤。
  • TypeScript:添加缺失的 WebpPresetEnum 到定義中。
  • 確保使用 musl v1.2.4 編譯。
  • 確保使用 insidefit 調整大小尊重 90/270 度旋轉。
  • TypeScript:確保 WebpOptionsminSize 屬性是布爾值。
  • 確保 withMetadata 添加默認 sRGB 配置文件。

v0.32.4 - 2023年7月21日

  • 升級到 libvips v8.14.3 以修復上游錯誤。
  • 暴露按名稱(取消)阻止低級 libvips 操作的能力。
  • 預構建二進制文件:恢復對基於平鋪輸出的支持。

早期版本

v0.31 - eagle

需要 libvips v8.13.3

v0.30 - dresser

需要 libvips v8.12.2

v0.29 - circle

需要 libvips v8.11.4

v0.28 - bijou

需要 libvips v8.10.6

v0.27 - avif

需要 libvips v8.9.2

v0.26 - zoom

需要 libvips v8.8.3

v0.25 - yield

需要 libvips v8.7.4

v0.24 - "wit"

需要 libvips v8.6.3

v0.23 - "vision"

需要 libvips v8.5.2

v0.22 - "uptake"

需要 libvips v8.4.5

v0.21 - "teeth"

需要 libvips v8.3.3

v0.20 - "prebuild"

需要 libvips v8.2.2

v0.19 - "suit"

需要 libvips v8.1.2

v0.18 - "ridge"

需要 libvips v8.0.2

v0.17 - "quill"

需要 libvips v7.1.0

v0.16 - "pencil"

需要 libvips v7.0.0

v0.15 - "outfit"

需要 libvips v6.1.0

v0.14 - "needle"

需要 libvips v6.0.0

v0.13 - "mind"

需要 libvips v5.0.0

v0.12 - "look"

需要 libvips v4.0.0

v0.11 - "knife"

需要 libvips v3.0.0

v0.10 - "judgment"

需要 libvips v2.0.0


此更新日志記錄了 Sharp 庫從 v0.10 到最新版本的所有重要變更。每個版本都包含了新功能、錯誤修復、性能改進和破壞性變更的詳細信息。

基於 Apache 2.0 許可證發布