ResolveIndexedColor yöntemi
Bir indeksli renk belirtecini sınıflandırır ve çalışma kitabı paleti ya da çağıranın sağladığı bir sistem rengi çözücüsü somut bir ARGB değeri sağladığında bu değeri çözümler
Yöntem hem IXLSWorkbook hem de TXLSXWorkbook üzerinde kullanılabilir ve çalışma kitabı durumunu değiştirmez
Sözdizimi
function ResolveIndexedColor( AIndex: Int64; ASpace: TXLSIndexedColorSpace; out AResolution: TXLSIndexedColorResolution): Boolean; overload; function ResolveIndexedColor( AIndex: Int64; ASpace: TXLSIndexedColorSpace; ARole: TXLSIndexedColorRole; ASystemResolver: TXLSTryResolveSystemColor; out AResolution: TXLSIndexedColorResolution): Boolean; overload;
İndeks uzayları
| Uzay | Yorum |
|---|---|
xicsPublicColorIndex | 1..56 arasındaki genel palet indeksleri BIFF palet yuvaları 8..63'e eşlenir; işaretli veya işaretsiz xlColorIndexAutomatic otomatik olarak sınıflandırılır |
xicsBiffIcv | BIFF indeksleri seçilen role göre doğrulanır: yazı tipi ve yorum renkleri IcvFont alt kümesini, kenarlık ve dolgu renkleri IcvXF alt kümesini, grafik renkleri IcvChart alt kümesini kullanır; genel arama ise Icv tablosunun tamamını kullanır |
xicsOoxmlIndexed | 0..63 arasındaki OOXML indeksleri indeksli paleti adresler, 64 ve 65 sistem ön planını ve arka planını tanımlar, daha büyük değerler geçersizdir |
Sonuç
| Alan | Anlam |
|---|---|
Kind | xickPalette, xickAutomatic, xickSystem veya xickInvalid |
RawIndex | Değişmemiş giriş değeri |
PaletteSlot | Sıfır tabanlı fiziksel palet yuvası veya belirteç palet temelli değilse -1 |
SystemColorRole | Pencere metni, pencere arka planı, grafik metni, grafik arka planı, grafik nötrü veya araç ipucu metni dahil anlamsal sistem rolü |
ARGB | HasResolvedColor true olduğunda normalize edilmiş somut renk |
HasResolvedColor | Yalnızca palet araması, sabit bir biçim rengi veya açık geri çağırma bir RGB değeri ürettiğinde True |
İşlevin dönüş değeri HasResolvedColor ile eşleşir; işlev false döndürdüğünde sınıflandırma AResolution içinde kullanılabilir kalır
Sistem rengi sözleşmesi
Kısa aşırı yükleme asla geçerli Windows masaüstünü okumaz; bu nedenle otomatik ve ortama bağlı sistem renklerini çözümsüz bırakır
Uzun aşırı yükleme hem TXLSSystemColorRole hem de TXLSIndexedColorRole değerlerini ASystemResolver'a geçirir; böylece çağıran açık bir arayüz, dışa aktarma veya başsız işleme ilkesi uygulayabilir
Geri çağırma çıktısı $AARRGGBB kanal sırasını kullanmalıdır; sıfır alfa baytı $FF olarak normalize edilir, false döndüren bir geri çağırma sonucu ise anlamsal belirteci sınıflandırılmış ancak çözümsüz bırakır
Windows COLORREF değeri $00BBGGRR kanal sırasını kullanır ve geri çağırma onu döndürmeden önce $AARRGGBB biçimine dönüştürülmelidir
Geçersiz belirteçler geri çağırmayı asla çağırmaz; sabit BIFF grafik nötr belirteci geri çağırma olmaksızın opak siyaha çözümlenir
Örnek
if Workbook.ResolveIndexedColor(12, xicsPublicColorIndex, Resolution) then UseArgb(Resolution.ARGB); if not Workbook.ResolveIndexedColor($40, xicsBiffIcv, Resolution) then Assert(Resolution.Kind = xickSystem);