隨著行動裝置和相機的普及,我們經常需要透過程式處理圖片。其中,圖片的旋轉是一個非常常見的需求。在本文中,我們將介紹如何使用 Node.js 取得圖片的旋轉角度。
準備工作
在開始之前,需要確保已經安裝並配置了 Node.js 環境。另外,我們還需要安裝一個名為「exif-parser」的 Node.js 模組,使用該模組可以讀取圖片的 Exif 資訊。
安裝「exif-parser」模組的方法如下:
npm install exif-parser
取得圖片旋轉角度的方法
在了解如何取得圖片旋轉角度之前,我們必須先了解一些關於Exif 的知識。 Exif 是儲存在數位相機拍攝的圖片中的元數據,包括相機型號、拍攝時間、ISO 值、光圈等資訊。在 Exif 中,有一個名為「Orientation」的屬性,它記錄了圖片的方向資訊。
其中,「Orientation」的值可以為以下數字:
1:表示圖片沒有發生任何旋轉,此時圖片的預設方向是向上的
2:表示圖片水平翻轉
3:表示圖片逆時針旋轉180度
4:表示圖片垂直翻轉
5:表示圖片順時針旋轉90度並水平翻轉
6:表示圖片順時針旋轉90度
7 :表示圖片逆時針旋轉90度並水平翻轉
8:表示圖片逆時針旋轉90度
有了這些信息,獲取圖片旋轉角度就變得非常簡單。我們只需要讀取 Exif 資訊中的「Orientation」屬性值,根據不同的值來決定圖片的旋轉角度。
下面是取得圖片旋轉角度的程式碼:
// 引入「exif-parser」模組
const ExifParser = require('exif-parser');
//引入檔案讀取模組
const fs = require('fs');
// 定義圖片路徑
const imagePath = './example.jpg';
#/ / 讀取圖片檔案
const imageBuffer = fs.readFileSync(imagePath);
// 解析Exif 訊息
const exifParser = ExifParser.create(imageBuffer);
const exifResult = ExifParser.create(imageBuffer);
// 取得Orientation 屬性值
// 根據不同的值來決定圖片的旋轉角度
let degree = 0;
switch (orientation) {
degree = 180; break;case 6:
degree = 90; break;case 8:
degree = 270; break;}
#console.log(
圖片旋轉角度為${degree} 度
總結
以上是nodejs取得圖片旋轉角度的詳細內容。更多資訊請關注PHP中文網其他相關文章!