diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 09:06:44 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 09:06:44 +0000 |
commit | ed5640d8b587fbcfed7dd7967f3de04b37a76f26 (patch) | |
tree | 7a5f7c6c9d02226d7471cb3cc8fbbf631b415303 /offapi/com/sun/star/rendering/CompositeOperation.idl | |
parent | Initial commit. (diff) | |
download | libreoffice-ed5640d8b587fbcfed7dd7967f3de04b37a76f26.tar.xz libreoffice-ed5640d8b587fbcfed7dd7967f3de04b37a76f26.zip |
Adding upstream version 4:7.4.7.upstream/4%7.4.7upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'offapi/com/sun/star/rendering/CompositeOperation.idl')
-rw-r--r-- | offapi/com/sun/star/rendering/CompositeOperation.idl | 152 |
1 files changed, 152 insertions, 0 deletions
diff --git a/offapi/com/sun/star/rendering/CompositeOperation.idl b/offapi/com/sun/star/rendering/CompositeOperation.idl new file mode 100644 index 000000000..05e6e56e1 --- /dev/null +++ b/offapi/com/sun/star/rendering/CompositeOperation.idl @@ -0,0 +1,152 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_rendering_CompositeOperation_idl__ +#define __com_sun_star_rendering_CompositeOperation_idl__ + +module com { module sun { module star { module rendering { + +/** These constants determine how the primitive color is combined with + the background.<p> + + When performing these calculations, it is assumed that all color + values are premultiplied with the corresponding alpha values (if + no alpha is specified, 1.0 is assumed). Then, the following + general compositing operation is performed: + <p> + C = Ca * Fa + Cb * Fb + <p> + where C is the result color, Ca and Cb are the input colors, + premultiplied with alpha, and Fa and Fb are described for the + different composite modes (wherein Aa and Ab denote source and + destination alpha, respectively).<p> + + @since OOo 2.0 + */ +constants CompositeOperation +{ + /** Clear the destination.<p> + + Clear the destination area. The function values are: Fa = Fb = + 0.<p> + */ + const byte CLEAR = 0; + + /** Copy source as-is to the destination.<p> + + Copy source as-is to the destination. The function values are: + Fa = 1, Fb = 0.<p> + */ + const byte SOURCE = 1; + + /** Leave the destination as-is.<p> + + Leave the destination as-is. The function values are: Fa = 0, + Fb = 1.<p> + */ + const byte DESTINATION = 2; + + /** Copy the source over the destination.<p> + + Copy the source over the destination. The function values are: + Fa = 1, Fb = 1-Aa.<p> + */ + const byte OVER = 3; + + /** Copy the source under the destination.<p> + + Copy the source under the destination. The function values + are: Fa = 1-Ab, Fb = 1.<p> + */ + const byte UNDER = 4; + + /** Copy the source to the destination.<p> + + Copy the source to the destination, but limited to where the + destination is. The function values are: Fa = Ab, Fb = 0.<p> + */ + const byte INSIDE = 5; + + /** Leave the destination as is.<p> + + Leave the destination as is, but only where the source + was. The function values are: Fa = 0, Fb = Aa.<p> + */ + const byte INSIDE_REVERSE = 6; + + /** Copy the source to the destination<p> + + Copy the source to the destination, but limited to where the + destination is not. The function values are: Fa = 1-Ab, Fb = + 0.<p> + */ + const byte OUTSIDE = 7; + + /** Leave the destination as is.<p> + + Leave the destination as is, but only where the source has not + been. The function values are: Fa = 0, Fb = 1-Aa.<p> + */ + const byte OUTSIDE_REVERSE = 8; + + /** Copy the source over the destination<p> + + Copy the source over the destination, but only where the + destination is. Keep the destination. The function values are: + Fa = Ab, Fb = 1-Aa.<p> + */ + const byte ATOP = 9; + + /** Copy the destination over the source.<p> + + Copy the destination over the source, but only where the + source is. Keep the source. The function values are: Fa = + 1-Ab, Fb = Aa.<p> + */ + const byte ATOP_REVERSE = 10; + + /** Combine source and destination by exclusive or.<p> + + Take only the parts where either source or destination, but + not both visible. The function values are: Fa = 1-Ab, Fb = + 1-Aa.<p> + */ + const byte XOR = 11; + + /** Add source and destination values.<p> + + Simply add contributions of both source and destination. The + resulting color values are limited to the permissible color + range, and clipped to the maximal value, if exceeded. The + function values are: Fa = 1, Fb = 1.<p> + */ + const byte ADD = 12; + + /** Saturate source and destination.<p> + + Saturate destination with source values. The function values + are: Fa = min(1,(1-Ab)/Aa), Fb = 1<p> + */ + const byte SATURATE = 13; +}; + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |