Open azukaar opened 9 years ago
perfect, thanks!
I tried to have a look at the source for a fix, but sory for now I didn't find anything relevant, seems like the theme+tint is working properly but not converted correctly to the corresponding grayscale. I was wondering if Excel wasn't actually using the Alpha channel to process them (considering that current implementation hard-translate argb = FF + rgb). I'll let you know if I find anything (because if the issue become too important on our current project I'll to investigate more on it)
@azukaar I managed to paint cell to a needed shade of grey using following:
cell.s.fill = {
fgColor: { rgb: 'DFDFDF' }
}
I found out that fgColor value is used as a background for a cell despite its name seems quite opposite. fgColor holds a foreground color for a patternFill with a 'solid' patternType and has nothing to do with font color in a cell. So, when you use bgColor without specifying patternType to 'none', it defaults to 'solid' in js-xslx. This is how it looks in XML:
<fill>
<patternFill patternType="solid">
<bgColor/>
</patternFill>
</fill>
When cell has a patternFill with a 'solid' patternType it changes cell background color to the patternFill fgColor. If it is not specified, system foreground color is used (usually black).
More info here: http://stackoverflow.com/questions/10756206/getting-cell-backgroundcolor-in-excel-with-open-xml-2-0
Thanks for the info Thought I don't directly use the style params itself, they are imported from Excel and re-exported without even being "read". So I don't really want to read the file just to replace grayscale. I guess there's something to be fixed in the parser directly
Do you know how to solve it?(´・_・`)
Just opening and re-writing a file will mess up the grayscale bgcolor/fgcolor in the file :
Will output