English version
German version
Spanish version
French version
Italian version
Portuguese / Brazilian version
Dutch version
Greek version
Russian version
Japanese version
Korean version
Simplified Chinese version
Traditional Chinese version
Hindi version
Czech version
Slovak version
Bulgarian version
 

Pim 팀 사례 연구: php와 gd로 원본 효력 창조

웹 디자인 RSS Feed





당신이 PHP와 GD로 원본에 대한 도표 효력을 어떻게 창조할 수 있는지 보십시오 - 그림자, 아크, 글꼴 및 색깔을 떨어지십시오.

문제

기술적인 Signs는 Sraphics Inc. 전사술을 온라인으로 판매하는 아이디어에 웹사이트를 발사했다. ineterest 더 나은 고객을 달성하기 위하여는 웹사이트는 온라인 전사술 건축업자를 통합해야 했다. 회사는 아크의 전사술 원본 도는 arround 4 유형이 있는 같이 건축업자에 몇몇 특정한 필요조건을 가져온 차량을 위한 전사술을 또한 제안하고 있다.

목표



시사 지역을 사용자에게 제공하십시오

방문자가 글꼴과 색깔을 선택하는 것을 허용하십시오

하락 그림자를 추가하고 하락 그림자 색깔을 선정하는 허용하십시오

아크로 원본을 도는 허용하십시오

순간 산출



해결책

고객 관심사 증가를 위한 필요 때문에 우리는을 위해 도표를 시사 지역에 있는 보여줄 때, 그러나 그(것)들을 볼 사람들 완벽한 수학 공식을 위해 아닙니다 대략 생각해야 했다.

우리가 reaveal 아래 때문에, 무언가를 위한 인간적인 appreceptions가 "완벽하게"와 matchematical 완벽한 숫자 반반하게 하는 몇몇 문제 가는 arround가 있었다.

방법론

우리는 광대하게 원본 효력을 위해 PHP GD 도서관을 이용하기 위하여 가고 있었다. 그것은 글꼴과 색깔의 쉬운 변화하고, 하락 shawdows를 추가하고 원본의 자전을 제공했다.

우리는 나타나기 위하여 때 색깔이 선정될 때 사용자 누르기에 의하여 사라지는 색깔 palletes를 창조하기 위하여 또한 가지고 있었다 (당신은 개인적으로 여기에서 창조하는 전사술을 시도할 수 있다). 숨겨지은 층 및 javascript를 사용하여 일하고 가정되었다.

이 위치에 있는 주요한 문제는 아크의 4가지의 유형을 사용자가 원본이 창조한 arround 가상 아크인 그들중 하나를 선정할 때 이렇게 창조하기 위한 것이었다 (벡터 그래픽 소프트웨어에서 같이). 우리는 Bezie의 공식을 공부하고 그것의 도움으로 이 아크를 창조하기 위하여 가고 있었다.

실시

PIM 팀 불가리아는 뒤에 오는 특징을 가진 가득 차있는 기능적인 온라인 전사술 건축업자를 건축하는 업무가 있었다:

- 전사술 배경

몇몇 사용자는 그들의 전사술을 착색된 배경에 두어 달라고 하고 가정되었다. 우리는 시사 지역이 선정한 배경에서 그려지는 것을 허용해야 했다. 첫째로 우리는 임시 직원 폴더에 있는 심상을 생성했다:



// 목적지 심상의 이름

$dest='decals/".time (). " .jpg';

//the 배경

imagefilledrectangle ($im, 0, 0, 590, 60, $colors [$_POST ["bcolors"]]);



$colors 배열은 유효한 색깔을 포함한다 데이타베이스에 있는 행정관에 의해 저장되는.

따라서, 방문자가 배경을 선정할 때 그것은 imagefilledrectangle 기능에 parametter로 통과된다.

- 글꼴 선택

사용자는 그들의 미래 전사술을 글꼴을 선정할 수 있어야 합니다. 글꼴을 우리가 모든 고려할 수 없다 알고 있는 것은 우리가 웹 서버 전화번호부에 그(것)들을 올려주기해야 한 모든 방문자의 컴퓨터에 유효할 것이다.

