Şeffaf PNG'm neden iyi görünmüyor?


23

Bir JPG'yi saydamlığa dönüştürmek istiyorum ve GIMP kullanarak alfa katmanlarını ve saydamlığı ekledim, aynı şekilde GIF'yi saydamlaştırıyorum PNG'ye dönüştürdüm ancak şablonumda yüklediğimde iyi görünmüyor:

görüntü tanımını buraya girin

Orijinal görüntügörüntü tanımını buraya girin

Şeffaf bir PNG haline getirildiğinde neden iyi görünmüyor? Şeffaf bir GIF yaparken daha iyi şanslar elde edebilir miyim? VEYA siyahla iyi uyuşmayan mavi renklerdir ve diğer bazı logoları kullanırken daha fazla şansa sahip olabilirim:

görüntü tanımını buraya giringörüntü tanımını buraya girin

Teşekkürler


1
Nasıl şeffaf png'ye dönüştürdüğünüzü açıklığa kavuşturmak en iyisi olacaktır.
Joonas

Yorumunuz için teşekkürler. GIMP kullandığım bilgisi ile GIF'yi şeffaf hale getirdiğim gibi soruları güncellerim. Henüz bir gif yapmayı denemedim ama bu daha iyi çalışıp çalışmadığını görmek için alternatif adım olacaktır.
Niklas

2
Sana şu an söyleyebilirim ki .gif daha iyi çalışmayacak. .Png resminizin sahip olduğu kalite, .png'nin yapabileceğinin en iyisi değildir. Ancak bu .gif'in yapabildiği en iyisidir. Öyleyse, yapma şeklinizle logonun etrafında beyaz lekeler bırakan bir şeyler olmalı. (Bu muhtemelen, journalxtra.com/easyguides/… size yardımcı olabilir )
Joonas

Ek garip GIMP 2.8.10 gözlemi: * "Katman" -> "Saydamlık" -> "Renkten alfaya" ile saydamlık eklendiğinde, "Katman" -> "Saydamlık" ilk yaptığınızda * seçimi * seçiminden bağımsız olarak yapılır. > "Alfa kanalı ekle", ardından "Alfaya renk" yalnızca seçimde çalışır.
Ocak'ta 15:15

Yanıtlar:


31

Tecrübelerime göre, GIMP'de bir görüntüye pürüzsüz şeffaflık eklemenin püf noktası , Katman → Şeffaflık → Renkten Alfa'ya… aracını kullanmaktır. Elbette, onu iyi etki için nasıl kullanacağınızı bilmek zorundasınız - tek başına, tek yapmanız gereken resimlerinizin tamamen komik ve yarı saydam görünmesi.

Yukarıda gönderdiğin görüntüyü çekersem ve üzerinde Renk ( Alpha) ' yı seçersem (saydam renk için beyaz seçerek), elde ettiğim şey şudur:

        Renkten Alfaya Logo

Gördüğünüz gibi, bu görüntü hafif bir arka plan üzerinde iyi görünüyor. Ne yazık ki, koyu renkli bir arka plana koymak, gri öğelerin tamamen kaybolmasına neden olur ve mavi kısımlar da çok iyi görünmez:

        Siyah bir arka plan üzerinde renk Alfa'ya sonra logo

Sorun, Alfaya Renk aracının yapması gerekeni yaptığıdır: orijinal görüntüdeki tüm beyazı saydamlığa dönüştürdü. Bu, gri çizgilerin yarı saydam siyah çizgiler olduğu ve açık mavi yarı saydam koyu mavi olduğu anlamına gelir.

Ancak gerçekte istediğimiz şey, muhtemelen metnin temel renklerinin ve logonun diğer öğelerinin opak kalması ve yalnızca kenarlarındaki kenar yumuşatılmış piksellerin yarı saydam hale gelmesi gerektiğidir. Bunu düzeltmek için renklere biraz beyaz eklememiz gerekiyor. Bunu başarmanın bir yolu, opak alanların çoğunlukla tek renklerden oluştuğu böyle bir görüntü için:

  1. Katmanı çoğalt.

  2. Alt katmanda, Saydam → Maske → Katman Maskesi Ekle ... seçeneğini seçip "Katmanın alfa kanalını aktar" seçeneğini seçerek saydamlığı maskeye dönüştürün .

  3. Saydamlığı bir maskeye aktardıktan sonra, alt katmanı tamamen beyaz yapın (örneğin, Kova Doldurma aracını "Tüm seçimi doldur" modunda kullanarak).

  4. Görüntünün tüm renklerine biraz beyaz eklediniz , ancak harflerin ve şekillerin iç kısımları hala tamamen opak değil. Bunu yapmak için maskeyi alt katmandaki normalleştirmemiz gerekir - ancak görüntünün farklı bölümleri farklı renk ve açıklıklara sahip olduğundan, her bölüm için ayrı ayrı yapmamız gerekir.

    Bunu yapmak için, Katmanlar iletişim kutusundaki alt katmanın maskesini tıklayarak düzenleyin, görüntünün her bir bölümünü ("B", "NANO" ve üstlerindeki çizimleri) seçmek için Dikdörtgen Seçme aracını kullanın. döndürün ve her seçimde Renkler → Otomatik → Normalleştir'i çalıştırın .

