[G5] 이미지 업로드시 사이즈 변경 (리사이징) - TYPE1 > 기술자료 | 해피정닷컴

[G5] 이미지 업로드시 사이즈 변경 (리사이징) - TYPE1 > 기술자료

본문 바로가기

사이트 내 전체검색

[G5] 이미지 업로드시 사이즈 변경 (리사이징) - TYPE1 > 기술자료

그누보드 [G5] 이미지 업로드시 사이즈 변경 (리사이징) - TYPE1

페이지 정보


본문

게시판에서 큰 이미지를 업로드시 사이즈(크기) 변경입니다 
plugin 을 활용합니다.


1. https://github.com/eventviva/php-image-resize 서 플러그인을 다운 받고 압축을 풉니다. 


2. 그누보드5 / plugin / 에  폴더를 생성후 파일업로드
                                  └ php-image-resize-master
                                            ├ ImageResize.php
                                            └ ImageResizeException.php


3. 적용 테스트
실제 적용하기 앞서 플러그인이 웹호스팅 계정에서 사용 가능한지 확인합니다.
http://도메인/plugin/php-image-resize-master/lib/ImageResize.php  이렇게 브라우저에 주소를 입력해봅니다.
Parse error: syntax error, unexpected T_STRING in /home/happyjung/www/plugin/php-image-resize-master/lib/ImageResize.php on line 3
이렇게 에러가 발생한다면 사용할 수 없습니다.
이 플러그인은 php 5.3 이상 설치된 서버에서만 사용 가능합니다.


4. 그누보드5 / skin / board / basic / write_update.head.skin.php 파일을 만드시고  아래 내용을 입력합니다 

<?php 
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가 

include G5_PLUGIN_PATH."/php-image-resize-master/ImageResize.php";//플러그인 경로를 확인하세요 

$width   = 900;  //  너비 px
$height  = 8192; //  높이 px (포토샵에서 지원하는 최대 높이값)
$quality = 90;   //  선명도 %

//use \Eventviva\ImageResize; 
use \Gumlet\ImageResize;

for ($i=0; $i<count($_FILES['bf_file']['name']); $i++) { 
    //이미지 내용 확인 
    $tmp_file  = $_FILES['bf_file']['tmp_name'][$i]; 
    $filename  = $_FILES['bf_file']['name'][$i]; 
    
    //이미지 확장자 검사 
    if($filename && preg_match("/\.({$config['cf_image_extension']})$/i", $filename)){ 
        // image type 검사 
        $timg = @getimagesize($tmp_file); 
        if ($timg['2'] < 1 || $timg['2'] == 16 || $timg['2'] == 17 || $timg['2'] > 18) { // WebP 추가
            continue; 
        } 
        //이미지 변경 
        $image = new ImageResize($tmp_file); 
        $image->resizeToBestFit($width, $height); 
        $image->save($tmp_file, null, $quality); 
        $_FILES['bf_file']['size'][$i]=filesize($tmp_file); 
        unset($image); 
    } 
}


사례
가로 1000 x 세로 8192  임의의 이미지를 생성후 업로드시 사이즈 변환
사이즈 :  원본 1000 x 8192  ->  업로드  900 x 7,317 px
JPG : 원본      501,574  ->  업로드    232,347 byte
PNG : 원본  1,340,635   -> 업로드  1,753,153 byte

JPG 와 PNG의 태생적 차이때문인지 모르지만 용량이 저렇게 변하네요 ^^


참고자료
https://sir.kr/g5_tip/5910 

댓글목록

profile_image

휴먼님의 댓글

no_profile 휴먼 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 작성일

유익한 자료 감사합니다.
덕분에 잘 쓰겠습니다.

시용해봤는데, 오류가 나기에 검색 좀 해봤습니다.
아래처럼 고쳐야 정상적으로 작동되는 모양입니다.

// php 5.3버전에서부터 추가된 namespace 기능
/* use \Eventviva\ImageResize;  */
use \Gumlet\ImageResize;

profile_image

관리자1님의 댓글의 댓글

관리자1 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 작성일

감사합니다.  함수가 변경되었군요.


Total 460건 1 페이지
  • RSS
기술자료 목록
460
그누보드   1021  2025-02-07 08:55 ~ 2025-02-07 17:04  
459
그누보드   1289  2024-11-26 21:14 ~ 2024-11-26 21:22  
458
그누보드   1488  2024-11-22 10:52 ~ 2024-11-22 11:03  
457
그누보드   2183  2024-02-23 18:40 ~ 2024-02-24 06:13  
456
그누보드   3188  2023-11-06 20:38  
455
그누보드   4054  2023-04-07 18:22 ~ 2023-04-07 18:40  
454
그누보드   4011  2023-04-07 08:45 ~ 2023-04-07 10:00  
453
그누보드   4759  2023-04-06 22:37  
452
그누보드   4518  2023-02-03 16:25  
451
그누보드   3031  2023-01-20 19:39 ~ 2023-01-20 23:13  
450
그누보드   3689  2023-01-06 10:36  
449
그누보드   3801  2022-12-31 09:25 ~ 2025-05-02 15:21  
448
그누보드   4446  2022-11-10 20:41 ~ 2022-11-14 01:03  
447
그누보드   4158  2022-10-07 20:11  
446
그누보드   4623  2022-06-11 00:52  
445
그누보드   4089  2022-05-27 11:42 ~ 2022-05-27 11:44  
444
그누보드   6187  2022-01-25 12:27 ~ 2022-02-01 09:59  
443
그누보드   5749  2021-12-22 08:54 ~ 2021-12-22 08:56  
442
그누보드   4449  2021-12-14 07:05  
441
그누보드   5755  2021-11-21 05:59 ~ 2021-11-24 00:20  

검색

해피정닷컴 정보

회사소개 회사연혁 협력사 오시는길 서비스 이용약관 개인정보 처리방침

회사명: 해피정닷컴   대표: 정창용   전화: 070-7600-3500   팩스: 042-670-8272
주소: (34368) 대전시 대덕구 대화로 160 대전산업용재유통단지 1동 222호
개인정보보호책임자: 정창용   사업자번호: 119-05-36414
통신판매업신고: 제2024-대전대덕-0405호 [사업자등록확인]  
Copyright 2001~2025 해피정닷컴. All Rights Reserved.