2010-04-13 21 views

risposta

0

Non esiste un modo semplice per farlo direttamente tramite le librerie incorporate in php. Per scrivere un file ico, dovrai scrivere singoli bit e byte a mano per adattarli al formato del file. Il modo più semplice sarebbe utilizzare una libreria di terze parti.

phpthumb è un ottimo strumento per questo.

http://phpthumb.sourceforge.net/

1

This sembra suggerire Imagick può fare questo.

In caso contrario, è possibile eseguire la conversione sul server utilizzando uno strumento esterno e il server del file .ico. Gli strumenti per ottenere questo sono stati analizzati in Stack Overflow before (beh, facendo la trasformazione opposta, ma scommetto che la maggior parte di quel software può fare quello che ti serve).

4

Dopo alcuni esperimenti su google e luce, sembra che un file .ico sia fondamentalmente un file BMP con un'altra estensione di file. Credo che il formato ICO supporti più risoluzioni in un file, ma un BMP sembra costituire un file ICO minimale. Dovresti essere in grado di generare facilmente file BMP con gd o ImageMagick.

+0

gd non salva i file .ico come noto – adiian

+1

@php Spiacente, hai perso il punto. Se la mia speculazione sui file ICO che sono file BMP estesi è corretta, dovrebbe funzionare. – deceze

+1

Semplicemente il salvataggio incrociato di un file di formato BMP creato da GD come un file .ico non fa il trucco. Sembra che ci sia più di questo. –

0

Per il mio plug WP: http://wordpress.org/extend/plugins/wp-favicons/ Sto usando questo ico lib: http://www.tom-reitz.com/2009/02/17/php-ico-to-png-conversion/comment-page-1/#comment-14883 ecco il codice: http://plugins.trac.wordpress.org/browser/wp-favicons/trunk/plugins/filters/convert_to_png.php

Funziona con quasi tutte le icone, ma alcuni come un icona trovata qui: http://www.slatch.com/ dammi: Avviso: offset stringa non inizializzato: 64 ecc. sulla riga 296.

Quindi ... se hai trovato una migliore .ico php lib di quella che posso sostituire quella con un'altra :)

5

Lo https://github.com/chrisbliss18/php-ico caricato di recente crea file ICO validi comprendenti più risoluzioni incorporate da file PNG e altri formati di file utilizzando solo PHP e la libreria GD.