본문 바로가기
프로그래밍/ASP

이미지 저장시 리사이즈

by 백룡화검 2009. 6. 4.
이미지 업로드시 나누미 프로시져를 이용하면 저장 이미지 리싸이징이 가능합니다.

ABC컨포넌트하고 같이!!

' ***************************************************************************************
' * 함수설명 : 파일 사이즈 체크 *
' * 변수설명 : intSize = 파일크기 (BYTE) *
' ***************************************************************************************
FUNCTION GetFilesize(intSize)
   IF intSize <> "" AND ISNULL(intSize) = False THEN
      IF INT(intSize) > 1024000 THEN
         GetFilesize = ROUND((intSize / 1024000) * 1000 / 1000) & " MB"
      ELSEIF INT(intSize) > 1024 THEN
         GetFilesize = ROUND((intSize / 1024) * 10 / 10) & " KB"
      ELSE
         GetFilesize = intSize & " Byte"
      END IF
   END IF
END FUNCTION

' ***************************************************************************************
' * 함수설명 : 파일 저장 함수 *
' * 변수설명 : setUploadComponet = 업로드 컴포넌트 (1 : ABC, 2 : DEXT) *
' * strFileField = 파일폼 *
'   * intUploadSize = 업로드 제한 사이즈 *
'   * strPath = 저장경로 *
' ***************************************************************************************
FUNCTION ExecFIleUpload(setUploadComponet, strFileField, intUploadSize, strPath, strUploadNotFile,
bitUploadReplaceFile, strUploadReplaceFile, bitThrum, intThrumWidth, intThrumHeight, bitThrumScale)

   DIM bitNext, nowFileSize, nowFileName, FileExe, strSaveFIleName, strFileNameOnly, I,
strUploadNotFileTmp

   SELECT CASE setUploadComponet
   CASE "1"
      nowFileSize = strFileField.Length
      nowFileName = strFileField.SafeFileName
   CASE "2"
      nowFileSize = strFileField.FIleLen
      nowFileName = strFileField.FileName
   END SELECT
      IF nowFileName = "" OR ISNULL(nowFileName) = True THEN
         ExecFIleUpload = False
      ELSE
         IF INT(nowFileSize) < INT(intUploadSize) THEN

         strSaveFIleName = checkSameFile(strPath, nowFileName)
         FileExe = REPLACE(MID(strSaveFIleName, INSTRREV(strSaveFIleName, ".")
+ 1), ".", "")
         strFileNameOnly = REPLACE(LEFT(strSaveFIleName, INSTRREV
(strSaveFIleName, ".") - 1), "'", "")
         IF LEN(strFileNameOnly) > 60 THEN strFileNameOnly = LEFT
(strFileNameOnly, 60)
            IF strUploadNotFile <> "" AND ISNULL(strUploadNotFile) = False
THEN
            strUploadNotFileTmp = SPLIT(strUploadNotFile, ",")
            FOR I = 0 TO UBOUND(strUploadNotFileTmp)
               IF UCASE(FileExe) = UCASE(strUploadNotFileTmp(I))
THEN
                  ExecFIleUpload = False
                  EXIT FOR
                  EXIT FUNCTION
               END IF
            NEXT              
         END IF

         IF bitUploadReplaceFile = True THEN
            IF strUploadReplaceFile <> "" AND ISNULL(strUploadReplaceFile)
= False THEN
               DIM strUploadReplaceFileTemp
               strUploadReplaceFileTemp = SPLIT
(strUploadReplaceFile, ",")
               FOR I = 0 TO UBOUND(strUploadReplaceFileTemp)
                  IF UCASE(FileExe) = UCASE
(strUploadReplaceFileTemp(I)) THEN
                     IF UCASE
(strUploadReplaceFileTemp(I)) = UCASE(FileExe) THEN
                        strSaveFIleName =
strFileNameOnly & ".txt"
                        EXIT FOR
                        END IF
                  END IF
               NEXT
            END IF
         END IF

         CALL ExecFolderMake(strPath)
            SELECT CASE setUploadComponet
         CASE "1" : strFileField.SAVE strPath & strSaveFIleName
         CASE "2" : strFileField.saveAS strPath & strSaveFIleName
         END SELECT

         SELECT CASE UCASE(FileExe)
         CASE "JPG", "GIF", "BMP", "PNG", "TIF"
            IF bitThrum = True THEN CALL NanumiThrum(strSaveFIleName,
strPath, intThrumWidth, intThrumHeight, bitThrumScale)
         END SELECT

         ExecFIleUpload = strSaveFIleName
   
      ELSE

         ExecFIleUpload = False

      END IF

   END IF

END FUNCTION

이상 위코드를 참고하시고 출처는 아티보드 코드 일부중에서 입니다.

출처 : http://www.taeyo.pe.kr/Forum/Content.aspx?SEQ=143247&TBL=ASP&PGN=1