우리는 admin가 그들의 이름을 추가하고 admin 지역에 있는 파일을 올려주기하는 글꼴을 처리하는 것을 허용했다.

추려낸 상자에 있는 글꼴은 데이타베이스에서 왔다. 선정된 글꼴은 이전에 생성한 심상에 당기고 있는 imagettftext funtion에 외침에서 통과되었다.

- 색깔 선택

색깔 선택은 사용자가 누르는 때 나타나고 색깔이 선정될 때 사라지는 이 했다 팔레트. 팔레트는 색깔을 가진 테이블 및 이 색깔이 또한에서 정의되는 때 봐야 했다

admin 지역 그래서 그들은 dynamicly 와야 했다. 우리는 동적 컨텐트를 가진 정체되는 javascript 기능을 씨를 뿌려야 했다.

우리는 데이타베이스에서 색깔을 가지고 가고 그리고 그 후에 HTML 테이블을 위한 끈을 창조하고 있던 PHP 주기를 창조했다. 이 테이블은 숨겨지은 층 덕분에 palletes를 창조하는 javascript 기능에 그 때 통과된다:



showTable 기능 (테이블)

{

mouseX = window.event.x + document.body.scrollLeft+25;

만약에 (table=='background')

{

var content= "";

var y=460;

}

만약에 (table=='fonts')

{

var content= "";

var y=690;

}

만약에 (table=='shadows')

{

var content= "";

var y=810;

}

document.getElementById ("tabler ").style.pixelLeft=mouseX;

document.getElementById ("tabler ").style.pixelTop=y;

document.getElementById ("tabler ").style.visibility='visible';

document.getElementById ("tabler ").innerHTML=content;

}



당연히, 일단 사용자가 원한 색깔을 선정하면 우리는 pallette를 숨겨야 했다:



기능 setColor (elid, 색깔, fromid, shc)

{

document.getElementById (elid) .value=color;

document.getElementById ("tabler ").style.visibility='hidden';

}



따라서 우리는 단 하나 누르기에 나타나고 사라지고 스크린에 다량 공간을 가지고 가지 않는 좋은 팔레트를 창조했다.

- Shawdows를 떨어지십시오

제안된 전사술에는 하락 그림자가 있는 기능이 추가했다 있다 그래서 우리는 온라인 건축업자에 이 선택권을 추가해야 했다. PHP는 그러나 그것을 위한 좋은 기능을 제안하지 않아. 우리는 원본을 - 의 몇 퍼센트 색깔 및 적합한 진지변환을 가진 한 번 본래 100% 포화된 원본 그리고 한 번 그림자 두번 당기는 절차를 창조했다. 당연히 그림자는 주요 원본의 앞에 심상에 당겨졌다.



@imagettftext ($img, 20, $gr [$i], $x+$dx, $ys [$i] +$dy, $scolors [$shadowcolor], "글꼴". $_POST ["글꼴"], $word [$i]);



- 아크

주요한 문제는 우리가 아크를 통해서 원본을 "자전해야" 할 때 왔다. 첫째로 우리는 곡선을 당기고 그(것)들의 위 편지를 조정하기 위하여 Bezie 완벽한 funtion를 창조했다. 그러나 무엇 놀람 - 곡선은 완벽한 혼자서 봤다, 그러나 우리가 그(것)들의 위 편지를 조정할 때 거칠게 보였다.

이 문제를 공부한 후에 우리는 antialise에 거친 스크린 해결책 그리고 무력이 심상 저희가 좋은 아크를 창조하는 것을 허용하지 않을 것이라는 점을 깨달았다. 우리는 불용해성 문제에 대하여 서 있고 있었다.

우리는 몇몇 아크를 그래픽 소프트웨어 (CorelDraw)로 창조하고 틀릴 수 있던 무슨이 보는 것을 결정했다.

