2010-11-15 4 views
0

Je fais donc pivoter une image avec php et rend l'arrière-plan transparent. Le problème est que j'ai des bords dentelés. Est-il possible d'aimer anti-alias les bords?Après la rotation de l'image avec php, je reçois des bords irréguliers

J'utilise http://www.exorithm.com/algorithm/view/rotate_image_alpha Il était le seul code que je pourrais trouver cela me laisser la transparence pour le fond

+0

Quelle méthode utilisez-vous pour faire pivoter maintenant? pourriez-vous poster votre code? –

+0

Pouvez-vous montrer quelques exemples? –

Répondre

0

Je n'ai pas une solution pour les produits crénelage par la rotation de PHP, mais ....

Vous ne l'avez pas dit ce que vous faites avec les images ayant subi une rotation une fois qu'ils ont été mis en rotation? Est-ce que vous les affichez comme ça sur le site?

Si c'est tout ce que vous faites, puis-je vous suggérer de laisser le navigateur faire la rotation pour vous avec CSS.

Le code stylesheet suivant fonctionnera avec tous les navigateurs actuels (y compris les anciennes versions de IE):

.tilted { 
    transform: rotate(45deg); /* CSS3 (for when it gets supported) */ 
    -ms-transform: rotate(45deg); 
    -moz-transform: rotate(45deg); /* FF3.5+ */ 
    -o-transform: rotate(45deg); /* Opera 10.5 */ 
    -webkit-transform: rotate(45deg); /* Saf3.1+, Chrome */ 
    font-weight:bold; 
    filter: progid\:DXImageTransform.Microsoft.Matrix(sizingMethod='auto expand', M11=0.7071067811865476, M12=-0.7071067811865475, M21=0.7071067811865475, M22=0.7071067811865476); /* IE6,IE7 */ 
    -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(SizingMethod='auto expand', M11=0.7071067811865476, M12=-0.7071067811865475, M21=0.7071067811865475, M22=0.7071067811865476)"; /* IE8 */ 
} 

(qui est un 45 degré d'inclinaison, ne hésitez pas à le modifier pour d'autres angles, bien que vous aurez recalculer les radians pour les filtres IE6/7/8 vous-même!). Vous devrez peut-être faire d'autres réglages pour le faire fonctionner par vous-même, comme définir la hauteur et la largeur, etc., mais tous les autres styles CSS devraient continuer à fonctionner normalement avec ceci.

Maintenant, vous n'avez pas besoin de PHP pour travailler dur; le navigateur peut le faire. Encore mieux, parce que c'est dans le navigateur, vous pouvez faire des choses comme changer la rotation à la volée avec Javascript.

+0

wow merci beaucoup! Les styles css fonctionnent très bien. pourquoi php doit être si difficile? – Chris

+1

pour être juste, la plupart des gens pensent que la rotation CSS est difficile! ;) – Spudley

+0

lol hey où puis-je lire sur des trucs comme ça? Je suis allé à w3schools.com pour apprendre CSS et je ne me souviens pas de voir quelque chose comme ça là-dedans? – Chris

0

Je devine que son merdiques Internet Explorer. J'ai eu des problèmes avec cela quand je faisais un diaporama de texte jQuery, j'ai fini par utiliser des fichiers JPEG pour fondre et sortir.