메뉴 건너뛰기

Karma's Place

로그인하지 않고 댓글을 달 수 있습니다. 하지만 본사이트의 취지에 맞지않는 댓글은 예고없이 삭제될 수 있습니다.
Rhymix & XE
2010.02.25 10:44

이미지프로세스 모듈 설정방법

조회 수 19332 추천 수 0 댓글 24
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 게시글 수정 내역 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 게시글 수정 내역 댓글로 가기 인쇄 첨부

이미지를 설정에 따라서 축소시켜 저장하고 워터마크를 새겨넣을 수 있는 모듈입니다.

기능적인 부분은 기존 애드온으로 배포한 "JPG 축소 및 워터마크 애드온"과 같습니다.

가장 큰 차이점은 각 기능을 게시판에 따라서 별도로 설정하실 수 있습니다. 또한 조작하지 않은 원본을 별도로 저장하고 권한에 따라서 다운로드가 가능합니다. 버전은 기존 애드온버전의 연장선상에서 0.8로 정했습니다.

수동으로 설치하실 분은 압축을 풀어서 ./modules/imageprocess 폴더에 화일을 복사합니다.

ip9.jpg

설치가 되면 제어판화면에서 업데이트를 실행합니다. 업데이트를 실행하지 않으면 설정을 마쳐도 작동하지않습니다.

제어판의 좌측메뉴항목에서 부가 기능 설정을 선택하면 이미지 프로세싱 항목이 생겨있을 겁니다.

ip1.jpg

이미지 프로세싱을 실행시켜보면 아래 그림처럼 이미지축소, 워터마크, 원본저장, 한글화일이름변경 등의 네가지 기능에 대한 설정이 있습니다.

ip2.jpg

 

이중 이미지 축소설정이 기본으로 뜹니다.

 

1. 이미지 축소 설정

ip3.jpg

이미지 축소사용을 선택하고 이미지 최대 사이즈를 입력하고 mid를 선택하시면 됩니다. 입력된 수치보다 가로나 세로중 어느 한쪽이라도 더 길면 긴축을 기준으로 축소합니다.  

사진의 품질은 신중하게 결정하시기 바랍니다. 사진의 품질은 압축률과 관계가 있어서 품질이 높으면(100) 화질이 유지되지만 숫자가 낮으면 낮을수록 화질이 떨어집니다. 가장 무난한 수치가 80정도입니다만 가끔은 사진을 업로드하시는 분이 이미 충분히 화일용량을 줄여서 올리는 경우 사진 이미지가 현저하게 깨지는 현상이 생길수도 있습니다.  

mid 선택을 하나도 체크하지 않은 경우 모든 영역에서 작동합니다.

 

2. 워터마크 설정

ip4.jpg

워터마크를 사용하시려면 사용을 선택하시고 워터마크 화일의 위치를 입력하시면 됩니다. 워터마크 화일이 존재 하지 않거나 png 화일이 아니면 저장시 에러메시지가 뜹니다. 사용을 선택하셨지만 워터마크 화일을 입력하지 않은 경우 자동으로 ./modules/imageprocess/stamp/stamp.png가 선택됩니다.

워터마크의 위치는 기존 애드온의 다섯곳에서 네곳을 추가해서 총 9곳이됩니다.

ip7.jpg

786429892.jpg

 

너무 작은 사진에 워터마크가 들어가면 보기가 흉해집니다.  따라서 워터마크를 새기지 않을 최소크기를 설정하실 수 있습니다. 가로나 세로중 어느 하나라도 입력된 수치보다 작은 사진은 워터마크를 새기지 않습니다.

 mid 선택시 주의사항은 이미지 축소나 한글화일 변경의 경우 선택하지 않으면 모든 영역에서 작동하지만 워터마크나 원본저장기능은 체크가 없으면 작동하지 않습니다. 이점 유의하시기 바랍니다. 

3 원본저장설정

원본저장설정은 이미지축소나 워터마크설정을 사용하는 경우에만 설정이 가능합니다. 조작되기 전의 원본사진을 보관하는 기능이기 때문에 조작하지 않는 경우에는 저장할 필요가 없고 설정도 나타나지 않습니다.

ip5.jpg

