이미지 업로드시 사이즈 변경
게시판에서 큰 이미지를 업로드시 사이즈 변경입니다
용량으로 막자니 사이즈 줄여서 못올리시는 분들도 간혹 계시고
호스팅 사용시 용량을 생각해 원본 파일을 줄여서 저장합니다.
plugin 을 활용하였습니다.
1. https://github.com/eventviva/php-image-resize 서 플러그인을 다운 받고 압축을 풉니다.
2. plugin 폴더안에 php-image-resize-master 을 넣습니다.
3. skin 폴더에 write_update.head.skin.php 파일을 만드시고 아래 내용을 입력합니다
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
include G5_PLUGIN_PATH."/php-image-resize-master/lib/ImageResize.php";//플러그인 경로를 확인하세요
$width= 900; //너비 px
$height= 900;//높이 px
$quality =90; //선명도 %
use \Eventviva\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){
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);
}
}
?>
다른 기능 추가는 https://github.com/eventviva/php-image-resize 에서 보시고 처리 하셔도 됩니다.
좋은 하루 되세요~~
용량으로 막자니 사이즈 줄여서 못올리시는 분들도 간혹 계시고
호스팅 사용시 용량을 생각해 원본 파일을 줄여서 저장합니다.
plugin 을 활용하였습니다.
1. https://github.com/eventviva/php-image-resize 서 플러그인을 다운 받고 압축을 풉니다.
2. plugin 폴더안에 php-image-resize-master 을 넣습니다.
3. skin 폴더에 write_update.head.skin.php 파일을 만드시고 아래 내용을 입력합니다
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
include G5_PLUGIN_PATH."/php-image-resize-master/lib/ImageResize.php";//플러그인 경로를 확인하세요
$width= 900; //너비 px
$height= 900;//높이 px
$quality =90; //선명도 %
use \Eventviva\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){
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);
}
}
?>
다른 기능 추가는 https://github.com/eventviva/php-image-resize 에서 보시고 처리 하셔도 됩니다.
좋은 하루 되세요~~
댓글 37개
8년 전
정말 감사합니다.
기존에 사용하던것 보다 훨씬 좋네요
덕분에 용량 줄일 수 있어서 너무 좋습니다^^
기존에 사용하던것 보다 훨씬 좋네요
덕분에 용량 줄일 수 있어서 너무 좋습니다^^
onlymilk74
8년 전
감사합니다.(__)
8년 전
오 감사합니다 ㅠㅠ 찾고있었는데 잘 쓰겠습니다
onlymilk74
8년 전
감사합니다
8년 전
pc에서는 아주잘 됩니다만 , 혹시 모바일에서도 작동 잘되나요?
제가 잘못한것일까요. 올바른 방법으로 이용하라고 나와요 ㅠㅠ
제가 잘못한것일까요. 올바른 방법으로 이용하라고 나와요 ㅠㅠ
onlymilk47
8년 전
네 잘 작동 합니다
혹 기본 스킨이 아니시면 write.skin.php 에서
POST로 넘어온 토큰과 세션에 저장된 토큰 비교 가 문제가 있을수 있습니다.
혹 기본 스킨이 아니시면 write.skin.php 에서
POST로 넘어온 토큰과 세션에 저장된 토큰 비교 가 문제가 있을수 있습니다.
ZqkWcr39s1
8년 전
정보 감사합니다.~~
ZqkWcr39s1
8년 전
좋은 정보 감사합니다.@@@
8년 전
감사합니다
8년 전
좋은자료 감사합니다.
재미난 현상이 발견되어 레포팅합니다.
가로 1000 x 세로 8192 임의의 이미지를 생성후 업로드시 사이즈 변환
$width = 900; // 너비 px
$height = 8192; // 높이 px (포토샵에서 지원하는 최대 높이값)
$quality = 90; // 선명도 %
사이즈 : 원본 1000 x 8192 -> 업로드 900 x 7,317 px
JPG 원본 501,574 -> 업로드 232,347 byte
PNG 원본 1,340,635 -> 업로드 1,753,153 byte
JPG 와 PNG의 태생적 차이때문인지 모르지만 용량이 저렇게 변하네요 ^^
재미난 현상이 발견되어 레포팅합니다.
가로 1000 x 세로 8192 임의의 이미지를 생성후 업로드시 사이즈 변환
$width = 900; // 너비 px
$height = 8192; // 높이 px (포토샵에서 지원하는 최대 높이값)
$quality = 90; // 선명도 %
사이즈 : 원본 1000 x 8192 -> 업로드 900 x 7,317 px
JPG 원본 501,574 -> 업로드 232,347 byte
PNG 원본 1,340,635 -> 업로드 1,753,153 byte
JPG 와 PNG의 태생적 차이때문인지 모르지만 용량이 저렇게 변하네요 ^^
onlymilk47
8년 전
알려주셔서 감사합니다. 간만에 공부좀 했습니다.
png 경우는 이미지 퀄리티는 보장이 된다고 합니다
jpg 는 같은경우 처리가되면 선명도가 조금씩 떨어진다고 합니다.
png 같은경우 한번더 처리하면 70% 까지 압축이 가능하가도 합니다.
png 경우는 이미지 퀄리티는 보장이 된다고 합니다
jpg 는 같은경우 처리가되면 선명도가 조금씩 떨어진다고 합니다.
png 같은경우 한번더 처리하면 70% 까지 압축이 가능하가도 합니다.
8년 전
한가지 추가합니다. 이 플러그인을 사용하기 위해서는 PHP 5.3 이상 설치되어야 합니다.
namespace 라는 핵심 기능이 PHP 5.3 에서 추가되었네요.
http://jp2.php.net/manual/kr/language.namespaces.rationale.php
http://www.haruair.com/blog/2843
namespace 라는 핵심 기능이 PHP 5.3 에서 추가되었네요.
http://jp2.php.net/manual/kr/language.namespaces.rationale.php
http://www.haruair.com/blog/2843
8년 전
감사합니다 해볼꼐요
wwweb
8년 전
너무 좋습니다. 감사합니다.~
7년 전
아...정말 필요해서 적용해봤는데 글쓰기페이지에서 확인을 누르면 흰화면에서 넘어가질 않네요...
최신 버전에 적용해도 되는건가요?
최신 버전에 적용해도 되는건가요?
7년 전
실제 적용하기 앞서 플러그인이 웹호스팅 계정에서 사용 가능한지 확인합니다.
http://도메인/plugin/php-image-resize-master/lib/ImageResize.php 이렇게 브라우저에 주소를 입력해봅니다.
Parse error: syntax error, unexpected T_STRING in /home/..../plugin/php-image-resize-master/lib/ImageResize.php on line 3
이렇게 에러가 발생한다면 사용할 수 없습니다.
이 플러그인은 php 5.3 이상 설치된 서버에서만 사용 가능합니다.
http://도메인/plugin/php-image-resize-master/lib/ImageResize.php 이렇게 브라우저에 주소를 입력해봅니다.
Parse error: syntax error, unexpected T_STRING in /home/..../plugin/php-image-resize-master/lib/ImageResize.php on line 3
이렇게 에러가 발생한다면 사용할 수 없습니다.
이 플러그인은 php 5.3 이상 설치된 서버에서만 사용 가능합니다.
7년 전
이미지용량
lavenderblush
7년 전
감사합니다.
7년 전
굿이네요!
upstone
7년 전
php7에서는 안되는 건가요? ㅠ,.ㅠ 테스트 해보니 사이즈가 그대로 입니다.
아 이것 꼭 적용하고 싶은데 도무지 어디서 잘못 됐는지 모르겟네요..ㅠ,.ㅠ
아 이것 꼭 적용하고 싶은데 도무지 어디서 잘못 됐는지 모르겟네요..ㅠ,.ㅠ
upstone
7년 전
skin 폴더에 write_update.head.skin.php 작성해서 저장하면 글쓰면 자동으로 리사이징 되는건가요??
따로 write_update.head.skin.php 파일을 실행하도록 설정은 필요 없는 건가요???
따로 write_update.head.skin.php 파일을 실행하도록 설정은 필요 없는 건가요???
7년 전
소스가 변경되었습니다..
위에 있는 글중에 use \Eventviva\ImageResize; 이부분을
use \Gumlet\ImageResize; 이것으로 바꾸세요...
위에 있는 글중에 use \Eventviva\ImageResize; 이부분을
use \Gumlet\ImageResize; 이것으로 바꾸세요...
7년 전
첨부파일로된 이미지는 축소가 되는데, 에디터에서 사진으로 올린건 축소가 안되네요... 에디터에서 올린 이미지를 축소하는 방법 알려주시면 감사하겠습니다.
7년 전
감사합니다.
distributor
6년 전
잘작동합니다. 위에 훈련소장님이 말씀하신대로 경로 수정을하셔야 오류가 안나네요
6년 전
이미지 업로드시 사이즈 변경 그누보드 4 적용 알려주세요
6년 전
Parse error: syntax error, unexpected '[' in /host/home4/papns/html/plugin/php-image-resize-master/lib/ImageResize.php on line 52
아~ 이건 뭘까여..ㅠㅠ
아~ 이건 뭘까여..ㅠㅠ
hiadmin
6년 전
꼭 필요했던 기능입니다~~
5년 전
감사합니다
5년 전
그누보드 5.4.1.4 + php 7.4 에서 첨부파일은 정상 작동 확인 하였습니다.
https://skin.apachezone.com/board09
https://skin.apachezone.com/board09
5년 전
감사합니다.
3년 전
필요한 정보 유용합니다 감사합니다!
3년 전
감사합니다. 스킨 폴더면 shop/skin/shop 에 넣으면 되는걸까요? 감사합니다.
3년 전
위에 있는 글중에 use \Eventviva\ImageResize; 이부분을
use \Gumlet\ImageResize; 이것으로 바꾸세요... ==> 필요합니다.
플러그인에 위 파일을 전체 넣고,
write_update.head.skin.php 파일을 생성하여(새로 만들어서)
skin > basic 폴더에 넣어야 합니다.
2022년 9월. 잘 작동합니다.
모바일에서도 작동합니다.
감사드립니다.
use \Gumlet\ImageResize; 이것으로 바꾸세요... ==> 필요합니다.
플러그인에 위 파일을 전체 넣고,
write_update.head.skin.php 파일을 생성하여(새로 만들어서)
skin > basic 폴더에 넣어야 합니다.
2022년 9월. 잘 작동합니다.
모바일에서도 작동합니다.
감사드립니다.
2년 전
감사합니다.
토탈밀리터리
2년 전
리사이즈
토탈밀리터리
2년 전
감사합니다. 회원이 모바일에서 7m파일을 10개 올리길래 적용했더니 용량 팍 줄어드네요. 전 800*800 퀼리티80%으로 했습니다. 서버용량 최대한 오래써야되서요.
게시판 목록
그누보드5 팁자료실
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 공지 | 3년 전 | 4400 | ||
| 2694 | 2개월 전 | 187 | ||
| 2693 | 2개월 전 | 146 | ||
| 2692 | 2개월 전 | 157 | ||
| 2691 | 2개월 전 | 173 | ||
| 2690 | 2개월 전 | 325 | ||
| 2689 | 2개월 전 | 232 | ||
| 2688 |
|
2개월 전 | 439 | |
| 2687 | 2개월 전 | 290 | ||
| 2686 |
선택과집중
|
2개월 전 | 328 | |
| 2685 | 2개월 전 | 289 | ||
| 2684 | 2개월 전 | 345 | ||
| 2683 | 2개월 전 | 480 | ||
| 2682 | 2개월 전 | 275 | ||
| 2681 | 2개월 전 | 301 | ||
| 2680 |
선택과집중
|
2개월 전 | 277 | |
| 2679 | 2개월 전 | 329 | ||
| 2678 |
|
2개월 전 | 428 | |
| 2677 |
|
2개월 전 | 501 | |
| 2676 | 2개월 전 | 325 | ||
| 2675 | 2개월 전 | 303 | ||
| 2674 |
선택과집중
|
3개월 전 | 479 | |
| 2673 |
|
3개월 전 | 320 | |
| 2672 | 3개월 전 | 334 | ||
| 2671 | 3개월 전 | 283 | ||
| 2670 | 3개월 전 | 257 | ||
| 2669 | 3개월 전 | 373 | ||
| 2668 | 3개월 전 | 287 | ||
| 2667 |
선택과집중
|
3개월 전 | 482 | |
| 2666 |
선택과집중
|
3개월 전 | 469 | |
| 2665 |
선택과집중
|
3개월 전 | 403 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기