Animasyonlu GIF dosyalarının arka planlarını şeffaf yapma


13

Jmol kullanarak oluşturduğum PNG formatında birkaç kareden GIMP kullanarak animasyonlu GIF dosyaları oluşturuyorum ve şimdi ortaya çıkan GIF dosyalarının arka planını nasıl şeffaf hale getireceğimizi bilmek istiyorum. Önerdiğiniz herhangi bir yazılım veya web sitesi ücretsiz olarak sunulmalıdır.


Biraz çaba gösterdin mi? Buraya ve oraya bakın .
Paolo Gibellini

Bunu daha önce yaptım ama bu GIF'in nasıl hareketli olduğunu görmek uygun değil, bu yöntemler sadece statik görüntüler için yararlı olduğu için statik değil. Bana bu iki soruyu göstererek önerdiğiniz şeyi yapmak için, GIF'e dönüştürdüğüm PNG dosyalarının her birini ayrı ayrı şeffaf hale getirmek ve GIF başına bir süre alacak olan 60 kareyi nasıl kullandığımı görmek, özellikle nasıl deneyimlerime göre, alfa rengi mükemmel olmaktan daha az olduğundan ve çalışmak için biraz uğraşmayı gerektirdiğinden, her görüntünün yapılması en az 5 dakika sürer.
BH2017

1
Jmol'u bilmiyorum, ama alfa arka planıyla ilgili bir konu (ayrıca buraya bakın ). Çerçeveleri PNGT olarak dışa aktardınız mı?
Paolo Gibellini

GIMP zaten şeffaflıkla GIF oluşturabilir.
Billy Kerr

Yanıtlar:


16

Bunu aşağıdaki seçenekleri kullanarak GIFsicle ile yapabilirsiniz:

gifsicle -U --disposal=previous --transparent="#ffffff" -O2 anim.gif > anim_trans.gif

Burada anim.gifve anim_trans.gifkaynak ve hedef dosya adlarıdır ve #ffffffsaydam yapmak istediğiniz rengin onaltılı kodudur (burada, saf beyaz).

(Buradaki önemli seçenekler -U/ --unoptimizeve --disposal=previousbirlikte animasyonu "flipbook moduna" dönüştüren ve her bir kareyi bir sonrakini çizmeden önce tamamen silinen. Bu, önceki karelerin, şeffaf parçalar. -O2seçenek kesinlikle gerekli değildir, ancak animasyon statik bölümlerini yeniden çizim sakınmaktır çerçeveleri optimize ederek çıkan animasyon dosya boyutunu küçültmek için olasıdır.)

Bir gösterim için, burada Wikimedia Commons'tan (solda) insan glikokalaz I (GLO1) enziminin bir animasyonu ve yukarıda gösterilen yöntem kullanılarak (sağda) saydamlık ile aynı animasyon eklenmiştir:

Beyaz arka plan ile orijinal animasyon Saydam arka plan ile değiştirilmiş animasyon
Wikimedia Commons kullanıcısı WillowW tarafından CC-By 3.0 lisansı altında kullanılan orijinal animasyon .

Dikkat çekilmesi gereken bir ayrıntı, GIFsicle komutu herhangi bir etkiye sahip değilse, arka plan renginin gerçekten doğru olup olmadığını kontrol etmeniz gerektiğidir. Örneğin, yukarıda gösterilen animasyon için, gerçek arka plan rengi (saf beyaz) yerine #fdfffc(yani çok hafif sarı-yeşilimsi beyaz) ortaya çıktı #ffffff. Farkı gözle söyleyemezsiniz (veya en azından bu ekranda yapamam), ancak GIFsicle'ın iki rengi farklı görmesini sağlamak için yeterlidir.

GIF dosyalarının yalnızca 1 bit saydamlığı desteklediğini unutmayın; bu, saydam bölgelerin kenarlarının kenar yumuşatılmayacağı anlamına gelir. Animasyonu gösterdiğiniz arka plan orijinal arka plan renginden çok uzak olmadığı sürece sorun yok, ancak öyleyse , animasyonun kenarlarında çirkin bir renk saçılması olacağını görebilirsiniz . Ne yazık ki, daha uygun bir arka plan seçmek veya animasyonu yeniden oluşturmak dışında, bu konuda yapabileceğiniz çok şey yok.


Bunun yerine kullanabileceğim gifsicle'a alternatif bir Windows 7 dostu yazılımınız var mı? Win32 ve 64 ikili yüklemeyi denedim (gifsicle'ın resmi web sitesindeki bağlantıdan 64 bit Windows 7 kullanıyorum) ve ikisi de işe yaramadı. Bir saniye boyunca bir komut istemi attı ve sonra bu istem kapatıldı. O zamandan beri komut istemini açtım (gifsicle'ın komut satırı tabanlı bir editör olduğunu anladığım gibi) ve komutlarınızı (gerçek dosya adları, ofc ile) kopyalayıp yapıştırdım ve gifsicle'ın tanınmadığını söyleyen bir uyarı ile boş bir dosya verdi benim sistemimde.
BH2017

Hmm ... komut istemini kullanmayı ve gifsicle.exe dosyasının tam yolunu belirlemeyi denediniz mi? Veya cdgifsicle'ı yüklediğiniz klasöre gidip komutu oradan mı çalıştırıyorsunuz? Ya SİZİN içine o klasörü ekleme%PATH% ?
Ilmari Karonen

cd- dizine girerek, o komutu çalıştırmak sorunsuz bir şekilde çalıştı, bu yüzden cevabınızı kabul edeceğim.
BH2017


1

GIFsicle ve GIFmagic'e benzer şekilde EzGIF , (diğer şeylerin yanı sıra) bunu yapmanıza izin veren çevrimiçi bir GIF araçları setidir:

  1. "Efektler" i seçin
  2. GIF'i yükle
  3. sonra "Rengi saydamlıkla değiştir" kutusunu kullanın
  4. ve başvur

(Daha sonra isterseniz sonucu optimize edebilirsiniz)


0

Imagemagick'iniz varsa komutu convert input.gif -transparent white output.gifbir terminalde çalıştırabilirsiniz .


Bu komutun ne yaptığını açıklayabilir misiniz? Tek satır değil, bir açıklama ile daha uzun cevaplar arıyoruz. Ayrıca, beyaz rengi şeffafa dönüştürüyor gibi görünüyor, bu yüzden görüntüdeki beyaz olan her şeyi de seçecek mi?
Luciano

0

Bunu doğrudan photoshop'tan yapabilirsiniz.

'Web'e Kaydet' seçeneğini kullanın ve şeffaflıkla GIF olarak kaydedin. Saydam olmasını istediğiniz rengi Renk Tablosundan bulun. Tıklayın ve ardından kırmızı daire içine aldığım düğmeye tıklayın.

Renk tablosu saydamlığı

Bu, seçtiğiniz rengi şeffaf hale getirecektir. Kayıt etmek.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.