У меня нет решения для неровностей, создаваемых ротацией PHP, но ....
Вы не указали, что вы делаете с повернутыми изображениями после их поворота?Вы просто отображаете их на веб-сайте?
Если это все, что вы делаете, могу ли я предложить вам разрешить браузеру сделать поворот за вас с помощью CSS.
СледующееКод таблицы стилей будет работать со ВСЕМИ текущими браузерами (включая более старые версии 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 */
}
(это наклон на 45 градусов; не стесняйтесь изменять его для других углов, хотя вам придется пересчитать радианыдля фильтров IE6 / 7/8 самостоятельно!).Возможно, вам придется внести другие изменения, чтобы заставить его работать на себя, например, установить высоту и ширину и т. Д., Но все остальные стили CSS должны продолжать работать как обычно.
Теперь вам не нужнозаставить PHP выполнять тяжелую работу;браузер может сделать это.Еще лучше, потому что это в браузере, вы можете делать такие вещи, как изменение поворота на лету с Javascript.