이미지 읽기와 저장 |
TABS Image 컴포넌트는 TABS Upload 제품에 포함되어 있는 이미지 처리 컴포넌트입니다. 이 컴포넌트를 사용하면 웹에서 사용되는 이미지 파일을 읽어 처리한 후 저장할 수 있습니다. TABSUpload4.Image라는 이름으로 오브젝트를 생성한 후 오브젝트가 제공하는 프로퍼티와 메서드를 사용해서 이미지를 처리합니다.
Samples\ImageSample 폴더에 있는 imagevbs.inc 파일에는 Image 컴포넌트가 사용하는 각종 상수 값이 정의되어 있으므로 #include를 사용해서 참조합니다.
Load 메서드는 이미지 파일을 메모리로 로딩합니다. Load 메서드를 비롯한 주요 메서드는 처리 결과로 상태 값(Status)을 반환합니다. 스크립트에서 이 값을 참조해 오류 처리를 해야 안정적인 서비스를 제공할 수 있습니다.
이미지 처리가 끝난 후 Close 메서드를 사용해 할당된 메모리를 해제합니다. 페이지 실행이 완료되어 Image 오브젝트가 해제될 때 메모리가 자동으로 해제되지만 가급적 Close 메서드를 호출해 사용이 끝난 Image를 즉시 닫도록 합니다.
<!-- #include file="imagevbs.inc" --> <% Dim Image, Status Set Image = Server.CreateObject("TABSUpload4.Image") Status = Image.Load("C:\Images\sample1.jpg") If Status = Ok Then Response.Write "Size: " & Image.Width & "x" & Image.Height .... Image.Close Else Response.Write "이미지 파일을 열 수 없습니다. 오류 코드: " & Status End If %>
Save 메서드를 호출하면 메모리에 있는 이미지 데이터를 지정된 포맷으로 저장할 수 있습니다. 저장 가능한 포맷은 JPEG, PNG, BMP 입니다.
JPEG의 경우 이미지 품질 파라미터를 조정해 파일 크기를 조절할 수 있습니다.
<!-- #include file="imagevbs.inc" --> <% Dim Image, Status Set Image = Server.CreateObject("TABSUpload4.Image") Status = Image.Load("C:\Images\sample1.jpg") If Status = Ok Then .... Image.Save "C:\Images\sample2.jpg", 100, True Image.Close Else Response.Write "이미지 파일을 열 수 없습니다. 오류 코드: " & Status End If %>