원본저장기능은 프로세싱되기 이전의 원본사진을 저장하고 다운로드 할수 있게 해주는 기능입니다. 사진을 리사이즈하고 워터마크를 새겨넣는 행위는 한마디로 사진을 훼손하는 행위로 비추어지기도 합니다. 한번 망가져버린 사진은 다시는 복구가 불가능합니다. 따라서 이미지를 축소하고 워터마크를 새겨넣기 전의 원본사진을 별도로 저장할 수 있게 했습니다.

사진을 선택하시고 원본을 저장할 폴더를 입력하십시요. 저장할 폴더를 입력하지 않으면 기존 화일의 저장 위치에 같이 저장됩니다. 하지만 이 경우 웹에서 접근이 가능하기 때문에 권한을 갖지 않은 사람도 직접접근하면 다운로드할 수 있게됩니다. 따라서 웹에서 접근이 되지 않은 폴더에 저장하시기를 권합니다.한가지 주의사항은 permission을 707로 설정해주셔야합니다. 입력하셨더라도 권한이 없는 경우 저장시 에러를 출력합니다.

 화면에는 축소되고 워터마크가 새겨진 사진이 출력되지만 다운로드를 클릭한 경우 권한이 있는 회원에게는 축소되지않고 워터마크가 들어있지 않은 원본사진이 다운로드됩니다.  원본다운로드 권한에 체크하지 않은 경우 화일을 업로드한 회원본인과 관리자만 다운로드할 수 있습니다.

 

워터마크기능과 마찬가지로 체크된 mid에서만 작동합니다. 하나도 체크하지 않는 경우 작동하지 않습니다.

4 한글화일이름변경

ip6.jpg

개인적으로는 사용하고 있지만 배포판에 포함을 시킬까 고민했던 대목입니다.  XE가 UTF8 환경으로 바뀌면서 한글 화일에 의한 문제점이 많이 줄어들었습니다. 그럼에도 아직 불편한 몇가지는 해결이 되지않고 있습니다.

 그중 대표적인 것이 urlencode에 의한 화일이름 변화입니다.

ip8.jpg

화면에서는 한글이 잘 표시되지만 실제 화일의 속성을 보면 "크기변환_"부분이 변화되어서 "%ED%81%AC%EA%B8%B0%EB%B3%80%ED%99%98_"식으로 보이게 됩니다. 이 화일을 다운로드하거나 저장하면 %ED%81%AC%EA%B8%B0%EB%B3%80%ED%99%98_IMG_4725.JPG로 바뀌게 됩니다.

또한 서버 환경에 따라 EUCKR을 사용하는 서버에서는 한글 화일을 아예 읽지 못하거나 관리상의 문제가 발생하기도 합니다.

 이 기능을 사용하게 되면 확장자와 상관없이 화일이름에 한글이 들어있는 모든 화일의 이름을 임의의 숫자로 변경해서 저장합니다.  

5. 기타

워터마크 화일을 PNG 화일만을 지원합니다. 설치가 끝나고 작동상태를 확인하신후에는 각기 자신의 사이트에 맞는 워터마크 화일을 만드셔야합니다. ./modules/imageprocess/stamp/stamp.png에 있는 샘플을 참고하셔서 멋있는 로고화일을 만드시기 바랍니다.

현재 Xe에서 사용하는 대부분의 이미지 프로세싱이 GD를 기반으로 하고 있습니다. GD를 이용하는 여러가지 장점이 있음에도 가장 큰 단점은 Exif 데이터의 소실입니다. 사진을 주로 많이 다루는 사이트에서는 치명적일 수 밖에 없습니다. 이경우에는 GD가 아닌 외부화일을 이용해야합니다. 그중 대표적인 것이 ImageMagick입니다. 하지만 ImageMagick은 별도로 설치가 되어있어야하고 덩치가 큰 외부프로그램을 이용하는 관계로 불편한 점은 제하더라도 외부프로그램 실행을 제한한 일부 호스팅서버에서는 작동하지않을 수도 있습니다. ImageMagick 버전은 필요하신 분이 있으면 비공식버전으로 공개하도록 하겠습니다.

 기존에 배포한 Jpg 자동축소 및 워터마크 애드온과 동반실행이 가능합니다. 따라서 게시판에 따라서 별도의 축소사이즈와 별도의 워터마크 설정이 가능합니다. 실제로 제 경우에도 보존가치가 높은 영역은 1024px에 qaulity 100으로 저장하고 자료가치가 높지 않은 게시판은 800px에 quality 80으로 저장하고 있습니다.

