2014-07-08 2 views
2

나는이 스레드 읽어 TideSDK의 PHP 모듈과 함께 번들로하지 : GD 함수를 사용하여 Does TideSDK have any image manipulation capabilities?GD 분명히

내가 시도를 내 TideSDK 응용 프로그램 내에서 실패하고 난 기능을 사용할 수 있었던 gd 카메라 무엇인지 알아 get_extension_funcs("gd");를 실행하고, 나는 'null'응답을 얻고있다. 또한 어떤 ini 파일이로드되었는지 (null 반환 여부) 확인했습니다. 그것은 php 모듈 꽤 얇은 (분명히) 실행 나타납니다.

  1. 사용하여 파이썬의 PIL 라이브러리 루비의 chunky_png 보석을 (여기에서 가장 성공을 거두었 사용
  2. (비슷한 라이브러리 파이썬에 문제가 있었다)하지만, 경우에 알아내는 문제가 계속 실행 : 여기 시도한 것입니다 gem이로드되고 루비 '임베디드 서버'가 스풀링 될 때마다로드해야합니다.
  3. (내 깊이에서) gd 라이브러리를 밀어 내기 위해 '로컬'php.ini 파일을 설정하십시오.

제 경험은 PHP 응용 프로그램 코드 작성과 관련이 있습니다. 환경 구성. 아이디어가 있습니까? TideSDK와 함께 gd 라이브러리를 성공적으로 사용할 수 있었습니까?

저는 TideKit으로 좌석을 예약 할 수있는 가능성을 모색 중입니다.하지만 먼저 필요한 모든 작업을 수행 할 수 있도록 탐색 빌드를하고 있습니다. 어떤 도움을 주셔서 감사합니다!

답변

1

휴대용 CLI (명령 줄) 이미지 라이브러리를 식별합니다. 제 경우에는 ImageMagick입니다. Bash를 통해 Ruby를 통해이 작업을 수행 할 수있었습니다. "휴대용"이미지 라이브러리는 다음과 같습니다. a. 서버에 설치하지 않고 실행할 수 있습니다. 즉, 경로가 제대로 작동하지 않아도됩니다. "위치"를 알고있는 한 해당 디렉토리로 이동하여 작동하게하십시오. b. 하나는 수용 가능한 발자국입니다. 그것은 너무 클 수 없습니다. 그렇지 않으면 응용 프로그램에 큰 다운로드가 발생합니다.

샘플 코드 :

### Bash installer for portable build of ImageMagick 
#!/bin/bash 

# change to scripts directory in Snicket application Contents path 
echo "Installing ImageMagick…" 
_APPDIR=$1 
# _SCRIPTDIR=${1:-.} 
_SCRIPTDIR="${_APPDIR}/Resources/scripts" 
_HOME=${2:-${HOME}} 

echo "Home -> ${_HOME}" 

# Figure out directory absolute path 
_TODIR=$_HOME/SnicketTools 
mkdir $_TODIR 
# remove previous installation 
_MAGICK_DIR=$_TODIR/ImageMagick-6.8.9 
echo "Removing existing directory -> ${_MAGICK_DIR}" 
rm -r $_MAGICK_DIR 

cd $_TODIR 
tar xzvf "${_APPDIR}/Resources/tools/ImageMagick-x86_64-apple-darwin13.2.0.tar.gz" 

#if [[ "$3" ]]; then 
# #statements 
# cp -r ./ImageMagick-6.8.9 $3/ 
#fi 

# delete temporary copy of magic directory 
## echo "Deleting temporary files from ${PWD}/ImageMagick-6.8.9 -> " 
# rm -r ./ImageMagick-6.8.9 
# open $_TODIR 
echo "Magic directory (before export): ${_MAGICK_DIR}" 
export MAGICK_HOME=$_MAGICK_DIR 
echo "Magic directory: ${_MAGICK_DIR}" 
echo "Magic home: ${MAGICK_HOME}" 

## Clean profile file 
_PROFILE=`cat ~/.bash_profile` 
echo "Profile information -> ${_PROFILE}" 
## You need to add export statements to ~/.bash_profile or ~/.profile 
## or /etc/profile file. This will export variables permanently: 
echo "# Snicket Magick Config" >> ~/.bash_profile 
echo "export MAGICK_HOME=${_MAGICK_DIR}" >> ~/.bash_profile 
echo "export PATH=$PATH:${MAGICK_HOME}/bin" >> ~/.bash_profile 
echo "export DYLD_LIBRARY_PATH=${MAGICK_HOME}/lib/" >> ~/.bash_profile 
echo "# End Snicket Magick Config" >> ~/.bash_profile 
# Reload bash parameters 
source ~/.bash_profile 
## >> appends to an existing file 
# source ~/.bash_profile 
# check bash profile # open ~/.bash_profile 

다음, 라이브러리를 사용하여 기본 이미지 변환을 실행하기위한 배쉬 스크립트 :

#!/bin/bash 
## You MUST change to the magick directory before running in portable mode 

# Use from within Ruby 
# cmd = "bash #{$BASHDIR}/make_thumbnail.sh \"#{$MAGICK_HOME}#{$DS}bin\" \"#{img}\" \"#{tfile}\"" 
# cmd = "#{MAGICK_HOME}#{DS}bin#{DS}compress \"#{img}\" -resize 240x240\\> \"#{tfile}\"" 

_MAGICK_DIR=$1 
_SRC=$2 
_THUMB=$3 

echo "Changing directory to -> ${_MAGICK_DIR}" 
cd $_MAGICK_DIR 

echo "Converting from ${_SRC} to ${_THUMB}" 

source ~/.bash_profile 

./convert "${_SRC}" -resize 240x240\> "${_THUMB}"