우리는 수동으로 조정된 후에 Corel의 곡선이 중대하게 보고 있었다는 것을 주의했다. 그러나 당신은 다만 완벽한 곡선을 automaticly 창조하기 위하여 프로그램을 남겨둘 수 없다. 육안은 필요했다 곡선이 권리를 언제 보는, 그리고 언제 아닙니다지 재판하기 위하여.

우리는 완전히 다른 방향을 얻었다. 저희를 돕는 보편적인 기능이 없었다. 우리가 찾아낸 해결책은 "수동으로" 조정한다 각 편지를 이었다. 우리는 적합한 장소에 그리고 적합한 교체를 가진 각 편지를 조정하고 있던 케이스로 원본이 얼마나에 따라서 인지 절차를 창조했다. 그것은 작동했다!

우리는 각 아크 유형을 위한 2개 배열 - 1개 배열 및 교체를 가진 위치를 가진 1 배열을 창조했다.

나머지는:



만약에 ($arctype)

{

$start= (35-$l)/2;

만약에 ($start%2) $start+=1;

$gr=array_slice ($gr, $start, $l);

$ys=array_slice ($ys, $start, $l);

}

만약에 (! $arctype)

{

$ys=array ();

$gr=array ();

//making 배열

를 위해 ($i=0; $i



당신은 atec의 위치에 가고 우리가 달성한 아크를 시도할 수 있다 (http://atecsigns.com/decal/step_1.php).

결과

지금 기술 웹 건축업자를 창조하고 완벽한 전사술을 도표로, 산출하고 가격을 허용한다 당신이 당신의 쇼핑 카트 그리고 chgeckout (쇼핑 카트 소프트웨어는 또한 PIM 팀 불가리아에 의해 창조된다)에 전사술을 추가하는 것을 노래했다.

건축업자는 방문자가 원한 전사술을 어떤 색깔, 떨어뜨려진 그림자, 배경 및 모양든지로 창조하고, 그것을 시사하고 다른 크기 및 양을 위한 비용을 산출하는 것을 허용한다.

웹사이트 및 건축업자는 다량 라디오 광고 회사와 승진되었다. 그때 원본 arround 아크를 창조하는 허용한 유일한 전사술 건축업자이었다.

결론



원본 효력을 창조하는 사용 GD

소유하기 위하여 당신이 GD가 제안하지 않는 무슨을을 위한 기능을 당신을 창조할 다는 것을 잊지 말라

항상 수학 완벽한 공식을 찾지 말라. 그래픽 효력은 육안에 예정된다

서버에 있는 짐 글꼴

중대한 융통성을 달성하는 사용 javascript와 숨겨지은 층



저자에 관하여

Bobby Handzhiev는 PIM 팀 불가리아에 있는 고위 개발자이다

http://pimteam.net

admin@pimteam.net

ꀰ사냴ꀰ: Messaggiamo.Com

Translation by Google Translator





Related:

» Seo Elite: New Seo Software!
» AntiSpywareBOT
» Reverse Mobile
» Error Nuker


샹냈 삤퀰 삻쁄 쁔냜
ꃀ큘쁘 샹사쁴킸샐쁴 뀸쀜끼 삔ꀀ 샀ꀈ 냹삥!

샹냈 삤퀰샐ꂌ ꀰ사끼 쀜삜큘ꀰ
쁄냈삔 냱끝 큄쀘! ꃀ큘쁘 삑생쁄 삑쀱큘ꃠ쁴 뀸쀜낔 Messaggiamo.Com 뀔뀉킠났!

Add to Google RSS Feed See our mobile site See our desktop site Follow us on Twitter!

Messaggiamo.Com 뀔뀉킠났샐 ꀰ사끼 쀜삜큘ꀰ

쁴큌ꃠ났


쀀삑ꂌ 2006-2011 Messaggiamo.Com - 사쁴킸 냵 - Privacy - 샹냈 삤퀰 Messaggiamo.Com 뀔뀉킠났샐 ꀰ사끼 쀜삜큘ꀰ [0.01]
Hosting by webhosting24.com
Dedicated servers sponsored by server24.eu