Pregunta

Estoy intentando extraer la fotografía calificación 'estrellas' de los archivos .jpg utilizando el código php. Mi intención es mostrar las imágenes de mayor audiencia como parte de una presentación de diapositivas. He encontrado que el uso de la PHP_JPEG_Metadata_Toolkit_1.11 soy capaz de obtener la calificación del archivo si la calificación se establece desde el interior Vista (clic derecho -> Propiedades -> Detalles -> Calificación que haciendo clic sobre las estrellas) mediante la lectura de la matriz devuelta por la Metadata_Toolkit

$exif = get_EXIF_JPEG( $photodir . "/" . $filename );
$rating = $exif[0][18246]['Data'][0];

Sin embargo si fijo la calificación mediante Adobe Bridge, puedo ver las 'estrellas' en Vista, pero el
$exif[0][18246]['Data'][0] devuelve un valor nulo.

El código es PHP disponible para leer las votaciones aplica por tanto en Windows Vista y Adobe Bridge?

¿Fue útil?

Solución 2

He descubierto que Adobe Bridge almacena la calificación en una ubicación diferente en el archivo JPEG que Vista. Ver detalles en el post encontrado en sugerido código php para leer el archivo de conjunto de índice por Adobe Bridge CS3

Otros consejos

Ni idea, pero ¿por qué no descubrir por ti mismo:

$exif = get_EXIF_JPEG( $photodir . "/" . $filename );
print_r($exif);

Esto imprimirá el contenido de $exif, que yo supongo que será grande, pero usted tiene tiempo, ¿verdad? (Ver la fuente en su navegador web para que pueda ver que el formato correcto.) Analizar a encontrar la clave 0, luego la tecla 18246, a continuación, clave de datos, luego la tecla 0. Esa es la que ya encontraste. Ahora buscar en la otra calificación podría ser. Es de esperar que no es demasiado difícil de encontrar. Cuando lo encuentre, tome nota de la ruta a la misma. Entonces conseguirlo:

// This is your Vista rating
$rating = $exif[0][18246]['Data'][0];
if ($rating == null) {
    // no Vista rating, so get the Bridge rating
    $rating = $exif[...fill in this path...];
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top