2011-12-02 8 views
0

내 사이트에 제곱 된 이미지가 필요합니다. 지금은 아주 기본적인 이미지 업로드 기능을 가지고 있습니다. 이미지는 서버에서 PHP로 업로드되고 크기가 조정되고 제곱됩니다. 이것은 다음과 같은 문제의 원인이되는 : 를 - 이미지 종종 불완전 을 제곱하는 - - 그것은 서버 리소스를 많이 사용하는 사용자에게 진행의 징후, 그들은이미지 업로드 및 처리, 서버 측 또는 클라이언트 측?

I를 큰 이미지를 업로드하려고 특히 문제가 없다 이제 모든 새로운 이미지 업로드 페이지를 삽입하기 시작합니다. PHP에서 처리하는 것을 권장합니다. 클라이언트 측 (우리는 jQuery를 사용)을 할 수있을 것 같았습니다. 기존 라이브러리가 있습니까? 이 고객 측을 좋은 생각으로 생각하고 있습니까? 좋은 PHP/자바 스크립트 워크 플로우 란 무엇입니까?

답변

0

제곱 된 이미지를 보장하기 위해 비율 잠금을 지원하는 JCrop과 같은 jQuery 자르기 플러그인을 사용해 볼 수 있습니다.

서버 측에서 모든 유효성 검사를 복제해야하므로 클라이언트 측에서 아무 것도 100 % 안전하지 않음을 기억하십시오. 이것은 이미지의 너비/높이를 확인하고 필요할 경우 PHP에서 다시자를 수 있습니다.

0

실제 이미지 데이터를 변경하는 경우 클라이언트 측 솔루션에만 의존 할 수는 없지만 모든 브라우저에서 필요한 기능을 사용할 수있는 것은 아닙니다. js에서이 작업을 수행 할 수없는 브라우저의 경우 Flash로 폴백 할 수 있지만 두 명의 업 로더가 필요하기 때문에 총 속도가 매우 빨라집니다.

지원하는 브라우저에서이를 수행하고 그렇지 않은 경우 서버 측 솔루션에 의존하는 것이 좋습니다. 여전히 문제가있는 경우 즉시 업로드하지 않고 대기열에서 리소스를 처리하여 리소스를 분산시킬 수 있습니다.

캔버스는 최신 브라우저에서 이것을 할 수있는 좋은 방법이며, 플러그인이 필요하지 않습니다. 업로드 할 이미지 데이터를 가져 오는 방법은 여기를 참조하십시오. 여기

https://developer.mozilla.org/En/HTML/Canvas/Pixel_manipulation_with_canvas

는 lib 디렉토리 :

1

http://www.nihilogic.dk/labs/canvas2image/이/시도 진정한 서버 측 솔루션과 싸우는 대신 PHP의 이미지 처리에 내장의, 당신의 크기 조절을 할 ImageMagick를 사용해보십시오.

우리의 경험에서 훨씬 잘 작동합니다.

관련 문제