qt5base-lts/tests/auto/other/lancelot/scripts/porter_duff2.qps
Allan Sandfeld Jensen 32a94e54b5 Do not always use argb32pm for subsurfaces
A number of drawing paths were never tested by lancelot because we
always used argb32pm for subsurfaces. This patch switches the
subsurfaces to use the painter format or its alpha version. This means
changes to composition tests as it changes precision, especially of
alpha in the a2rgb30 formats.

Change-Id: I24d53bf6e1db8cca36bda69e2ddf07f20256b3c8
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
2017-05-31 18:53:57 +00:00

262 lines
4.5 KiB
Plaintext

# Version: 1
# CheckVsReference: 1% (0 50 600 100)
# CheckVsReference: 1% (0 200 600 100)
# CheckVsReference: 1% (0 350 600 100)
# CheckVsReference: 1% (0 500 600 100)
translate 0 50
surface_begin 0 0 100 100
begin_block predraw
setRenderHint Antialiasing
setPen nopen
gradient_clearStops
gradient_appendStop 0 efff0000
gradient_appendStop 0.5 dfffff00
gradient_appendStop 1 ef00ff00
gradient_setSpread PadSpread
gradient_setLinear 10 10 90 90
drawEllipse 10 10 80 80
end_block
setCompositionMode SourceOver
begin_block postdraw
gradient_clearStops
gradient_appendStop 0 afff0000
gradient_appendStop 0.5 cf0000ff
gradient_appendStop 1 bf00ff00
gradient_setSpread PadSpread
gradient_setLinear 0 0 100 0
drawEllipse 10 10 30 30
drawEllipse 10 60 30 30
drawEllipse 60 60 30 30
drawEllipse 60 10 30 30
drawEllipse 35 35 30 30
# a black rectangle around
setCompositionMode SourceOver
setPen black
setBrush nobrush
drawRect 0.5 0.5 99 99
end_block
surface_end
# Destination over
surface_begin 100 0 100 100
repeat_block predraw
setCompositionMode DestinationOver
repeat_block postdraw
surface_end
# Clear
surface_begin 200 0 100 100
repeat_block predraw
setCompositionMode Clear
repeat_block postdraw
surface_end
# Source
surface_begin 300 0 100 100
repeat_block predraw
setCompositionMode Source
repeat_block postdraw
surface_end
# Destination
surface_begin 400 0 100 100
repeat_block predraw
setCompositionMode Destination
repeat_block postdraw
surface_end
# Source In
surface_begin 500 0 100 100
repeat_block predraw
setCompositionMode SourceIn
repeat_block postdraw
surface_end
translate 0 50
# Destination In
surface_begin 0 100 100 100
repeat_block predraw
setCompositionMode DestinationIn
repeat_block postdraw
surface_end
# Source Out
surface_begin 100 100 100 100
repeat_block predraw
setCompositionMode SourceOut
repeat_block postdraw
surface_end
# Destination Out
surface_begin 200 100 100 100
repeat_block predraw
setCompositionMode DestinationOut
repeat_block postdraw
surface_end
# SourceAtop
surface_begin 300 100 100 100
repeat_block predraw
setCompositionMode SourceAtop
repeat_block postdraw
surface_end
# DestinationAtop
surface_begin 400 100 100 100
repeat_block predraw
setCompositionMode DestinationAtop
repeat_block postdraw
surface_end
# Xor
surface_begin 500 100 100 100
repeat_block predraw
setCompositionMode Xor
repeat_block postdraw
surface_end
translate 0 50
# Plus
surface_begin 0 200 100 100
repeat_block predraw
setCompositionMode Plus
repeat_block postdraw
surface_end
# Multiply
surface_begin 100 200 100 100
repeat_block predraw
setCompositionMode Multiply
repeat_block postdraw
surface_end
# Screen
surface_begin 200 200 100 100
repeat_block predraw
setCompositionMode Screen
repeat_block postdraw
surface_end
# Overlay
surface_begin 300 200 100 100
repeat_block predraw
setCompositionMode Overlay
repeat_block postdraw
surface_end
# Darken
surface_begin 400 200 100 100
repeat_block predraw
setCompositionMode Darken
repeat_block postdraw
surface_end
# Lighten
surface_begin 500 200 100 100
repeat_block predraw
setCompositionMode Lighten
repeat_block postdraw
surface_end
translate 0 50
# ColorDodge
surface_begin 0 300 100 100
repeat_block predraw
setCompositionMode ColorDodge
repeat_block postdraw
surface_end
# ColorBurn
surface_begin 100 300 100 100
repeat_block predraw
setCompositionMode ColorBurn
repeat_block postdraw
surface_end
# HardLight
surface_begin 200 300 100 100
repeat_block predraw
setCompositionMode HardLight
repeat_block postdraw
surface_end
# SoftLight
surface_begin 300 300 100 100
repeat_block predraw
setCompositionMode SoftLight
repeat_block postdraw
surface_end
# Difference
surface_begin 400 300 100 100
repeat_block predraw
setCompositionMode Difference
repeat_block postdraw
surface_end
# Exclusion
surface_begin 500 300 100 100
repeat_block predraw
setCompositionMode Exclusion
repeat_block postdraw
surface_end
resetMatrix
drawText 0 50 "SourceOver"
drawText 100 50 "DestinationOver"
drawText 200 50 "Clear"
drawText 300 50 "Source"
drawText 400 50 "Destination"
drawText 500 50 "SourceIn"
drawText 0 200 "DestinationIn"
drawText 100 200 "SourceOut"
drawText 200 200 "DestinationOut"
drawText 300 200 "SourceAtop"
drawText 400 200 "DestinationAtop"
drawText 500 200 "Xor"
drawText 0 350 "Plus"
drawText 100 350 "Multiply"
drawText 200 350 "Screen"
drawText 300 350 "Overlay"
drawText 400 350 "Darken"
drawText 500 350 "Lighten"
drawText 0 500 "ColorDodge"
drawText 100 500 "ColorBurn"
drawText 200 500 "HardLight"
drawText 300 500 "SoftLight"
drawText 400 500 "Difference"
drawText 500 500 "Exclusion"