기능상의 문제점이나 의견이 있으면 남겨주시기 바랍니다.

 

?
  • ?
    2010.03.31 14:12

    눈팅만 하다가 카르마님 링크덕택으로 감사히 들어와 봅니다.!!

    오늘 저녁이후 테스트후 리포팅해보겠습니다.

    다시한번 저의 고민에 대한 관심 감사드립니다. (--)(__)

     

     

  • ?
    김순제 2010.03.03 13:50

    1.21을 설치하고 테스트해보니까 작동을 안하네요.

     

    가능하면 버전업하시는 것이 좋을 것같습니다만

    버전업하실 상황이 아니시라면

     

    imageprocess.model.php화일에서

    if(!FileHandler::checkMemoryLoadImage($imageInfo)) return false;

    라인을 주석처리하고 해보십시요.

     createImageFile과 alphaWatermark의 두군데에 있습니다.

     

    다음버전에서는 1.3.0이전의 하위버전에서도 작동할 수 있게 수정했습니다.

  • ?
    2010.03.03 12:36

    항상 노고에 감사드립니다.

    카르마님의 모듈을 사용해볼려구 렜는데 설치는 마무리 였습니다.

    이미지를 올리면 자동 축소 및 워터마크가 실행이 안되네요. xe 버전이 너무 낮아서 그런건지....

    xe 1.21에에서도 사용이 가능하신지...설치 했는데 잘 안되는것 같습니다.

    버전이 낮아서 그런건지 한번 여쭤보겠습니다.

  • ?
    김순제 2010.03.02 21:01

    메모리 문제는 해결했습니다.

    다음버전에서는 php.ini의 설정과 상관없이 큰사이즈 이미지도 프로세싱이 가능하게 수정해서 배포하겠습니다.

  • ?
    김순제 2010.03.02 16:39

    호스팅에서 php.ini의 master value를 변경할 수 없다면 local value를 변경할 수 있을지 모르겠습니다.

     

    <?
    echo 'memory_limit = '.ini_get('memory_limit')."<br />";
    ini_set ('memory_limit', '128M');
    echo 'memory_limit = '.ini_get('memory_limit');

    ?>
     위부분을 testmemory.php 화일로 저장하고 IE에서 실행시켜보시기 바랍니다.

    ini_set 이전의 값과 이후의 값이 달라진다면 프로그램 설정을 조금만 바꾸시면 사용이 가능할 수도 있습니다. 위 결과를 알려주시면 다음 조치를 해드릴 수 있습니다.

  • ?
    2010.03.02 16:09

    원본의 화질및 용량 크기 를 바꿔가며 테스트해봤는데요.

    대략 3700 사이즈 크기까지는 작동을 하는데 디카사진크기인 38xx 사이즈 부터는 작동을 안하고

    원본으로 업로드 됩니다. ㅠ 호스팅을 받는것인데 음... 그렇군요. 슬픈현실...

  • ?
    김순제 2010.03.02 11:27

    업로드된 3800짜리 화일이 썸네일이 만들어지는지 확인해 보시기 바랍니다. 서버 메모리 할당에 따라서 작동상태가 다릅니다. 메모리보다 큰 사이즈의 화일은 프로세싱을 하지 못합니다.

    phpinfo에서 PHP core부분의 memory_limit가 얼마로 설정되어있는지 확인해보시기 바랍니다. 숫자가 너무 적으면 php.ini에서 최대치로 설정을 변경하셔야합니다.

  • ?
    2010.03.02 10:47

    집에서 작업할때는 설치하고 아무리해도 작동이 안하다가

    다음날 회사와서 작업해보니 ---------음.. 다시해보니

    일반 파일들 800k 짜리 1280 파일은 680으로 잘줄여지는데

    디카로 찍은 3800 사이즈짜리 3.39 메가 파일은 원본으로 올라가네요 ㅠ

    제사이트는 3~4 메가짜리 파일을 그냥올려서 줄어들어야하는데 수정이 가능한지요? ㅠㅠ

  • ?
    2010.03.02 10:43

    예 카르마님 정말 좋은 프로그램 감사합니다.

    윗글 단 사람입니다. ㅠ

    설정에서 사이즈를 680 으로 설정했고..

    원본은 dslr 로 찍은 3000 이상의 jpg 파일입니다. 용량이 3~4메가 정도 되는파일인데요.

    작동법이

    요거 설치하고 사용 으로 설정한후에

    그냥 일반 게시판에서 파일 첨부 해보면

    죽~ 업로드되고 100% 된다음 용량도 원본그대로이구요.

    변화가없습니다. ㅠㅠ

    정말로 이미지를 작게 줄여주는게 필요한데요 흑...

  • ?
    김순제 2010.03.01 20:20

    쉬운설치는 제 서버에서는 작동을 하지 않아서 사용을 해보지 못해서 잘 모르겠습니다만 업데이트가 나오지 않는다면 이미 업데이트가 된 것입니다.

    본문내이미지 조절 애드온하고는 작용이 전혀 다릅니다. 본문내 이미지조절 애드온은 실제 사이즈는 변함이 없지만 단지 화면에보이는 것만 작게 보여주는 것이고 이 모듈을 실제 화일 사이즈를 줄여서 저장하는 것입니다.

    설정에서 이미지 최대 사이즈를 500정도로 줄여서 설정하고 500이 넘는 화일을 업로드해보십시요. 업로드후에 화일 사이즈가 500으로 줄어들어 있다면 잘 작동하고 있는 것입니다.

  • ?
    2010.03.01 19:45

    쉬운설치로 하였는데요

    업데이트 빨간글씨는 안나오구요.

    좌측메뉴에서 이미지프로세싱 눌러서 설정했는데

    작동을 안합니다.

     

    업데이트가 왜 안나올까요?

    본문내 이미지 조절 애드온 꺼버리니 요건 작도을 안합니다. ㅠ

  • ?
    씨지 2011.01.06 18:18

    ImageMagick은 어떤 버젼을 써야하나요?

    http://www.imagemagick.org/script/binary-releases.php#unix
    여기 보니 Cygwin , MinGW 두가지가 있던데 어느걸 선택해야할지 모르겠어서요.

    답변 부탁드리겠습니다.

  • ?
    카르마 2011.01.06 21:28

    OS가 어떻게 되시나요?

    Cygwin , MinGW는 윈도우즈에서 리눅스프로그램을 돌리기위한 환경으로 알고 있습니다.

    따라서 redHat계열의 리눅스이면 RPM버전을 설치하시고

    그렇지 않으면 tgz 프로그램을 받아서 압축을 풀어서 사용하시면 될겁니다.


  • ?
    씨지 2011.01.06 21:50 Files첨부 (1)

    2011-01-06 오후 9-47-07.png Linux 2.6.18-194.17.4.el5 #1 SMP Mon Oct 25 15:50:53 EDT 2010 x86_64  네요.
    일단 호스팅업체에서 설치는 해줬는데... 폴더가 무지 많군요.
    convert 명령어는 ImageMagick/bin 라고 설명을 들었는데 bin 폴더는 보이지않고..

    Imagemagick path를 어느폴더로 지정해줘야하는건지 모르겠습니다.ㅠㅠ

  • ?
    씨지 2011.01.06 22:20 Files첨부 (1)

    telnet으로 해당 폴더에 들어가서 바로 명령어를 쳐보면
     
    2011-01-06 오후 10-16-51.png

    처럼 작동은 하는거 같습니다.

    절대경로는
    /home/hosting_users/ID/ImageMagick/
    인데...

    부가기능설정의 Imagemagick path 에다가

    /home/hosting_users/ID/ImageMagick/ 를 넣어도

    /home/hosting_users/ID/ImageMagick/bin 을 넣어봐도
    "ImageMagick 실행화일이 확인되지 않습니다." 라고만 나오는군요.ㅠㅠ

  • ?
    씨지 2011.01.06 23:12

    음. path 등록 되어있는지 아무 경로도 입력하지 않고 확인하니 넘어가는군요.-.-;;
    제 계정에만 설치한다길레 path등록 안될줄 알았는데...음.. ImageMagick/bin 이라니...


    여튼 이미지 프로세스 너무 유용하게 잘 쓰고있습니다. 감사합니다.

  • ?
    카르마 2011.01.07 11:45

    자문자답으로 해결하셨네요...^^;

    덩치가 큰 외부프로그램을 돌리기 때문에 설정이 좀 번거롭기는 하지만 이미지 퀄리티는 GD보다 좋을겁니다.


  • ?
    닭갈비 2011.01.14 17:31

    TGA 파일은 업로드가 않되나요?

  • ?
    카르마 2011.01.14 22:25

    타가화일 포맷을 GD에서 지원되지 않습니다.

    아직 TIFF나 BMP로 지원이 안되고 있으니 당분간은 쉽지 않겠지요???

  • ?
    닭갈비 2011.01.14 22:27

    그럼 ImageMagick를 사용하면 가능한가요? 

    3D 이미지를 렌더링한 이미지라서 JPG로 변환하면 엄청난 화질 손상이 와서 고민입니다.

    타가파일을 사용할 방법은 없나요? 

  • ?
    카르마 2011.01.14 22:43

    imagemagick은 현재 알려져있는 대부분의 이미지포맷을 거의다 지원하는 것으로 알고 있습니다만...

    tga는 제가 젼혀 사용해본 적이 없는 포맷이라서 정확한 것은 잘 모르겠습니다.


    지원이 되며 사용법은 아주 간단하니까 직접 확인을 해보시기 바랍니다.

    http://www.imagemagick.org/script/index.php

  • ?
    닭갈비 2011.01.15 15:35

    감사합니다......^^;;

  • ?
    닭갈비 2011.01.16 21:26 Files첨부 (1)

    Imagemagick룰 설치했는데 그림과 같은 이미지가 나오는건 어떻게 처리해야 하나요? ㅠㅠsdysds.JPG

  • ?
    카르마 2011.01.17 11:25

    그림의 문자는 화일이름에 특수문자가 들어있어서 자동으로 변경된 것입니다.


    일단 tga 화일이 정상적으로 프로세싱되고는 있지만 그대로 업로드하면 웹화면에 나타나지 않습니다.

    화일 확장자를 체크해서 tga를 jpg나 png로 바꿔야 본문삽입이 되고 화면에 표시될겁니다.

    아무래도 조금 수정을 하셔야할 것같습니다.

    물론 GD에서는 지원을 하지 않기 때문에 모듈자체에는 기능이 들어있지 않지만 imagemagick은 프로세싱할때 확장자만 바꿔주면 이미지 포맷도 같이 바뀌기 때문에 수정이 어렵지는 않을겁니다.



