Ooookay. Çok fazla googling yaptıktan ve gerçekten umduğumdan daha fazla ImageMagick kılavuzu okuduktan sonra, işte cevap. Adında gri tonlamalı bir görüntünüz olduğu göz önüne alındığında source.png, işte benim komutlarım.
Yapmak için markasını siyah pikseller saydam bu komutu çalıştırın ve oldukları gibi beyaz pikselleri tutar:
convert source.png -alpha copy -fx '#fff' result.png
Yerine To beyaz pikselleri saydam yapmak siyah tutarak kullanımı olduğu gibi iken:
convert source.png -alpha copy -channel alpha -negate +channel -fx '#000' result.png
Son komutu biraz daha ayrıntılı olarak açıklayalım:
convert - ImageMagic komutu (birkaç taneden biri)
source.png - Gri tonlamalı kaynak görüntü.
-alpha copy - Önceki dosyanın içeriğini alfa kanalına kopyalayın.
-channel alpha - Aşağıdaki işleçlerin yalnızca alfa kanalını etkilemesi gerektiğini belirtin.
-negate- Alfa kanalını ters çevirin (çünkü önceki -chanel alphagörüntünün başka bir bölümünü etkilemez).
+channel- Yalnızca aşağıdaki işleçlerin renk kanallarını etkilemesi ve artık alfa kanalını değiştirmemesi gerektiğini belirtin. (Bu varsayılan ayardır ve bu nedenle ilk, daha basit örnekte sağlamamıza gerek yoktur.)
-fx '#000'- Renkli kanal içeriklerini siyah piksellerle değiştirin. ( +channelAlfa kanalı etkilenmez).
Bu son -fxseçeneği dahil etmek oldukça önemlidir , aksi takdirde oluşturulan görüntüdeki tüm yarı saydam pikseller renkleri korur. (Bu pikseller yarı saydam olduğundan, açık olmayabilir, ancak sonuçta beklendiği gibi değildir.)
ImageMagick seçeneklerinin listesini oldukça kullanışlı buldum .