Μέθοδος ResolveIndexedColor
Ταξινομεί ένα token ευρετηριασμένου χρώματος και επιλύει μια συγκεκριμένη τιμή ARGB όταν η παλέτα του βιβλίου εργασίας ή ένας resolver χρωμάτων συστήματος που παρέχει ο καλών παρέχει μία
Η μέθοδος είναι διαθέσιμη τόσο στο IXLSWorkbook όσο και στο TXLSXWorkbook και δεν τροποποιεί την κατάσταση του βιβλίου εργασίας
Σύνταξη
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;
Χώροι δεικτών
| Χώρος | Ερμηνεία |
|---|---|
xicsPublicColorIndex | Οι δημόσιοι δείκτες παλέτας 1..56 αντιστοιχίζονται σε υποδοχές παλέτας BIFF 8..63· το προσήμαιο ή άσημο xlColorIndexAutomatic ταξινομείται ως αυτόματο |
xicsBiffIcv | Οι δείκτες BIFF επικυρώνονται έναντι του επιλεγμένου ρόλου: τα χρώματα γραμματοσειράς και σχολίου χρησιμοποιούν το υποσύνολο IcvFont, τα χρώματα περιγραμμάτων και γεμίσματος το υποσύνολο IcvXF, τα χρώματα γραφήματος το υποσύνολο IcvChart και η γενική αναζήτηση τον πλήρη πίνακα Icv |
xicsOoxmlIndexed | Οι δείκτες OOXML 0..63 απευθύνονται στην ευρετηριασμένη παλέτα, οι 64 και 65 ταυτοποιούν τα χρώματα προσκηνίου και παρασκηνίου συστήματος, και μεγαλύτερες τιμές είναι άκυρες |
Αποτέλεσμα
| Πεδίο | Σημασία |
|---|---|
Kind | xickPalette, xickAutomatic, xickSystem ή xickInvalid |
RawIndex | Η αμετάβλητη τιμή εισόδου |
PaletteSlot | Η φυσική υποδοχή παλέτας με βάση το μηδέν, ή -1 όταν το token δεν βασίζεται σε παλέτα |
SystemColorRole | Ο σημασιολογικός ρόλος συστήματος, όπως κείμενο παραθύρου, φόντο παραθύρου, κείμενο γραφήματος, φόντο γραφήματος, ουδέτερο γραφήματος ή κείμενο tooltip |
ARGB | Το κανονικοποιημένο συγκεκριμένο χρώμα όταν το HasResolvedColor είναι true |
HasResolvedColor | True μόνο όταν η αναζήτηση στην παλέτα, ένα χρώμα σταθερής μορφής ή η ρητή επανάκληση παρήγαγε τιμή RGB |
Η τιμή επιστροφής της συνάρτησης ταυτίζεται με το HasResolvedColor· η ταξινόμηση παραμένει διαθέσιμη στο AResolution όταν η συνάρτηση επιστρέφει false
Σύμβαση χρωμάτων συστήματος
Η σύντομη υπερφόρτωση δεν διαβάζει ποτέ την τρέχουσα επιφάνεια εργασίας των Windows και άρα αφήνει τα αυτόματα και εξαρτώμενα από το περιβάλλον χρώματα συστήματος άλυτα
Η εκτεταμένη υπερφόρτωση περνά τόσο το TXLSSystemColorRole όσο και το TXLSIndexedColorRole στο ASystemResolver, επιτρέποντας στον καλούντα να εφαρμόσει ρητή πολιτική UI, εξαγωγής ή headless απόδοσης
Η έξοδος της επανάκλησης πρέπει να χρησιμοποιεί σειρά καναλιών $AARRGGBB· ένα byte άλφα μηδέν κανονικοποιείται σε $FF, ενώ ένα αποτέλεσμα επανάκλησης false αφήνει το σημασιολογικό token ταξινομημένο αλλά άλυτο
Ένα COLORREF των Windows χρησιμοποιεί σειρά καναλιών $00BBGGRR και πρέπει να μετατραπεί σε $AARRGGBB πριν η επανάκληση το επιστρέψει
Τα άκυρα tokens δεν καλούν ποτέ την επανάκληση, και το σταθερό token ουδέτερου χρώματος γραφήματος του BIFF επιλύεται σε αδιαφανές μαύρο χωρίς επανάκληση
Παράδειγμα
if Workbook.ResolveIndexedColor(12, xicsPublicColorIndex, Resolution) then UseArgb(Resolution.ARGB); if not Workbook.ResolveIndexedColor($40, xicsBiffIcv, Resolution) then Assert(Resolution.Kind = xickSystem);