Bit bir görüntü bit açığa?

3 Cevap php

Ben bu yüzden, birisi bir sayfada bir miktar bağışta her zaman, bir görüntünün başka bir eşit kısmı açığa almak için çalışıyorum. Ben (PayPal sağlar güzel benzersiz tanımlayıcı ve bu "sen bağışlanan ettik") aşağı, diğer mantığı çoğu var, ancak ben bit görüntü biraz ifşa ile sorun yaşıyorum.

Çünkü birden çok biçimlendirme görüntülerin çalışmıyor ki, (görüntü tamamen ortaya çıkmadıkça kişi en az 250 bağış istiyor) küçük parçalar halinde görüntü kesiliyor çalıştı. Daha iyi bir yolu (örneğin, PHP görüntü işleme veya belki CSS / JavaScript) var mı?

3 Cevap

Neden bugüne kadar alınan fonların oranına dayalı, dinamik 251 statik görüntüler, her bir ödeme düzeyi için bir tane oluşturun ve doğru statik bir görüntü hizmet yok.

Bu bunu yapmanın kolay yolu gibi görünüyor, gereken sadece kod ödeme düzeyini sorgulamak ve müşteriye aşağı ilgili resim göndermek için.

Yani image0.jpg (boş), image1.jpg (bir segment) var, image2.jpg ve böylece, image250.jpg (tüm kesimlerine) kadar , ve web uygulaması doğru bir hizmet var.

Insanlar sadece URL anlamaya ve "değerli" çalmak değil böylece bu görüntüleri web sitesinin halka açık alanda erişilebilir olmadığından emin olmak gerekir.

Yani, web uygulama görüntü gönderilmesi gerekmektedir images/image.jpg, sorgu için bir istek aldığınızda, ve gerçek görüntü gibi bir şey veri akışı ile yanıt verir:

if actual > desired:
    number = 250
else:
    number = int (actual * 250 / desired)
imagename = "image" + str(number) + ".jpg"

Sen hidden ayarlanmış taşması ile, bir <div> içindeki görüntüyü gizlemek olabilir. Eğer daha fazla bağış ararken Sonra sadece div elemanı yüksek yapabilirsiniz.

<div id="imageContainer">
   <img src="secretImg.jpg"/>
</div>

CSS:

#imageContainer {
   height: 20px;
   overflow: hidden;
}

Hızlı yolu kullanmak Google Charts veya PayPal'ın görüntüleri ve web sitenize bir uyum görmek olacaktır. Aksi takdirde, dinamik görüntüler oluşturmak, ya da statik bunları oluşturmak ya ihtiyacımız olacak. O birçok görüntü değil çünkü, siz de statik onları oluşturabilir.

Sen bir dizi araç ile bunu, ama ImageMagick muhtemelen çok yönlüdür olabilir. Eğer kendi görüntü kullanmak istiyorsanız, burada Imagemagick ile bunu yapabileceğini nasıl.

# take your source image, and make it a known size.
#In this case, I'll make my image a 256 px square
convert flower.jpg -resize 256x256^ -gravity center -extent 256x256 flower_256.jpg
# run this command in a bash shell to generate the images
for i in $(seq -w 0 256); 
do 
   convert flower_256.jpg -gravity west -background blue -crop ${i}x256+0+0 -extent 256x256 flower_seq_$i.jpg
done

Artık bu gibi bakarak 256 görüntüler elde edersiniz:

25% 50% 75% 100%

Açıkçası, uygun geometri veya renklerini ayarlayabilirsiniz.