2012-08-27 29 views
5

Görüntüleri temelde yeniden boyutlandırmak için bir görüntü işlemci komut dosyası geliştiriyorum. Sorun şu ki, resmin yeniden boyutlandırılmış kopyasını yaptığımda, IPTC verilerini de kopyalamıyor. Bu yüzden IPTC PHP fonksiyonlarını kontrol ediyorum (iptcparse ve iptcembed) ama oldukça kafam karıştı. Iptcparse kullanmak çok basittir. Tüm verileri bir diziye alır ve sonra print_r ile yazdırır. Ancak sözde kullanışlı olanı, (adından da anlaşılacağı gibi) resimlerinize IPTC yerleştirmenize izin verdiğinden, iptcembre edilir. Örneğin php.net'den izlenmesi oldukça anlamıyorum. Yeni görüntüye yerleştirmek için dizimi el ile oluşturmalı mıyım? Sanırım bir resim IPTC'nin verilerini kopyalayıp başka bir görüntüye gömmek için kolay bir yol var.IPTC verilerini bir görüntüden diğerine nasıl kopyalarım?

Herhangi bir cevap memnuniyetle karşılanacaktır. Şimdiden teşekkürler.

+2

nedeni yeni IPTC veri almıyorsanız ihtiyaç var Görüntü, yeniden boyutlandırılan görüntü PHP'nin boş bir resim nesnesinden oluşturulduğundan, eski görüntünün meta bilgilerinin herhangi birini miras almamasıdır. Ayrıca bkz. Http://stackoverflow.com/questions/24456/embedding-iptc-image-data-with-php-gd?rq=1 –

cevap

1

Bence bu oldukça basit. Iptc verilerini eski görüntüden almak için getimagesize ve iptcparse işlevlerini kullanmanız yeterlidir. php.net günü

Eğer iptcembed yöntemle bu örnek birleştirin bu

<?php 
$size = getimagesize('./test.jpg', $info); 
if(isset($info['APP13'])) 
{ 
    $iptc = iptcparse($info['APP13']); 
    var_dump($iptc); 
} 
?> 

ulaşmak için bu örneği buldum ve her şeyi

İlgili konular