LO uses basically the formula "newpixel=(oldpixel-128)*contrast+128+brightness",
i.e. contrast is applied first. It looks like there's no "oficial" formula for this,
so a formula that applies brightness first would be ok too. MSO for some weird reason
apparently uses a formula that applies half of brightness before contrast and
half afterwards (insert funny political correctness or compromise joke here).
While the result is the same like with the LO formula if only either brightness
or contrast is adjusted, the result is different if both are involved. Just modify
the image using the MSO algorithm if this is the case.
Change-Id: I55fe8f395832685b90f024cf2f58b0797c1ba588
...mostly done with a rewriting Clang plugin, with just some manual tweaking
necessary to fix poor macro usage.
Change-Id: I71fa20213e86be10de332ece0aa273239df7b61a
* Doxygen spits out a lot of warnings about not being able to find
match function signatures, etc. This is because in some headers we
have a using namespace statement, in others it gets confused between
::Window and Window (!).
* Wrong use of tags:
+ Lots of @seealso - should be @see
+ Wrong usage of @overload - corrected with the right function
signature
+ HTML tags that doxygen doesn't recognize removed
Change-Id: I1c2eed941619b8764dbfcfc5ab38027518cdf261
* Doxygen spits out a lot of warnings about not being able to find
match function signatures, etc. This is because in some headers we
have a using namespace statement, in others it gets confused between
::Window and Window (!).
* Wrong use of tags:
+ Lots of @seealso - should be @see
+ Wrong usage of @overload - corrected with the right function
signature
+ HTML tags that doxygen doesn't recognize removed
Conflicts:
include/vcl/toolbox.hxx
Change-Id: I687f45e426280d411ef3cb6d8d5993a829f2f324
Reviewed-on: https://gerrit.libreoffice.org/7725
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
Thorsten thought it might have been used for to the handling of the "Original
Size" functionality originally. That seems slightly broken currently in some
use cases, and this change doesn't make it any worse. (To see the brokenness,
play with resizing an image, reloading the document, and using "Original
Size". With the right sequence of actions, LO seems to think that the
"original size" is very small (1x1 pixel perhaps).)
Change-Id: I4e0852d2b367def5bc40baf95aac273d59731eec
Sinc(x) is a simple function used in communications. boost
happens to use it for quaternion math. The implementation is
simple, however it looks fun to re-use the boost function
even if just to say we are using quaternion math somewhere ;).
The performance difference is not likely to be huge but JIC,
set up a specific Boost math policy to limit type promotion
with it's corresponding impact.
(cherry picked from commit d1f61b3f3564ca5421a13b77e4c7c78bb409e9e1)
Conflicts:
vcl/inc/vcl/bitmap.hxx
Change-Id: I5f01db1688eedee25a2943ca3aa6e957b400c759
added from symphony, also BMP_SCALE_LANCZOS, BMP_SCALE_BICUBIC,
BMP_SCALE_BILINEAR and BMP_SCALE_BOX.
Changed defaults for internal scalings, enhanced PDF export when reduched DPI
is used, added BMP_SCALE_BESTQUALITY and BMP_SCALE_FASTESTINTERPOLATE as new
default for Bitmap::Scale
(cherry picked from commit bf734a151dc5169b65cf5d2a127e4142b765326c)
Conflicts:
canvas/source/vcl/canvasbitmaphelper.cxx
canvas/source/vcl/canvashelper.cxx
sd/source/ui/slidesorter/cache/SlsGenericPageCache.cxx
vcl/inc/vcl/alpha.hxx
vcl/inc/vcl/bitmap.hxx
vcl/inc/vcl/bitmapex.hxx
vcl/source/gdi/bitmap3.cxx
vcl/source/gdi/impgraph.cxx
vcl/source/gdi/pdfwriter_impl2.cxx
vcl/source/helper/canvasbitmap.cxx
(cherry picked from commit 593c86280b64d97725adde0c0a0cc4f090fb2310)
Change-Id: I41cf0a7e11bdbc6510e22e762486420995ba739b
see https://gerrit.libreoffice.org/#/c/3367/
and Change-Id: I00c96fa77d04b33a6f8c8cd3490dfcd9bdc9e84a for details
Change-Id: I199a75bc4042af20817265d5ef85b1134a96ff5a