Date: prev next · Thread: first prev next last
2012 Archives by date, by thread · List index


On 11/05/12 13:21, Eike Rathke wrote:
Hi Markus,

On Friday, 2012-05-11 03:20:37 +0200, Markus Mohrhard wrote:

A possible way a color scale entry would look like is:

<colorScale range="$A$4:$D$10">
  <entry type="value" val="10" col="ff11ff">
  <entry type="max" col="ffffff">
</colorScale>
<colorScale range="$H3:$I$20">
  <entry type="min" col="ff11ff">
  <entry type="percent" val="30" col="aaaaaa">
  <entry type="percent" val="70" col="bbbbbb">
  <entry type="max" col="ffffff">
</colorScale>

Taking Michael's suggestion

<style:style style:name="ce1" style:family="table-cell">
  <style:color-scale style:color-scale-minimum="CCCCCC"
style:color-scale-minimum-value="3" style:color-scale-maximum="444444"
style:color-scale-maximum-value="42"/>
</style:style>

and applying your example this could be something like

<style:style style:name="ce1" style:family="table-cell">
    <style:color-scale>
        <style:color-scale-entry fo:background-color="#ff11ff" office:value="10"/>
        <style:color-scale-entry style:color-scale-maximum="#ffffff"/>
    </style:color-scale>
</style:style>
<style:style style:name="ce2" style:family="table-cell">
    <style:color-scale>
        <style:color-scale-entry style:color-scale-minimum="#ff11ff"/>
        <style:color-scale-entry style:color-scale-percent="30" fo:background-color="#aaaaaa"/>
        <style:color-scale-entry style:color-scale-percent="70" fo:background-color="#bbbbbb"/>
        <style:color-scale-entry style:color-scale-maximum="#ffffff"/>
    </style:color-scale>
</style:style>

For type="value" above, can also strings be colored differently? Then
we'd need to use office:value-type as well.


For color scales and data bars( that are more or less just another way
to represent the same information ) there are quite some differences
to normal conditional formatting. One important difference is that the
range the color scale is applied to is really important (min, max,
percent, percentile) don't make sense without a range.

I think that can be expressed in the specification saying that a style
containing <style:color-scale> needs to be applied on a contiguous
range. Not sure though. If not, then things get complicated.

i wonder if that restriction is really necessary.  of course i don't
know how Calc is implemented and whether there would be performance
advantages in doing so; also i don't know if OOXML has such a
restrictions, and if not whether it would create interop problems.

but another problem: is it possible that users want to use the same
color scale on a bunch of cells, but otherwise style them differently?

if so i guess this could be dealt with via some kind of style
inheritance (which is already possible AFAIK), i.e. put the color scale
into a base style; or perhaps it would be better to have color scales as
top-level elements, and then reference them from styles (similar to e.g.
fonts), like so:

<style:color-scale style:name="foo" style:color-scale-minimum="CCCCCC"
style:color-scale-minimum-value="3" style:color-scale-maximum="444444"
style:color-scale-maximum-value="42"/>

<style:style style:name="ce1" style:family="table-cell">
  <style:use-color-scale style:name"foo"/>
</style:style>

<style:style style:name="ce2" style:family="table-cell">
  <style:use-color-scale style:name"foo"/>
</style:style>

with the idea that all cells that reference via their styles the same
color scales participate in the minimum/maximum etc. setting.


Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.