tencent cloud

Cloud Object Storage

문서Cloud Object Storage

기본 이미지 처리

Download
포커스 모드
폰트 크기
마지막 업데이트 시간: 2024-06-25 11:17:42

소개

본 문서는 기본 이미지 처리에 대한 API 개요 및 SDK 예시 코드를 제공합니다.
서비스
기능
설명
기본 이미지 처리 서비스
동일 비율 조정, 타깃의 가로:세로 비율 설정 등 다양한 방법
일반 자르기, 크기 조정 자르기, 원형 자르기, 스마트 얼굴 자르기
자동 회전, 일반 회전
포맷 변환, GIF 포맷 최적화, 점진적 표시
JPG 및 WEBP 이미지 품질 변경
이미지 가우시안 블러 처리
이미지 샤프닝 처리
워터마크 추가
이미지 정보 가져오기
EXIF 정보 포함
이미지의 빠른 포맷 변환, 축소, 자르기 등 기능 구현 및 썸네일 생성


업로드 시 이미지 처리 사용

다음 예시는 이미지 업로드 시 자동 이미지 처리 방법입니다.
이미지 업로드 완료 후 COS는 원본과 처리한 이미지를 저장합니다. 이후에 사용자는 일반 다운로드 요청을 통해 처리했던 결과를 불러올 수 있습니다.

예시 코드

<!-- html 페이지 DOM 요소 -->

<!-- 업로드할 파일 선택 -->
<input id="fileSelector" type="file" />
<!-- 버튼을 클릭하여 업로드 -->
<input id="submitBtn" type="submit" />
function handleFileInUploading(file) {
cos.putObject(
{
Bucket: 'examplebucket-1250000000',
Region: 'COS_REGION',
Key: file.name,
Body: file,
Headers: {
// imageMogr2 인터페이스를 통해 이미지 크기 조정 기능 사용: 이미지 폭을 200으로 지정하고 폭 비율 압축
'Pic-Operations':
'{"is_pic_info": 1, "rules": [{"fileid": "desample_photo.jpg", "rule": "imageMogr2/thumbnail/200x/"}]}',
},
},
function (err, data) {
console.log(err || data);
},
);
}

document.getElementById('submitBtn').onclick = function (e) {
var file = document.getElementById('fileSelector').files[0];
if (! file) {
document.getElementById('msg').innerText = '업로드할 파일을 선택하지 않음';
return;
}
handleFileInUploading();
};

클라우드 데이터의 이미지 처리

다음 예시는 COS에 저장된 이미지에 알맞은 처리 작업을 하고 결과를 COS에 저장하는 방법입니다.

예시 코드

<!-- html 페이지 DOM 요소 -->

<!-- 버튼을 클릭하여 클라우드 데이터의 이미지 처리 요청 -->
<input id="submitBtn" type="submit" />
function handleFileInBucket() {
cos.request(
{
Bucket: 'examplebucket-1250000000',
Region: 'COS_REGION',
Key: 'exampleImage',
Method: 'POST',
Action: 'image_process',
Headers: {
// imageMogr2 인터페이스를 통해 이미지 크기 조정 기능 사용: 이미지 폭을 200으로 지정하고 폭 비율 압축
'Pic-Operations':
'{"is_pic_info": 1, "rules": [{"fileid": "desample_photo.jpg", "rule": "imageMogr2/thumbnail/200x/"}]}',
},
},
function (err, data) {
console.log(err || data);
},
);
}

document.getElementById('submitBtn').onclick = function (e) {
handleFileInBucket();
};

다운로드 시 이미지 처리 사용

다음 예시는 이미지 다운로드 시 이미지 처리 방법입니다.

예시 코드

<!-- html 페이지 DOM 요소 -->

<!-- 버튼을 클릭하여 파일 다운로드 및 다운로드 시 이미지 처리 사용 -->
<input id="submitBtn" type="submit" />
function getObject() {
cos.getObject(
{
Bucket: 'examplebucket-1250000000',
Region: 'COS_REGION',
Key: 'exampleobject',
QueryString: `imageMogr2/thumbnail/200x/`,
},
function (err, data) {
console.log(err || data);
},
);
}

이미지 처리 매개변수를 가진 서명 URL 생성

예시 코드

// 이미지 처리 매개변수를 가진 파일 서명 URL 생성, 만료 시간은 30분으로 설정.
cos.getObjectUrl(
{
Bucket: 'examplebucket-1250000000',
Region: 'COS_REGION',
Key: 'exampleobject',
Query: {
`imageMogr2/thumbnail/200x/`: ''
},
Expires: 1800,
Sign: true,
},
function (err, data) {
if (data) {
console.log(data.URL);
}
},
);

// 이미지 처리 매개변수를 가진 파일 URL 생성, 서명은 포함하지 않음
cos.getObjectUrl(
{
Bucket: 'examplebucket-1250000000',
Region: 'COS_REGION',
Key: 'exampleobject',
Query: {
`imageMogr2/thumbnail/200x/`: ''
},
Sign: false,
},
function (err, data) {
if (data) {
console.log(data.URL);
}
},
);

도움말 및 지원

문제 해결에 도움이 되었나요?

피드백