Bunları yaptıktan sonra (ve isteğe bağlı olarak katmanları birleştirdikten sonra), sonuç şöyle görünmelidir:

        Opak kısımları beyaza geri yükledikten sonra logo

Bunu yukarıdaki ilk resim ile karşılaştırırsanız, görülecek hiçbir fark yoktur. Fakat siyah bir arka plana koyduğumuzda ne olacağını görün:

        Opak kısımlara beyaz, siyah arka plan geri yükledikten sonra logo

Şimdi renkler opak görünüyor, ancak arka plan hala saydam ve kenarlar pürüzsüz.

Ne yazık ki, harflerin, özellikle de "B" nin çevresinde bazı gri saçakları görebilirsiniz. Bunun çoğunlukla orijinal JPEG görüntüsünün, kayıplı sıkıştırma nedeniyle bu alanlarda kroma kaybına maruz kaldığından şüpheleniyorum, beyaz zemin üzerinde bu kadar belirgin değildi. Bunu düzeltmeyi denemenin iki yolu vardır (bildiğim kadarıyla): saçaklamayı azaltmak için maske rengini beyaz katmandaki elle ayarlayabilir veya orijinal renkleri harflerden düz renkleri örneklemeyi deneyebilirsiniz. alt katmandaki beyazın yerine bu düz renkleri beyaz (Rectangle Select, Bucket Fill). Veya ikisini de deneyebilirsiniz.

Ancak, bütün bunlar gerçekten, başka seçeneğiniz yoksa, denemeniz gereken bir şey. Çok daha iyi bir çözüm, bu logoların kesin olarak oluşturulduğu orijinal vektör (AI, SVG, EPS, PDF, vb.) Dosyalarını denemek ve bulmaktır - tam saydamlık bilgisine sahip olmalı, sıkıştırma yapaylıklarından arındırılmış olmalı ve ölçeklenebilir olmalıdırlar. ! Sadece orijinalleri elde etmek gerçekten imkansızsa, bunun gibi düşük çözünürlüklü JPEG dosyalarından bile çalışmayı düşünmelisiniz.

Ayrıca, bitmapleri kullanmasanız bile, bazı öğelerin yeniden çizilmesiyle daha temiz bir sonuç elde edebilirsiniz, özellikle de basit Bakır Plaka gibi görünen metin .


2

Buradaki problem, görüntünün kenarlarında "beyaz renkli" olması ve bunu kaldırmamış olmanız. Solmaya veya kenar yumuşatmaya, koyu renklere karşı yüksek kontrast oluşturan griler kullanılarak ulaşılır.

GIMP kullanmıyorum, ancak basit bir ifadeyle, bununla çalışmanın en kolay yolu, katman yığınının alt kısmında yeni bir katman oluşturmak ve selü, görüntüde belirgin olmayan, yüksek kontrastlı ve genellikle renkte olmayan bir renkle doldurmak. Sık sık RGB (255,0,0) kullanıyorum. Bu, görüntünün herhangi bir arka planda çalışmasını sağlamak için kaldırmanız veya ayarlamanız gereken tüm alanları anında vurgulayacaktır. Üst katmanlardaki alanları kaldırmanız (beyaz renkte değil) gerekir, böylece kırmızıyı alt katmandan gösteriliyor. İşiniz bittiğinde, PNG'yi dışa aktarmadan önce kontrast katmanını kaldırır veya gizlersiniz. Bu kontrast katmanı özellikle yararlıdır, çünkü son sonucu test etmek için dışa aktarmaya gerek kalmadan görebilirsiniz.

Sarılmak istediğiniz şey, esasen tüm şeffaf bölümleri (beyaz değil, ancak saydam) çıkarılmış tek bir katmandır. Katman maskelerini genellikle bunu yapmak için kullanırım, çünkü tahribatsızdır, ancak yapılması gerekenleri yapın.

Bununla birlikte, yalnızca JPEG'i içe aktarmak yerine öğeleri yeniden yapılandırırsanız daha iyi sonuçlar alacağınızı düşünüyorum. Ayrıca, buradaki çizgiler gerçekten ince ve hafiftir ve siyah üzerine düşebilirler.

Bazı durumlarda logonun bir damga veya çıkartma olduğunu düşünmek, iç kısımları beyaz bırakın ve dış kenarların etrafına 5px beyaz bir çizgi çizin.

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.