CorelDraw VBA - Resimlerin modunu RGB'den CMYK'ya Çevirmek
Evet kodlarımızı yazmaya başlayalım ve de açıklamalarını da karşılarına ekleyelim (' ile başlayan yerler tanımlar için, kod olarak işlemezler);Dim b As Shape 'Aranacak RGB modundaki bmp'ye bir tanım yapıyoruz.
For Each b In d.ActivePage.FindShapes ' aktif sayfadaki RGB bmpler için bir "arama döngüsü" oluşturacağız.
If b.Type = cdrBitmapShape Then 'Eğer bmp tipi cdr bitmap ise (1. koşulumuz)
If b.Bitmap.Mode = cdrRGBColorImage Then 'Eğer bmp renk modu cdr RGB ise (2. koşulumuz)
b.Bitmap.ConvertTo cdrCMYKColorImage 'bu resimi CMYK moda çevir.
End If '1. Koşul sonu
End If '2. Koşul sonu
Next b 'Sıradaki bmp'ye geçelim
Şimdi kodların normal yazılmış haline bir göz atalım.
Dim d As Document Dim b As Shape For Each b In d.ActivePage.FindShapes If b.Type = cdrBitmapShape Then If b.Bitmap.Mode = cdrRGBColorImage Then b.Bitmap.ConvertTo cdrCMYKColorImage End If End If Next b
Eğer birden fazla döküman açıksa ve de bunlar içindeki RGB bmplerin CMYK'ya çevrilmesini istiyorsak, bu kodlarımıza da döküman için döngü eklemeliyiz. (geçen dersimizden hatırlıyoruz)
Görünüm şu şekilde olur.
Dim d As Document Dim b As Shape For Each d In Documents For Each b In d.ActivePage.FindShapes If b.Type = cdrBitmapShape Then If b.Bitmap.Mode = cdrRGBColorImage Then b.Bitmap.ConvertTo cdrCMYKColorImage End If End If Next b Next d
Evet sayfaya gelişigüzel birkaç RGB modlu bmp import edip kodumuzu çalıştıralım. (Sub ve End Sub blokları arasına yapıştırabilirsiniz.)
İyi çalışmalar, başarılar...