List of Articles
번호 분류 제목 날짜 조회 수
13 기타등등 PC에 개발환경 만들기 1 file 2011.01.15 11823
12 애드온 및 모듈 제작 모듈제작강좌 1 : 모듈 등록 file 2010.12.30 13758
11 기타등등 Mysql to Cubrid : 제일 안전한 방법 file 2010.10.23 13282
10 기타등등 큐브리드 변환후 index 재설정 2 file 2010.10.22 26555
9 기타등등 루씬, 큐브리드그리고 XE 3 file 2010.10.07 30685
8 Rhymix & XE 이미지 자동출력 애드온 58 file 2010.04.09 35612
7 Rhymix & XE picasa_upload component 34 file 2010.04.05 23208
6 Rhymix & XE 구글 웹앨범 최근사진 위젯 file 2010.04.05 22345
5 Rhymix & XE 구글 웹앨범 연동모듈 설정 58 file 2010.03.31 30268
4 Rhymix & XE 이미지프로세스 모듈 (매직버전) 111 file 2010.03.01 46055
» Rhymix & XE 이미지프로세스 모듈 설정방법 24 file 2010.02.25 19332
2 Rhymix & XE JPG 축소 및 워터마크 애드온 ver 0.7 21 file 2010.02.18 27116
1 Rhymix & XE 자동 그룹변경 애드온 17 file 2010.02.18 22531
계속 검색
Board Pagination Prev 1 2 3 Next
/ 3
위로