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 alpha
gö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. ( +channel
Alfa kanalı etkilenmez).
Bu son -fx
seç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 .