Belirli bir genişliğe HTML blok tüm görüntüleri yeniden boyutlandırmak ve sonuçlarını önbelleğe nasıl

2 Cevap php

PHP bir ısmarlama CMS için bir mobil içerik adaptasyon eklenti yazıyorum. CMS her 400 piksel genişliğinde ve yüksekliğinde değişiklik mutlak URL'ler ile görüntülerde <img/> bağlantılar içerir.

Ben yeni bir genişliğe HTML (MySQL depolandığı) ve re-ölçekli her görüntüyü ayrıştırmak istiyorum - bu cihaza göre değişir. Ben de gereksiz on-the-fly sayfa yüklendiğinde her zaman onları yeniden boyutlandırma önlemek için görüntüleri önbelleğe istiyorum

Bana ImageMagick veya GD kullanarak PHP bunu başarmak için en iyi yolu nedir?

2 Cevap

ne biraz farklı bir şey yapıyor. temelde kapalı bir on talep modelinin yeniden boyutlandırma / önbelleğe yüklenemedi. böylece uygulama 200x200 görüntüleri gerektirir cihaz A, çalıştırmak ediliyor söylüyorlar. size görüntü bağlantıları değiştirmek istiyorum:

<img src="/images/image.php?height=200&width=200&source=filename.jpg" />

image.php aşağıdaki gelmez bir senaryo olabilir:

  • Varolan dosya var emin olun, ve bu boyutta varsa önbellek onu kapmak
  • değilse, görüntü boyutlarını ve önbellek

app bu görüntü arar dahaki sefere, bu 200px boyutunda geri gönderileceğini söyledi. app şimdi 300x300 görüntü arıyor eğer alternatif, yani / inşa edilecek yeni bir istek önbelleğe.

SEE http://stackoverflow.com/questions/140734/best-way-to-cache-resized-images-using-php-ve-mysql
for really good ideas on caching mechanism (especially apache webserver intervention concept)

ve

http://phpthumb.sourceforge.net/, hangi / ImageMagick veya GD her ikisini birden kullanarak saklar.