Създаване на GIF

d_badboy

Registered
Досега всичките ми картинки бяха png, но за да се вместя в стандартите трябва да са gif, обаче това се оказа непосилна задача за мене :cry:
Обяснете как се създава gif с преливащи се цветове особено ми е важно с прозрачност. Ето png, който искам да го направя на gif. Ето и един несполучлив опит.
 
Аз неказвам че неможе досега ползвах само png, но сега в моя случай не ми върши работа. Сайта ще го правя за дипломна работа и искам всичко да е изпипано затова всички картинки, в които има прозрачност трябва да са в gif формат за да се виждат от всички браузъри перфектно.
 
Еми какъв е проблема да ги запишеш с най-добро качество и 256 цвята? Просто, като детска игра. Като има прозрачност, тя пак ще си излезе прозрачна. Просто от file type избери gif и си готов.
 
Не знам и аз съм пробвал такъв вариант и не се получава.Изобщо когато има сянка-сянката става плътна и не се вижда това което трябва да се види.
 
d_badboy каза:
Досега всичките ми картинки бяха png, но за да се вместя в стандартите трябва да са gif, обаче това се оказа непосилна задача за мене :cry:
Обяснете как се създава gif с преливащи се цветове особено ми е важно с прозрачност. Ето png, който искам да го направя на gif. Ето и един несполучлив опит.

Ами ако няма да правиш анимация защо не ползваш jpg(jpeg) ?
При gif качеството почти винаги е отвратително сигорно зависи и от програмата де има много готини gif-чета :) .
 
тука има един урок за това как да ги напраиш да са еднакви под ИЕ и мозила да ги 4ете Ие-то

Код:
 <script type="text/javascript">

var arVersion = navigator.appVersion.split("MSIE")
var version = parseFloat(arVersion[1])

function correctPNG() // correctly handle PNG transparency in Win IE 5.5 and 6.
{
if ((version >= 5.5) && (document.body.filters))
{
for(var i=0; i<document.images.length; i++)
{
var img = document.images[i]
var imgName = img.src.toUpperCase()
if (imgName.substring(imgName.length-3, imgName.length) == "PNG")
{
var imgID = (img.id) ? "id='" + img.id + "' " : ""
var imgClass = (img.className) ? "class='" + img.className + "' " : ""
var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "
var imgStyle = "display:inline-block;" + img.style.cssText
var imgAttribs = img.attributes;
for (var j=0; j<imgAttribs.length; j++)
{
var imgAttrib = imgAttribs[j];
if (imgAttrib.nodeName == "align")
{
if (imgAttrib.nodeValue == "left") imgStyle = "float:left;" + imgStyle
if (imgAttrib.nodeValue == "right") imgStyle = "float:right;" + imgStyle
break
}
}
var strNewHTML = "<span " + imgID + imgClass + imgTitle
strNewHTML += " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" +

imgStyle + ";"
strNewHTML += "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
strNewHTML += "(src='" + img.src + "', sizingMethod='scale');\""
strNewHTML += " onmouseover=\"PNGswap('" + img.id + "');\" onmouseout=\"PNGswap('" + img.id

+"');\""
strNewHTML += "></span>"
img.outerHTML = strNewHTML
i = i-1
}
}
}
}
window.attachEvent("onload", correctPNG);

function PNGswap(myID)
{
var strOver = "_on"
var strOff = "_off"
var oSpan = document.getElementById(myID)
var currentAlphaImg = oSpan.filters(0).src
if (currentAlphaImg.indexOf(strOver) != -1)
oSpan.filters(0).src = currentAlphaImg.replace(strOver,strOff)
else
oSpan.filters(0).src = currentAlphaImg.replace(strOff,strOver)
}

</script>
[/quote]
 
Не използвайте големи преливания като обем. Ако сянката е от черната гама (пример), би се получило добре. Във всички други случай се получава кофти, защото в gif има само 256 цвята на разположение. Все пак, не ти пречи да ползваш някой фикс за ИЕ и готово.
 
sharkylx jpg доколкото си спомням неподдържа прозрачност, а при мен почти всички картинки имат прозрачни части. Това много помага при промяна на стиловете.
animatora в сайта ми неискам да има и капчица jacascript. Ако има ще трябва да го науча и говоря и за него.
Толкова ли е сложно да се направи прозрачен gif. Аз няма да ползвам много цветове само 1 цвят плавно преливащо се с прозрачност.
 
в гиф формат не става.Трябва отдолу да слоиш фона в/у който ще е картинката.И това е вариант.
 

Back
Горе