이미지 업로드시 사이즈 변경 정보
이미지 업로드시 사이즈 변경- onlymilk47 자기소개 아이디로 검색 회원게시물
- 조회 16,089
- 댓글 37
본문
게시판에서 큰 이미지를 업로드시 사이즈 변경입니다
용량으로 막자니 사이즈 줄여서 못올리시는 분들도 간혹 계시고
호스팅 사용시 용량을 생각해 원본 파일을 줄여서 저장합니다.
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 에서 보시고 처리 하셔도 됩니다.
좋은 하루 되세요~~
추천
9
9
댓글 37개
정말 감사합니다.
기존에 사용하던것 보다 훨씬 좋네요
덕분에 용량 줄일 수 있어서 너무 좋습니다^^
기존에 사용하던것 보다 훨씬 좋네요
덕분에 용량 줄일 수 있어서 너무 좋습니다^^
감사합니다.(__)
오 감사합니다 ㅠㅠ 찾고있었는데 잘 쓰겠습니다
감사합니다
pc에서는 아주잘 됩니다만 , 혹시 모바일에서도 작동 잘되나요?
제가 잘못한것일까요. 올바른 방법으로 이용하라고 나와요 ㅠㅠ
제가 잘못한것일까요. 올바른 방법으로 이용하라고 나와요 ㅠㅠ
네 잘 작동 합니다
혹 기본 스킨이 아니시면 write.skin.php 에서
POST로 넘어온 토큰과 세션에 저장된 토큰 비교 가 문제가 있을수 있습니다.
혹 기본 스킨이 아니시면 write.skin.php 에서
POST로 넘어온 토큰과 세션에 저장된 토큰 비교 가 문제가 있을수 있습니다.
정보 감사합니다.~~
좋은 정보 감사합니다.@@@
감사합니다
좋은자료 감사합니다.
재미난 현상이 발견되어 레포팅합니다.
가로 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의 태생적 차이때문인지 모르지만 용량이 저렇게 변하네요 ^^
알려주셔서 감사합니다. 간만에 공부좀 했습니다.
png 경우는 이미지 퀄리티는 보장이 된다고 합니다
jpg 는 같은경우 처리가되면 선명도가 조금씩 떨어진다고 합니다.
png 같은경우 한번더 처리하면 70% 까지 압축이 가능하가도 합니다.
png 경우는 이미지 퀄리티는 보장이 된다고 합니다
jpg 는 같은경우 처리가되면 선명도가 조금씩 떨어진다고 합니다.
png 같은경우 한번더 처리하면 70% 까지 압축이 가능하가도 합니다.
한가지 추가합니다. 이 플러그인을 사용하기 위해서는 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
감사합니다 해볼꼐요
너무 좋습니다. 감사합니다.~
아...정말 필요해서 적용해봤는데 글쓰기페이지에서 확인을 누르면 흰화면에서 넘어가질 않네요...
최신 버전에 적용해도 되는건가요?
최신 버전에 적용해도 되는건가요?
실제 적용하기 앞서 플러그인이 웹호스팅 계정에서 사용 가능한지 확인합니다.
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 이상 설치된 서버에서만 사용 가능합니다.
이미지용량
감사합니다.
굿이네요!
php7에서는 안되는 건가요? ㅠ,.ㅠ 테스트 해보니 사이즈가 그대로 입니다.
아 이것 꼭 적용하고 싶은데 도무지 어디서 잘못 됐는지 모르겟네요..ㅠ,.ㅠ
아 이것 꼭 적용하고 싶은데 도무지 어디서 잘못 됐는지 모르겟네요..ㅠ,.ㅠ
skin 폴더에 write_update.head.skin.php 작성해서 저장하면 글쓰면 자동으로 리사이징 되는건가요??
따로 write_update.head.skin.php 파일을 실행하도록 설정은 필요 없는 건가요???
따로 write_update.head.skin.php 파일을 실행하도록 설정은 필요 없는 건가요???
소스가 변경되었습니다..
위에 있는 글중에 use \Eventviva\ImageResize; 이부분을
use \Gumlet\ImageResize; 이것으로 바꾸세요...
위에 있는 글중에 use \Eventviva\ImageResize; 이부분을
use \Gumlet\ImageResize; 이것으로 바꾸세요...
첨부파일로된 이미지는 축소가 되는데, 에디터에서 사진으로 올린건 축소가 안되네요... 에디터에서 올린 이미지를 축소하는 방법 알려주시면 감사하겠습니다.
감사합니다.
잘작동합니다. 위에 훈련소장님이 말씀하신대로 경로 수정을하셔야 오류가 안나네요
이미지 업로드시 사이즈 변경 그누보드 4 적용 알려주세요
Parse error: syntax error, unexpected '[' in /host/home4/papns/html/plugin/php-image-resize-master/lib/ImageResize.php on line 52
아~ 이건 뭘까여..ㅠㅠ
아~ 이건 뭘까여..ㅠㅠ
꼭 필요했던 기능입니다~~
감사합니다
그누보드 5.4.1.4 + php 7.4 에서 첨부파일은 정상 작동 확인 하였습니다.
https://skin.apachezone.com/board09
https://skin.apachezone.com/board09
감사합니다.
필요한 정보 유용합니다 감사합니다!
감사합니다. 스킨 폴더면 shop/skin/shop 에 넣으면 되는걸까요? 감사합니다.
위에 있는 글중에 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월. 잘 작동합니다.
모바일에서도 작동합니다.
감사드립니다.
감사합니다.
리사이즈
감사합니다. 회원이 모바일에서 7m파일을 10개 올리길래 적용했더니 용량 팍 줄어드네요. 전 800*800 퀼리티80%으로 했습니다. 서버용량 최대한 오래써야되서요.