Imaemagick'i kullanarak saydamlığı bir görüntüden diğerine aktarın


0

Alfa kanalını bir görüntüden alıp diğerine uygulamaya çalışıyorum.

Bu özel durumda, pembe olanın köşelerini "düzeltmek" istiyorum. Alfa kanalını siyah olandan kullanmak istiyorum. Bu köşeleri güzelce düzeltmelidir.

kaynak 1 alfa-1

kaynak köşe alfa-köşe

Gibi komutları denedim convert pink.png black.png -compose copy-opacity -composite out.pngama sadece zaten sahip olduğu aynı şeffaflıkla ortaya çıkıyor gibi görünüyor.

Birisi lütfen bunun nasıl yapılacağını açıklayabilir mi?

Yanıtlar:


0

Doğrudan cevap

Kullanmak için pink.pngaynı alfa kanalına sahip olmasını sağlamak black.pngiçin:

convert pink.png black.png -compose CopyOpacity -composite PNG32:fixed.png

açıklama

Temel sorun, Imagemagick'in yarı saydam pikselleri destekleyen bir PNG formatı seçmemesiydi. Bu yüzden ilk etapta rengini değiştirirken kenarlarım pürüzlü hale geldi. Kısmi şeffaflığı korumak için çeşitli seçenekleriniz vardır:

convert (command) PNG32:out.png
convert (command) PNG64:out.png
convert (command) out.tif

Her birinin ne tür bir alfa kanalına sahip olduğunu bulmak için Imagemagick’in PNG alt formatlarındaki belgelerine bakın .

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.