sharp 處理圖片(typescript)

1.安裝

npm i sharp

npm i @types/sharp

2.import  sharp  from  "sharp";

 

3.介紹

  • git 地址:https://github.com/lovell/sharp
  • 文檔地址: https://sharp.pixelplumbing.com/api-channel
  •  
    /**
    * 使用clone()原因:
    *   拍攝Sharp實例的“快照”,返回一個新實例。克隆的實例繼承其父實例的輸入。允許多個輸出流,因此
    * 允許多個處理管道共享一個輸入流。
    * 具體詳情見官方文檔:
    * fit:(默認位置爲centre)
    *     cover:(默認)保留長寬比,通過裁剪/剪切以確保圖像覆蓋兩個提供的尺寸。
    *     contain:保留長寬比,必要時在兩個提供的尺寸內都包含“ letterboxing”。
    *     fill:忽略輸入的寬高比,並拉伸到兩個提供的尺寸。
    *     inside:保留高寬比,將圖像調整爲儘可能大的尺寸,同時確保其尺寸小於或等於指定的尺寸。
    *     outside:保留高寬比,將圖像調整爲儘可能小的尺寸,同時確保其尺寸大於或等於指定的尺寸。
    * kernel: (核心, 默認lanczos3)
    *     nearest:使用最近鄰插值 。
    *     cubic:使用Catmull-Rom樣條線 。
    *     mitchell:使用Mitchell-Netravali樣條曲線 。
    *     lanczos2:將Lanczos內核 與一起使用a=2。
    *     lanczos3:使用Lanczos內核a=3(默認設置)。
    */
    
    
    
    //例子:通過剪裁覆蓋規定的尺寸
    sharp(”input.png)
      .clone()
      .resize(100, 100,{fit: "cover"})
      .toBuffer();
    
    //例子: 通過拉伸縮小,覆蓋規定的尺寸
    sharp(”input.png)
      .clone()
      .resize(100, 100,{fit: "fill"})
      .toBuffer();

     

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章