qt 6.5.1 original

This commit is contained in:
kleuter
2023-10-29 23:33:08 +01:00
parent 71d22ab6b0
commit 85d238dfda
21202 changed files with 5499099 additions and 0 deletions

View File

@ -0,0 +1,76 @@
# Copyright (C) 2022 The Qt Company Ltd.
# SPDX-License-Identifier: BSD-3-Clause
#####################################################################
## tst_baseline_painting Test:
#####################################################################
# Collect test data
file(GLOB_RECURSE test_data_glob
RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
scripts/*)
list(APPEND test_data ${test_data_glob})
qt_internal_add_test(tst_baseline_painting
SOURCES
../shared/baselineprotocol.cpp ../shared/baselineprotocol.h ../shared/lookup3.cpp
../shared/qbaselinetest.cpp ../shared/qbaselinetest.h
../shared/paintcommands.cpp ../shared/paintcommands.h
tst_baseline_painting.cpp
INCLUDE_DIRECTORIES
../shared
LIBRARIES
Qt::Gui
Qt::GuiPrivate
Qt::Network
TESTDATA ${test_data}
)
# Resources:
set(images_resource_files
"images/alpha.png"
"images/alpha2x2.png"
"images/bitmap.png"
"images/border.png"
"images/borderimage.png"
"images/dome_argb32.png"
"images/dome_indexed.png"
"images/dome_indexed_mask.png"
"images/dome_mono.png"
"images/dome_mono_128.png"
"images/dome_mono_palette.png"
"images/dome_rgb32.png"
"images/dot.png"
"images/face.png"
"images/gam030.png"
"images/gam045.png"
"images/gam056.png"
"images/gam100.png"
"images/gam200.png"
"images/image.png"
"images/mask.png"
"images/mask_100.png"
"images/masked.png"
"images/sign.png"
"images/solid.png"
"images/solid2x2.png"
"images/struct-image-01.jpg"
"images/struct-image-01.png"
"images/zebra.png"
)
qt_internal_add_resource(tst_baseline_painting "images"
PREFIX
"/"
FILES
${images_resource_files}
)
## Scopes:
#####################################################################
qt_internal_extend_target(tst_baseline_painting CONDITION QT_FEATURE_opengl
LIBRARIES
Qt::OpenGL
)

View File

@ -0,0 +1,34 @@
<!DOCTYPE RCC>
<RCC version="1.0">
<qresource>
<file>images/alpha.png</file>
<file>images/border.png</file>
<file>images/borderimage.png</file>
<file>images/dome_argb32.png</file>
<file>images/dome_indexed.png</file>
<file>images/dome_mono_palette.png</file>
<file>images/dome_rgb32.png</file>
<file>images/face.png</file>
<file>images/gam045.png</file>
<file>images/gam100.png</file>
<file>images/image.png</file>
<file>images/masked.png</file>
<file>images/sign.png</file>
<file>images/struct-image-01.jpg</file>
<file>images/bitmap.png</file>
<file>images/dome_indexed_mask.png</file>
<file>images/dome_mono_128.png</file>
<file>images/dome_mono.png</file>
<file>images/dot.png</file>
<file>images/gam030.png</file>
<file>images/gam056.png</file>
<file>images/gam200.png</file>
<file>images/mask_100.png</file>
<file>images/mask.png</file>
<file>images/solid.png</file>
<file>images/struct-image-01.png</file>
<file>images/zebra.png</file>
<file>images/alpha2x2.png</file>
<file>images/solid2x2.png</file>
</qresource>
</RCC>

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 254 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 182 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 826 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 287 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 213 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 216 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 216 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 205 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 187 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 166 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 274 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 319 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 788 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 607 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 75 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 62 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 426 B

View File

@ -0,0 +1,156 @@
path_moveTo convexPath 25 0
path_lineTo convexPath 50 50
path_lineTo convexPath 25 25
path_lineTo convexPath 0 50
path_closeSubpath convexPath
pixmap_load border.png pixmap
setRenderHint LineAntialiasing false
translate 10 10
begin_block drawing
setPen black 1
setBrush 7f7fff
drawPath convexPath
setFont "monospace" 8
setPen black
drawText 0 68 "QwErTy@"
setPen black 1
setBrush 7f7fff
drawRect 0 80 10 5
setPen black 1
setBrush noBrush
drawRect 20 80 10 5
setPen noPen
setBrush 7f7fff
drawRect 40 80 10 5
setPen black 2
setBrush 7f7fff
drawRect 0 90 10 5
setPen black 2
setBrush noBrush
drawRect 20 90 10 5
setPen noPen
setBrush 7f7fff
drawRect 40 90 10 5
setPen black 3
setBrush 7f7fff
drawRect 0 100 10 5
setPen black 3
setBrush noBrush
drawRect 20 100 10 5
setPen noPen
setBrush 7f7fff
drawRect 40 100 10 5
setPen black 1
setBrush noBrush
drawLine 10 110 20 120
drawLine 30 120 40 110
setPen black 2
setBrush noBrush
drawLine 10 120 20 130
drawLine 30 130 40 120
setPen black 3
setBrush noBrush
drawLine 10 130 20 140
drawLine 30 140 40 130
drawPixmap pixmap 0 150
setRenderHint SmoothPixmapTransform false
drawPixmap pixmap 20 150 15 15 0 0 10 10
end_block
translate 0 180
setRenderHint LineAntialiasing true
repeat_block drawing
drawText 15 185 "0.0"
resetMatrix
translate 70.2 10.2
setRenderHint LineAntialiasing false
repeat_block drawing
translate 0 180
setRenderHint LineAntialiasing true
repeat_block drawing
translate -0.2 -0.2
drawText 15 185 "0.2"
resetMatrix
translate 130.4 10.4
setRenderHint LineAntialiasing false
repeat_block drawing
translate 0 180
setRenderHint LineAntialiasing true
repeat_block drawing
translate -0.4 -0.4
drawText 15 185 "0.4"
resetMatrix
translate 190.5 10.5
setRenderHint LineAntialiasing false
repeat_block drawing
translate 0 180
setRenderHint LineAntialiasing true
repeat_block drawing
translate -0.5 -0.5
drawText 15 185 "0.5"
resetMatrix
translate 250.6 10.6
setRenderHint LineAntialiasing false
repeat_block drawing
translate 0 180
setRenderHint LineAntialiasing true
repeat_block drawing
translate -0.6 -0.6
drawText 15 185 "0.6"
resetMatrix
translate 310.8 10.8
setRenderHint LineAntialiasing false
repeat_block drawing
translate 0 180
setRenderHint LineAntialiasing true
repeat_block drawing
translate -0.8 -0.8
drawText 15 185 "0.8"
resetMatrix
translate 371 11
setRenderHint LineAntialiasing false
repeat_block drawing
translate 0 180
setRenderHint LineAntialiasing true
repeat_block drawing
drawText 15 185 "1.0"
resetMatrix
drawText 430 95 "Aliased"
drawText 430 275 "Anti-Aliased"

View File

@ -0,0 +1,68 @@
# Version: 1
# CheckVsReference: 5
setRenderHint LineAntialiasing
setPen red 0
drawEllipse 0 0 600 400
path_moveTo arcs 300 200
path_arcTo arcs 0 0 600 400 0 10
path_closeSubpath arcs
path_moveTo arcs 300 200
path_arcTo arcs 0 0 600 400 20 30
path_closeSubpath arcs
path_moveTo arcs 300 200
path_arcTo arcs 0 0 600 400 60 45
path_closeSubpath arcs
path_moveTo arcs 300 200
path_arcTo arcs 0 0 600 400 115 60
path_closeSubpath arcs
path_moveTo arcs 300 200
path_arcTo arcs 0 0 600 400 180 90
path_closeSubpath arcs
path_moveTo arcs 590 200
path_arcTo arcs 10 10 580 380 0 360
path_closeSubpath arcs
path_moveTo arcs 300 200
path_arcTo arcs 20 20 560 360 0 -10
path_closeSubpath arcs
path_moveTo arcs 300 200
path_arcTo arcs 20 20 560 360 -20 -30
path_closeSubpath arcs
path_moveTo arcs 300 200
path_arcTo arcs 20 20 560 360 -60 -45
path_closeSubpath arcs
path_moveTo arcs 300 200
path_arcTo arcs 20 20 560 360 -115 -60
path_closeSubpath arcs
path_moveTo arcs 300 200
path_arcTo arcs 20 20 560 360 -180 -90
path_closeSubpath arcs
setPen black 1 solidline
setBrush #3f00ff00
drawPath arcs
# Then again with a matrix set...
translate 200 400
rotate 10
scale 0.5 0.5
setPen red 0
setBrush nobrush
drawEllipse 0 0 600 400
setPen black 1 solidline
setBrush #3f0000ff
drawPath arcs

View File

@ -0,0 +1,54 @@
# Version: 1
# CheckVsReference: 5
drawArc 100 100 100 100 0 1440
drawArc 100 100 100 100 1440 1440
drawArc 100 100 100 100 2880 1440
drawArc 100 100 100 100 4320 1440
drawArc 100 200 100 100 0 -1440
drawArc 100 200 100 100 -1440 -1440
drawArc 100 200 100 100 -2880 -1440
drawArc 100 200 100 100 -4320 -1440
drawArc 200 100 100 100 720 1440
drawArc 200 100 100 100 2160 1440
drawArc 200 100 100 100 3600 1440
drawArc 200 100 100 100 5040 1440
drawArc 200 200 100 100 -720 -1440
drawArc 200 200 100 100 -2160 -1440
drawArc 200 200 100 100 -3600 -1440
drawArc 200 200 100 100 -5040 -1440
drawArc 300 100 100 100 3840 480
drawArc 300 200 100 100 -3840 -480
drawArc 300 100 100 100 1600 1340
setPen black
drawArc 400 100 200 200 0 5760
setPen white
drawArc 400 100 200 200 960 960
drawArc 400 100 200 200 2880 960
drawArc 400 100 200 200 4800 960
setPen black
drawArc 100 350 300 300 160 5760
drawArc 100 350 300 300 320 5760
drawArc 100 350 300 300 1920 5760
drawArc 100 350 300 300 2080 5760
drawArc 100 350 300 300 3680 5760
drawArc 100 350 300 300 3840 5760
drawArc 100 350 300 300 5440 5760
drawArc 100 350 300 300 5600 5760
setPen white
drawArc 100 350 300 300 0 5760
translate 400 300
setRenderHint Antialiasing true
setPen blue 40
drawArc 100 100 200 200 0 4320
setPen red 40
drawArc 60 60 280 280 0 4320

View File

@ -0,0 +1,136 @@
# Version: 1
# CheckVsReference: 5%
translate 10 30
setBackground 7f7fff
setBackgroundMode Transparent
setPen ff7f7f
path_moveTo path 0 0
path_lineTo path 25 0
path_cubicTo path 50 0 25 25 25 50
path_lineTo path 0 50
bitmap_load bitmap.png bitmap
begin_block drawing
save
drawRect 0 0 50 50
translate 60 0
drawEllipse 0 0 50 50
translate 60 0
drawPolygon [0 0 50 0 25 50 25 25]
translate 60 0
drawPath path
translate 60 0
drawPie 0 0 50 50 1440 2000
translate 60 0
drawChord 0 0 50 50 1440 2000
translate 60 0
drawLine 0 0 50 0
drawLine 0 0 50 50
drawLine 0 0 0 50
translate 60 0
drawPolyline [0 0 50 0 25 50 25 25]
translate 60 0
drawArc 0 0 50 50 1440 2000
translate 60 0
drawText 0 10 "Jambi-Bambi"
translate 80 0
drawPixmap bitmap 0 0
restore
save
setRenderHint Antialiasing
translate 5 55
drawRect 0 0 50 50
translate 60 0
drawEllipse 0 0 50 50
translate 60 0
drawPolygon [0 0 50 0 25 50 25 25]
translate 60 0
drawPath path
translate 60 0
drawPie 0 0 50 50 1440 2000
translate 60 0
drawChord 0 0 50 50 1440 2000
translate 60 0
drawLine 0 0 50 0
drawLine 0 0 50 50
drawLine 0 0 0 50
translate 60 0
drawPolyline [0 0 50 0 25 50 25 25]
translate 60 0
drawArc 0 0 50 50 1440 2000
translate 60 0
drawText 0 10 "Jambi-Bambi"
translate 80 0
drawPixmap bitmap 0 0
restore
end_block
translate 0 160
setBackgroundMode Transparent
setPen ff7f7f 0 dotline flatcap beveljoin
repeat_block drawing
translate 0 160
setBackgroundMode Opaque
setPen ff7f7f 0 dotline flatcap beveljoin
repeat_block drawing
translate 0 160
setBackgroundMode Transparent
setPen ff7f7f 4 dashline flatcap beveljoin
repeat_block drawing
translate 0 160
setBackgroundMode OpaqueMode
setPen ff7f7f 4 dashline flatcap beveljoin
repeat_block drawing
resetMatrix
translate 5 5
setBrush nobrush
setPen black
setBackgroundMode transparent
drawText 10 15 "TransparentMode with solid 0-width pen"
drawRect 0 0 685 135
translate 0 160
drawText 10 15 "TransparentMode with dotted 0-width pen"
drawRect 0 0 685 135
translate 0 160
drawText 10 15 "OpaqueMode with dotted 0-width pen"
drawRect 0 0 685 135
translate 0 160
drawText 10 15 "TransparentMode with dotted 4-width pen"
drawRect 0 0 685 135
translate 0 160
drawText 10 15 "OpaqueMode with solid 4-width pen"
drawRect 0 0 685 135

View File

@ -0,0 +1,5 @@
# Version: 1
# CheckVsReference: 5%
setBrush #00ff00 crosspattern
import "background.qps"

View File

@ -0,0 +1,148 @@
# Version: 1
# CheckVsReference: 5%
setRenderHint LineAntialiasing
setPen green 0
translate 20 20
path_moveTo fullSize 0 0
path_cubicTo fullSize 200 100 -100 100 100 0
path_moveTo fullSize 0 200
path_cubicTo fullSize 0 100 100 100 100 200
path_moveTo fullSize 0 250
path_cubicTo fullSize 50 200 50 200 100 250
drawPath fullSize
translate 110 0
scale 10 10
path_moveTo medSize 0 0
path_cubicTo medSize 20 10 -10 10 10 0
path_moveTo medSize 0 20
path_cubicTo medSize 0 10 10 10 10 20
path_moveTo medSize 0 25
path_cubicTo medSize 5 20 5 20 10 25
drawPath medSize
resetMatrix
translate 240 20
scale 100 100
path_moveTo smallSize 0 0
path_cubicTo smallSize 2 1 -1 1 1 0
path_moveTo smallSize 0 2
path_cubicTo smallSize 0 1 1 1 1 2
path_moveTo smallSize 0 2.5
path_cubicTo smallSize 0.5 2 0.5 2 1 2.5
drawPath smallSize
resetMatrix
translate 20 300
drawPath medSize
resetMatrix
translate 250 -100
path_moveTo maxSize 0 500
path_cubicTo maxSize 1000 0 -500 0 500 500
drawPath maxSize
setRenderHint Antialiasing off
resetMatrix
path_moveTo path1 0 0
path_cubicTo path1 10 10 0 10 10 0
path_moveTo path2 0 0
path_cubicTo path2 15 15 -5 15 10 0
path_moveTo path3 0 0
path_cubicTo path3 20 20 -10 20 10 0
path_moveTo path4 0 0
path_cubicTo path4 0 5 10 10 0 15
path_moveTo path5 0 10
path_cubicTo path5 10 10 -10 20 0 0
path_moveTo path6 0 0
path_cubicTo path6 10 5 -10 10 0 15
setPen black 2
setBrush nobrush
translate 10 500
scale 3 3
begin_block paths
save
drawPath path1
translate 20 0
drawPath path2
translate 20 0
drawPath path3
translate 20 0
drawPath path4
translate 20 0
drawPath path5
translate 20 0
drawPath path6
restore
end_block
setPen nopen
setBrush black
translate 0 20
repeat_block paths
setRenderHint Antialiasing
setPen black 2
setBrush nobrush
translate 120 -20
repeat_block paths
setPen nopen
setBrush black
translate 0 20
repeat_block paths
resetMatrix
path_moveTo miterPath 20 0
path_cubicTo miterPath 20 20 0 0 1 0
path_lineTo miterPath -1 -0.2
setBrush nobrush
translate 50 660
scale 5 5
setPen black 4 solidline flatcap miterjoin
drawPath miterPath
setPen red 0
drawPath miterPath
path_moveTo miterPath2 21 0.2
path_lineTo miterPath2 19 0
path_cubicTo miterPath2 20 0 0 20 0 0
translate 30 0
setPen black 4 solidline flatcap miterjoin
drawPath miterPath2
setPen red 0
drawPath miterPath2
path_moveTo wonkyPath 0 0
path_cubicTo wonkyPath 5 15 20 0 17 0
translate 30 0
setPen black 4 solidline flatcap miterjoin
drawPath wonkyPath
setPen red 0
drawPath wonkyPath

View File

@ -0,0 +1,166 @@
# Version: 1
# CheckVsReference: 5%
#setRenderHint SmoothPixmapTransform
translate 10 50
setBackground ff7f7f
setPen 3f3f9f
bitmap_load dome_mono.png the_pixmap
save
# Draw with opaque pen/bg in transparent/opaque mode
setBackgroundMode Transparent
drawPixmap the_pixmap 0 0
setBackgroundMode Opaque
drawPixmap the_pixmap 110 0
translate 220 0
# Draw with alpha pen/bg in transparent/opaque mode
save
setBackground 7fff7f7f
setPen 7f3f3f9f
setBackgroundMode Transparent
drawPixmap the_pixmap 0 0
setBackgroundMode Opaque
drawPixmap the_pixmap 110 0
restore
translate 220 0
# Draw with rotated opaque pen/bg in transparent/opaque mode
setBackgroundMode Transparent
save
translate 50 50
rotate 10
translate -50 -50
drawPixmap the_pixmap 0 0
restore
setBackgroundMode Opaque
translate 110 0
save
translate 50 50
rotate 10
translate -50 -50
drawPixmap the_pixmap 0 0
restore
restore
translate 0 150
save
setBackgroundMode Transparent
drawTiledPixmap the_pixmap 0 0 200 100
setBackgroundMode Opaque
drawTiledPixmap the_pixmap 210 0 200 100
translate 440 -10
save
rotate 10
drawTiledPixmap the_pixmap 0 0 200 100
restore
restore
translate 0 150
save
setBackgroundMode Transparent
drawTiledPixmap the_pixmap 0 0 200 100 10 20
setBackgroundMode Opaque
drawTiledPixmap the_pixmap 210 0 200 100 10 20
translate 440 -10
save
rotate 10
drawTiledPixmap the_pixmap 0 0 200 100 10 20
restore
restore
pixmap_setMask the_pixmap mask_100.png
drawPixmap the_pixmap 0 150
setBackgroundMode Opaque
drawPixmap the_pixmap 110 150
translate 220 150
save
translate 50 50
rotate 10
translate -50 -50
setBackgroundMode Transparent
drawPixmap the_pixmap 0 0
restore
translate 110 0
save
translate 50 50
rotate 10
translate -50 -50
setBackgroundMode Opaque
drawPixmap the_pixmap 0 0
restore
resetMatrix
translate 10 650
bitmap_load dome_mono.png the_bitmap
setBackgroundMode Transparent
begin_block draw_subrected
drawPixmap the_bitmap 0 0 50 50 0 0 50 50
drawPixmap the_bitmap 50 0 50 50 50 0 50 50
drawPixmap the_bitmap 0 50 50 50 0 50 50 50
drawPixmap the_bitmap 50 50 50 50 50 50 50 50
end_block
translate 110 0
setBackgroundMode Opaque
repeat_block draw_subrected
translate 110 0
save
translate 20 -10
rotate 10
setBackgroundMode Transparent
repeat_block draw_subrected
restore
translate 110 0
save
translate 20 -10
rotate 10
setBackgroundMode Opaque
repeat_block draw_subrected
restore
# Some helpful texts
resetMatrix
setPen black
drawText 10 40 "Transparent"
drawText 120 40 "Opaque"
drawText 230 40 "Trans w/alpha"
drawText 340 40 "Opaque w/alpha"
drawText 450 40 "Trans w/xform"
drawText 560 40 "Opaque w/xform"
drawText 10 190 "Transparent tiled"
drawText 220 190 "Opaque tiled"
drawText 440 190 "Opaque w/xform"
drawText 10 340 "Transparent tiled w/offset"
drawText 220 340 "Opaque tiled w/offset"
drawText 440 340 "Opaque w/xform w/offset"
drawText 10 490 "Trans masked"
drawText 120 490 "Opaque masked"
drawText 230 490 "masked w/xform"
drawText 340 490 "masked w/xform"
drawText 10 640 "Subrected"
drawText 110 640 "Subrected opaque"
drawText 220 640 "subrect w/xform"
drawText 330 640 "subrect w/xform opaque"

View File

@ -0,0 +1,120 @@
# Version: 1
# CheckVsReference: 10%
image_load borderimage.png borderimage
translate -128 -128
begin_block draw_border
# top
drawImage borderimage 0 0 16 16 0 0 16 16
drawImage borderimage 16 0 36 16 16 0 32 16
drawImage borderimage 52 0 16 16 48 0 16 16
# sides
drawImage borderimage 0 16 16 16 0 16 16 32
drawImage borderimage 52 16 16 16 48 16 16 32
#bottom
drawImage borderimage 0 32 16 16 0 48 16 16
drawImage borderimage 16 32 36 16 16 48 32 16
drawImage borderimage 52 32 16 16 48 48 16 16
end_block draw_border
resetMatrix
begin_block draw_column
translate 1 1
repeat_block draw_border
translate 0.1 64.1
repeat_block draw_border
translate 0.1 64.1
repeat_block draw_border
translate 0.1 64.1
repeat_block draw_border
translate 0.1 64.1
repeat_block draw_border
translate 0.1 64.1
repeat_block draw_border
translate 0.1 64.1
repeat_block draw_border
translate 0.1 64.1
repeat_block draw_border
translate 0.1 64.1
repeat_block draw_border
translate 0.1 64.1
repeat_block draw_border
end_block draw_column
setRenderHint Antialiasing
resetMatrix
translate 72 0
repeat_block draw_column
resetMatrix
scale 1.25 1.25
translate 144 0
repeat_block draw_border
resetMatrix
scale 1.25 1.25
translate 246 0
rotate 30
repeat_block draw_border
setRenderHint SmoothPixmapTransform
resetMatrix
scale 1.25 1.25
translate 144 120
repeat_block draw_border
resetMatrix
scale 1.25 1.25
translate 246 120
rotate 30
repeat_block draw_border
resetMatrix
translate 215 260
scale 3.55 3.55
rotate 30
repeat_block draw_border
resetMatrix
setRenderHint SmoothPixmapTransform off
setRenderHint Antialiasing off
translate 480 627
rotate 180
repeat_block draw_column
resetMatrix
setRenderHint Antialiasing
translate 552 627
rotate 180
repeat_block draw_column
resetMatrix
setRenderHint Antialiasing off
translate 200.1 520.1
begin_block one_pixel_border
drawImage borderimage 0 0 16 16 0 0 16 16
drawImage borderimage 16 0 64 16 16 0 1 1
drawImage borderimage 80 0 16 16 48 0 16 16
drawImage borderimage 0 16 16 64 16 0 1 1
drawImage borderimage 80 16 16 64 16 0 1 1
drawImage borderimage 0 80 16 16 0 48 16 16
drawImage borderimage 16 80 64 16 16 0 1 1
drawImage borderimage 80 80 16 16 48 48 16 16
end_block one_pixel_border
resetMatrix
translate 205.1 626.1
scale 0.4 0.4
repeat_block one_pixel_border
resetMatrix
translate 255.1 624.1
scale 0.4 0.4
rotate 10
repeat_block one_pixel_border
resetMatrix
setPen red
drawRect 0 0 70 680
drawText 10 670 "aa off"
drawRect 72 0 70 680
drawText 80 670 "aa on"
drawRect 409 0 70 680
drawText 419 650 "rot 180"
drawText 419 670 "aa off"
drawRect 481 0 70 680
drawText 491 650 "rot 180"
drawText 491 670 "aa on"
drawRect 164 0 224 124
drawText 174 114 "smoothpixmaptransform off"
drawRect 164 128 224 134
drawText 174 252 "smoothpixmaptransform on"
drawRect 200 520 97 188
drawText 210 698 "1x1 edges"

View File

@ -0,0 +1,104 @@
# Version: 1
# CheckVsReference: 5%
path_addRect p 0 0 75 75
path_addEllipse p 25 25 75 75
translate 10 10
begin_block setup_gradient
gradient_clearStops
gradient_appendStop 0 red
gradient_appendStop 0.1 blue
gradient_appendStop 0.2 yellow
gradient_appendStop 0.3 cyan
gradient_appendStop 0.4 magenta
gradient_appendStop 0.5 green
gradient_appendStop 0.6 black
gradient_appendStop 0.7 indianred
gradient_appendStop 0.8 white
gradient_appendStop 0.9 orange
gradient_appendStop 1 blue
gradient_setLinear 0 0 100 100
end_block
setPen brush 0
setBrush nobrush
begin_block drawing
save
drawLine 0 0 100 100
translate 0 100
drawPath p
translate 0 110
drawRect 0 0 100 100
translate 0 110
drawPolyline [0 0 100 0 50 50]
drawPoint 40 40
drawPoint 41 40
drawPoint 42 40
drawPoint 43 40
drawPoint 44 40
drawPoint 45 40
drawPoint 46 40
drawPoint 47 40
drawPoint 48 40
drawPoint 49 40
drawPoint 50 40
restore
end_block
save
translate 110 0
save
setRenderHint Antialiasing
repeat_block drawing
restore
setBrush dome_rgb32.png
setPen brush 0
setBrush nobrush
translate 110 0
repeat_block drawing
translate 110 0
save
setRenderHint Antialiasing
repeat_block drawing
restore
restore
translate 0 0
save
repeat_block setup_gradient
setPen brush 5
setBrush nobrush
translate 0 350
repeat_block drawing
translate 110 0
save
setRenderHint Antialiasing
repeat_block drawing
restore
setBrush dome_rgb32.png
setPen brush 5
setBrush nobrush
translate 110 0
repeat_block drawing
translate 110 0
save
setRenderHint Antialiasing
repeat_block drawing
restore
restore

View File

@ -0,0 +1,88 @@
# Version: 1
# CheckVsReference: 5%
# Fill the background
drawRect 0 0 width height
setRenderHint Antialiasing
setRenderHint SmoothPixmapTransform
translate 10 10
# Draw all the pattern types as 40x40 rects using green, transparent background
begin_block drawrects
setBrush green Dense1Pattern
drawRect 0 0 40 40
setBrush green Dense2Pattern
drawRect 40 0 40 40
setBrush green Dense3Pattern
drawRect 80 0 40 40
setBrush green Dense4Pattern
drawRect 120 0 40 40
setBrush green Dense5Pattern
drawRect 160 0 40 40
setBrush green Dense6Pattern
drawRect 200 0 40 40
setBrush green Dense7Pattern
drawRect 240 0 40 40
setBrush green HorPattern
drawRect 280 0 40 40
setBrush green VerPattern
drawRect 320 0 40 40
setBrush green CrossPattern
drawRect 360 0 40 40
setBrush green BDiagPattern
drawRect 400 0 40 40
setBrush green FDiagPattern
drawRect 440 0 40 40
setBrush green DiagCrossPattern
drawRect 480 0 40 40
setBrush green SolidPattern
drawRect 520 0 40 40
setBrush green NoBrush
drawRect 560 0 40 40
gradient_setLinear 0 0 0 40
drawRect 600 0 40 40
setBrush face.png
drawRect 640 0 80 40
end_block
# Switch to opaque mode
setBackground #7fff7f
setBackgroundMode OpaqueMode
translate 0 50
# Draw all the pattern types as 40x40 rects using green, opaque background
repeat_block drawrects
translate 50 50
rotate 10
setBackgroundMode TransparentMode
repeat_block drawrects
setBackgroundMode OpaqueMode
translate 0 40
repeat_block drawrects
setBrush dot.png
setPen nopen
resetMatrix
drawRect 0 200 50 50
drawRect 50 200 50 50
setPen red
setBrushOrigin 0 250
drawRect 0 250 50 50
setBrushOrigin 50 250
drawRect 50 250 50 50
setBrush dome_indexed.png
setPen nopen
brushScale 0.7 0.7
drawRect 20 320 600 200
setBrush dome_argb32.png
brushScale 1.5 1.5
drawRect 20 540 600 200

View File

@ -0,0 +1,76 @@
# There was no serration in either case
save
setBrush black SolidPattern
drawRect 0.0 0.0 500.0 300.0
restore
save
setRenderHint Antialiasing true
path_addEllipse mypath1 10.0 10.0 200.0 200.0
path_addRect mypath1 10.0 210.0 200.0 40.0
path_addPolygon mypath1 [ 10 250 50 280 90 300 130 300 170 280 210 250]
setClipPath mypath1 ReplaceClip
setPen NoPen
setBrush cyan SolidPattern
drawRect 10.0 10.0 400.0 400.0
restore
save
setRenderHint Antialiasing false
path_addEllipse mypath2 220.0 10.0 200.0 200.0
path_addRect mypath2 220.0 210.0 200.0 40.0
path_addPolygon mypath2 [ 220 250 270 280 300 300 340 300 380 280 420 250]
setClipPath mypath2 ReplaceClip
setRenderHint Antialiasing true
setPen NoPen
setBrush cyan SolidPattern
drawRect 220.0 10.0 300.0 300.0
restore
setPen red
setBrush NoBrush
drawText 20 250 "Antialiasing before setClipPath"
drawText 240 250 "Antialiasing after setClipPath"
# Test that the clipping region is not abnormal after some transformations
translate 100 300
save
path_addEllipse mypath3 10.0 10.0 200.0 200.0
path_addRect mypath3 10.0 210.0 200.0 40.0
setPen black SolidLine
setBrush NoBrush
setRenderHint Antialiasing true
drawPath mypath3
setClipPath mypath3 ReplaceClip
rotate 60
setFont "times" 10 Bold
drawText 10 70 "Antialiasing before setClipPath - Transformation"
drawText 10 40 "Antialiasing before setClipPath - Transformation"
drawText 10 10 "Antialiasing before setClipPath - Transformation"
drawText 10 -20 "Antialiasing before setClipPath - Transformation"
drawText 10 -50 "Antialiasing before setClipPath - Transformation"
drawText 10 -80 "Antialiasing before setClipPath - Transformation"
restore
translate 0 250
save
path_addEllipse mypath4 10.0 10.0 200.0 200.0
path_addRect mypath4 10.0 210.0 200.0 40.0
setPen black SolidLine
setBrush NoBrush
drawPath mypath4
setClipPath mypath4 ReplaceClip
setRenderHint Antialiasing true
rotate 60
setFont "times" 10 Bold
drawText 10 70 "Antialiasing after setClipPath - Transformation"
drawText 10 40 "Antialiasing after setClipPath - Transformation"
drawText 10 10 "Antialiasing after setClipPath - Transformation"
drawText 10 -20 "Antialiasing after setClipPath - Transformation"
drawText 10 -50 "Antialiasing after setClipPath - Transformation"
drawText 10 -80 "Antialiasing after setClipPath - Transformation"
restore

View File

@ -0,0 +1,60 @@
# Version: 1
# CheckVsReference: 5%
path_addRect hor 0 0 50 10
path_addRect ver 0 0 10 50
translate 10 10
setPen NoPen
begin_block clipping
save
setBrush 0x7f7fff
save
setClipPath hor
drawRect 0 0 100 100
setClipPath ver IntersectClip
setBrush black CrossPattern
drawRect 0 0 100 100
restore
translate 100 0
save
setClipPath hor
drawRect 0 0 100 100
setClipPath ver ReplaceClip
setBrush black CrossPattern
drawRect 0 0 100 100
restore
translate 100 0
save
setClipPath hor
drawRect 0 0 100 100
setClipPath ver UniteClip
setBrush black CrossPattern
drawRect 0 0 100 100
restore
restore
end_block
translate 300 0
setRenderHint Antialiasing
repeat_block clipping
translate -300 100
setRenderHint Antialiasing false
scale 1.2 1.2
repeat_block clipping
translate 300 0
setRenderHint Antialiasing
setRenderHint SmoothPixmapTransform
repeat_block clipping

View File

@ -0,0 +1,182 @@
# Version: 1
# CheckVsReference: 5%
region_addRect clip 50 0 90 190
region_addRect clip 0 50 180 90
region_addRect clip2 30 30 60 60
region_addRect clip3 10 10 60 60
path_cubicTo path 90 0 50 50 90 90
path_cubicTo path 0 90 50 50 0 0
path_addRect path2 0 0 90 90
path_moveTo path2 90 45
path_arcTo path2 0 0 90 90 0 -360
path_addRect emptypath 0 0 0 0
region_addRect emptyregion 0 0 0 0
# Normal clip rect
setClipRect 0 0 50 150
begin_block repaint
save
setBrush red
setPen nopen
resetMatrix
region_getClipRegion tmpclip
path_getClipPath tmpclippath
drawRect 0 0 width height
setBrush #3f0000ff
setClipRegion tmpclip
drawRect 0 0 width height
setClipPath tmpclippath
setBrush #3f00ff00
drawRect 0 0 width height
restore
end_block
# Rotated clip rect
translate 100 0
rotate 10
setClipRect 0 0 50 150
repeat_block repaint
# simple clip region
resetMatrix
translate 0 200
setClipRegion clip
repeat_block repaint
# simle rotated clip region
translate 250 -10
rotate 10
setClipRegion clip
repeat_block repaint
# verify that clip is not xformed with painter
resetMatrix
translate 200 0
setClipRegion clip
rotate 30
setBrush red
setPen nopen
drawRect 0 0 width height
resetMatrix
translate 0 400
save
setClipRegion clip
setClipRegion clip2 IntersectClip
repeat_block repaint
translate 0 100
rotate 10
setClipRegion clip
setClipRegion clip2 IntersectClip
restore
translate 100 0
save
setClipRegion clip3
setClipRegion clip2 UniteClip
repeat_block repaint
translate 0 100
rotate 10
setClipRegion clip3
setClipRegion clip2 UniteClip
repeat_block repaint
restore
translate 100 0
save
setClipPath path
repeat_block repaint
translate 50 100
rotate 45
setClipPath path
repeat_block repaint
restore
translate 100 0
save
setClipPath path
setClipPath path2 IntersectClip
repeat_block repaint
translate 0 100
rotate 10
setClipPath path
setClipPath path2 IntersectClip
repeat_block repaint
restore
translate 100 0
save
setClipPath path
setClipPath path2 UniteClip
repeat_block repaint
translate 0 100
rotate 10
setClipPath path
setClipPath path2 UniteClip
repeat_block repaint
restore
translate 100 0
save
setClipPath path
setClipRegion clip3 IntersectClip
repeat_block repaint
translate 0 100
rotate 10
setClipRegion clip3
setClipPath path IntersectClip
repeat_block repaint
restore
translate 100 0
save
setClipPath path
setClipRegion clip3 UniteClip
repeat_block repaint
translate 0 100
rotate 10
setClipRegion clip3
setClipPath path UniteClip
repeat_block repaint
restore
# test that an empty region is not drawn.
resetMatrix
setClipRegion emptyregion
setBrush #3f00ff00
drawRect 0 0 300 300
drawText 50 50 "Text should be clipped away by region"
setClipping false
setClipPath emptypath
setBrush #3fffff00
drawRect 50 50 300 300
drawText 70 80 "Text should be clipped away by path"
# Test that we can extract a clipregion when a matrix is set too
resetMatrix
translate 500 10
scale 2 1
setBrush blue
setClipping false
rotate 5
drawRect 0 0 100 100
setClipRect 0 0 100 100
resetMatrix
rotate 10
region_getClipRegion xclip
setClipRegion xclip
resetMatrix
setBrush #7f00ff00
drawRect 0 0 width height
# the below used to assert in debug mode
setClipRect 10 10 20 20
setClipping false
setClipping true

View File

@ -0,0 +1,47 @@
# Version: 1
# CheckVsReference: 5%
path_addRect path1 10 10 50 50
path_addRect path2 30 30 50 50
# enable/disable a clip path
setPen nopen
setBrush red
setClipPath path1
setClipPath path2 UniteClip
drawRect 0 0 100 100
setClipping false
setBrush #630000ff
drawRect 0 0 100 100
setClipping true
setBrush #6300ff00
drawRect 0 0 100 100
# enable/disable noclip
translate 150 0
setClipPath path1 NoClip
setClipping false
setBrush #630000ff
drawRect 0 0 100 100
setClipping true
setBrush #6300ff00
drawRect 25 25 50 50
# enable/disable full clipping
translate 150 0
path_addRect path3 0 0 10 10
path_addRect path4 20 20 10 10
setClipPath path3
setClipPath path4 IntersectClip
setClipping false
setBrush #630000ff
drawRect 0 0 100 100
setClipping true
setBrush #6300ff00
drawRect 25 25 50 50
# disable clipping followed by setClipRect
translate 150 0
setClipRect 0 0 50 50 ReplaceClip
setClipping false
setBrush #630000ff
drawRect 0 0 100 100
setClipRect 25 25 75 75 IntersectClip
setBrush #6300ff00
drawRect 25 25 50 50

View File

@ -0,0 +1,352 @@
# Version: 1
# CheckVsReference: 5%
save
translate 10 10
setPen NoPen
begin_block clipping
save
setBrush 0x7f7fff
save
setClipRect 0 0 50 10
drawRect 0 0 100 100
setClipRect 0 0 10 50 IntersectClip
setBrush black CrossPattern
drawRect 0 0 100 100
restore
translate 100 0
save
setClipRect 0 0 50 10
drawRect 0 0 100 100
setClipRect 0 0 10 50 ReplaceClip
setBrush black CrossPattern
drawRect 0 0 100 100
restore
translate 100 0
save
setClipRect 0 0 50 10
drawRect 0 0 100 100
setClipRect 0 0 10 50 UniteClip
setBrush black CrossPattern
drawRect 0 0 100 100
restore
restore
end_block
translate 300 0
setRenderHint Antialiasing
repeat_block clipping
translate -300 100
setRenderHint Antialiasing false
scale 1.2 1.2
repeat_block clipping
translate 300 0
setRenderHint Antialiasing
setRenderHint SmoothPixmapTransform
repeat_block clipping
restore
# Excercise combining different clips
translate 0 250
scale 0.9 0.9
setFont "times" 10 bold
region_addRect dummyRegion 1000 1000 10 10
region_addRect realRegion 20 10 60 30
path_addRect dummyPath 1000 1000 10 10
path_addRect realPath 20 10 60 30
begin_block paintstuff
fillRect 0 0 100 50 orange
drawText 0 5 "Should be clipped"
drawText 0 15 "Should be clipped"
drawText 0 25 "Should be clipped"
drawText 0 35 "Should be clipped"
drawText 0 45 "Should be clipped"
drawText 0 55 "Should be clipped"
end_block
translate 0 100
# rect replaced by x
save
setClipRect 1000 1000 10 10 ReplaceClip
setClipRect 20 10 60 30 ReplaceClip
repeat_block paintstuff
restore
translate 100 0
save
setClipRect 1000 1000 10 10 ReplaceClip
setClipRectF 20 10 60 30 ReplaceClip
repeat_block paintstuff
restore
translate 100 0
save
setClipRect 1000 1000 10 10 ReplaceClip
setClipRegion realRegion ReplaceClip
repeat_block paintstuff
restore
translate 100 0
save
setClipRect 1000 1000 10 10 ReplaceClip
setClipPath realPath ReplaceClip
repeat_block paintstuff
restore
translate 100 0
# rectF replaced by x
save
setClipRectF 1000 1000 10 10 ReplaceClip
setClipRect 20 10 60 30 ReplaceClip
repeat_block paintstuff
restore
translate 100 0
save
setClipRectF 1000 1000 10 10 ReplaceClip
setClipRectF 20 10 60 30 ReplaceClip
repeat_block paintstuff
restore
translate 100 0
save
setClipRectF 1000 1000 10 10 ReplaceClip
setClipRegion realRegion ReplaceClip
repeat_block paintstuff
restore
translate 100 0
save
setClipRectF 1000 1000 10 10 ReplaceClip
setClipPath realPath ReplaceClip
repeat_block paintstuff
restore
translate 100 0
translate -800 100
# region replaced by x
save
setClipRegion dummyRegion ReplaceClip
setClipRect 20 10 60 30 ReplaceClip
repeat_block paintstuff
restore
translate 100 0
save
setClipRegion dummyRegion ReplaceClip
setClipRectF 20 10 60 30 ReplaceClip
repeat_block paintstuff
restore
translate 100 0
save
setClipRegion dummyRegion ReplaceClip
setClipRegion realRegion ReplaceClip
repeat_block paintstuff
restore
translate 100 0
save
setClipRegion dummyRegion ReplaceClip
setClipPath realPath ReplaceClip
repeat_block paintstuff
restore
translate 100 0
# path replaced by x
save
setClipPath dummyPath ReplaceClip
setClipRect 20 10 60 30 ReplaceClip
repeat_block paintstuff
restore
translate 100 0
save
setClipPath dummyPath ReplaceClip
setClipRectF 20 10 60 30 ReplaceClip
repeat_block paintstuff
restore
translate 100 0
save
setClipPath dummyPath ReplaceClip
setClipRegion realRegion ReplaceClip
repeat_block paintstuff
restore
translate 100 0
save
setClipPath dummyPath ReplaceClip
setClipPath realPath ReplaceClip
repeat_block paintstuff
restore
translate 100 0
region_addRect intregion 0 10 60 30
path_addRect intpath 0 10 60 30
translate -800 100
# rect & x
save
setClipRect 0 10 60 30 ReplaceClip
translate 40 0
setClipRect 0 10 60 30 IntersectClip
translate -40 0
repeat_block paintstuff
restore
translate 100 0
save
setClipRect 0 10 60 30 ReplaceClip
translate 40 0
setClipRectF 0 10 60 30 IntersectClip
translate -40 0
repeat_block paintstuff
restore
translate 100 0
save
setClipRect 0 10 60 30 ReplaceClip
translate 40 0
setClipRegion intregion IntersectClip
translate -40 0
repeat_block paintstuff
restore
translate 100 0
save
setClipRect 0 10 60 30 ReplaceClip
translate 40 0
setClipPath intpath IntersectClip
translate -40 0
repeat_block paintstuff
restore
translate 100 0
# rectF & x
save
setClipRectF 0 10 60 30 ReplaceClip
translate 40 0
setClipRect 0 10 60 30 IntersectClip
translate -40 0
repeat_block paintstuff
restore
translate 100 0
save
setClipRectF 0 10 60 30 ReplaceClip
translate 40 0
setClipRectF 0 10 60 30 IntersectClip
translate -40 0
repeat_block paintstuff
restore
translate 100 0
save
setClipRectF 0 10 60 30 ReplaceClip
translate 40 0
setClipRegion intregion IntersectClip
translate -40 0
repeat_block paintstuff
restore
translate 100 0
save
setClipRectF 0 10 60 30 ReplaceClip
translate 40 0
setClipPath intpath IntersectClip
translate -40 0
repeat_block paintstuff
restore
translate 100 0
translate -800 100
# region & x
save
setClipRegion intregion ReplaceClip
translate 40 0
setClipRect 0 10 60 30 IntersectClip
translate -40 0
repeat_block paintstuff
restore
translate 100 0
save
setClipRegion intregion ReplaceClip
translate 40 0
setClipRectF 0 10 60 30 IntersectClip
translate -40 0
repeat_block paintstuff
restore
translate 100 0
save
setClipRegion intregion ReplaceClip
translate 40 0
setClipRegion intregion IntersectClip
translate -40 0
repeat_block paintstuff
restore
translate 100 0
save
setClipRegion intregion ReplaceClip
translate 40 0
setClipPath intpath IntersectClip
translate -40 0
repeat_block paintstuff
restore
translate 100 0
# path & x
save
setClipPath intpath ReplaceClip
translate 40 0
setClipRect 0 10 60 30 IntersectClip
translate -40 0
repeat_block paintstuff
restore
translate 100 0
save
setClipPath intpath ReplaceClip
translate 40 0
setClipRectF 0 10 60 30 IntersectClip
translate -40 0
repeat_block paintstuff
restore
translate 100 0
save
setClipPath intpath ReplaceClip
translate 40 0
setClipRegion intregion IntersectClip
translate -40 0
repeat_block paintstuff
restore
translate 100 0
save
setClipPath intpath ReplaceClip
translate 40 0
setClipPath intpath IntersectClip
translate -40 0
repeat_block paintstuff
restore
translate 100 0

View File

@ -0,0 +1,85 @@
# Version: 1
# CheckVsReference: 5%
path_addRect path 300 0 80 80
path_addEllipse path 340 40 60 60
setRenderHint Antialiasing
setPen black
begin_block gradients
gradient_clearStops
gradient_appendStop 0 red
gradient_appendStop 0.25 orange
gradient_appendStop 0.5 yellow
gradient_appendStop 0.8 green
gradient_appendStop 1 cyan
gradient_setConical 40 40 50
drawRect 0 0 100 100
gradient_setConical 140 40 230
drawEllipse 100 0 100 100
gradient_clearStops
gradient_appendStop 0 3f7f7fff
gradient_appendStop 0.5 dfdfffff
gradient_appendStop 1 7f00007f
gradient_setConical 240 40 50
drawPolygon [200 0 290 0 250 99]
gradient_setConical 340 40 230
drawPath path
end_block
translate 0 100
scale 1 2
repeat_block gradients
resetMatrix
translate 0 300
brushTranslate 30 0
brushScale 0.9 0.9
brushRotate 20
repeat_block gradients
# Some helpful info perhaps?
resetMatrix
setPen black
drawText 410 50 "No XForm"
drawText 410 200 "scale 1x2"
drawText 410 300 "brush transform"
drawText 10 450 "50 deg"
drawText 110 450 "230 deg"
drawText 210 450 "50 deg w/alpha "
drawText 310 450 "230 deg w/alpha"
setPen 3f000000
setBrush nobrush
begin_block ellipse_draw
setClipRect 0 0 100 100
drawEllipse 35 35 11 11
save
translate 40 40
rotate -50
drawLine -100 0 100 0
restore
translate 100 0
end_block
repeat_block ellipse_draw
repeat_block ellipse_draw
repeat_block ellipse_draw
resetMatrix
translate 0 100
scale 1 2
repeat_block ellipse_draw
repeat_block ellipse_draw
repeat_block ellipse_draw
repeat_block ellipse_draw

View File

@ -0,0 +1,64 @@
# Version: 1
# CheckVsReference: 5%
setRenderHint Antialiasing
setPen #00ff00
translate 10 10
# standard draw
begin_block gradient
gradient_clearStops
gradient_appendStop 0 red
gradient_appendStop 0.25 orange
gradient_appendStop 0.5 yellow
gradient_appendStop 0.8 green
gradient_appendStop 0.9 cyan
gradient_appendStop 1 red
gradient_setSpread PadSpread
gradient_setConical 140 140 100
drawRect 0 0 300 300
end_block gradient
# Rotation w/o smooth xform
save
translate 350 0
save
setRenderHint SmoothPixmapTransform on
mapQuadToQuad 0 0 0 300 300 300 300 0 0 50 0 200 300 300 300 0
repeat_block gradient
restore
restore
translate 0 320
save
setRenderHint SmoothPixmapTransform on
mapQuadToQuad 0 0 0 300 300 300 300 0 0 0 100 300 200 300 300 0
repeat_block gradient
restore
save
translate 350 0
save
setRenderHint SmoothPixmapTransform on
mapQuadToQuad 0 0 0 300 300 300 300 0 0 0 0 300 300 250 300 50
repeat_block gradient
restore
restore
resetMatrix
setPen black
translate 125 20
drawText 0 0 "No transform"
translate 350 0
drawText 0 0 "Left Tilted"
resetMatrix
translate 125 350
drawText 0 0 "Bottom Tilted"
translate 350 0
drawText 0 0 "Right Tilted"
translate 120 0

View File

@ -0,0 +1,55 @@
drawRect 0 0 800 800
setRenderHint Antialiasing true
image_load dome_argb32.png img
save
setBrush springgreen SolidPattern
begin_block primitives
setPen black 2 DashLine
pen_setCosmetic true
drawLine 10 60 60 10
drawRect 80 10.0 30 50
drawText 130 50 "Foo"
drawImage img 160 10 50 50
pen_setCosmetic false
drawLine 10 160 60 110
drawRect 80 110.0 30 50
drawText 130 150 "Foo"
drawImage img 160 110 50 50
setPen NoPen
drawLine 10 260 60 210
drawRect 80 210.0 30 50
drawText 130 250 "Foo"
drawImage img 160 210 50 50
end_block primitives
translate 250 0
rotate 10
scale 2.5 1
repeat_block primitives
resetMatrix
# Force non-simple pen in Pdf
setOpacity 0.5
translate 0 400
repeat_block primitives
translate 250 0
rotate 10
scale 2.5 1
repeat_block primitives
restore
setPen blue 4 DotLine
setBrush olive SolidPattern
pen_setCosmetic true
translate 50 720
scale 2 2
drawRect 0 0 30 30

View File

@ -0,0 +1,268 @@
# Version: 1
# CheckVsReference: 5%
translate 20 20
begin_block draw
save
save
setPen black 1 SolidLine FlatCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 1 SolidLine SquareCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 1 SolidLine RoundCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 2 SolidLine FlatCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 2 SolidLine SquareCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 2 SolidLine RoundCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 6 SolidLine FlatCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 6 SolidLine SquareCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 6 SolidLine RoundCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
restore
translate 100 0
save
setPen black 1 DotLine FlatCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 1 DotLine SquareCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 1 DotLine RoundCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 2 DotLine FlatCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 2 DotLine SquareCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 2 DotLine RoundCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 6 DotLine FlatCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 6 DotLine SquareCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 6 DotLine RoundCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
restore
translate 100 0
save
setPen black 1 DashLine FlatCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 1 DashLine SquareCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 1 DashLine RoundCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 2 DashLine FlatCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 2 DashLine SquareCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 2 DashLine RoundCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 6 DashLine FlatCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 6 DashLine SquareCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 6 DashLine RoundCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
restore
translate 100 0
save
setPen black 1 DashDotLine FlatCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 1 DashDotLine SquareCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 1 DashDotLine RoundCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 2 DashDotLine FlatCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 2 DashDotLine SquareCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 2 DashDotLine RoundCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 6 DashDotLine FlatCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 6 DashDotLine SquareCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 6 DashDotLine RoundCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
restore
translate 100 0
save
setPen black 1 DashDotDotLine FlatCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 1 DashDotDotLine SquareCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 1 DashDotDotLine RoundCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 2 DashDotDotLine FlatCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 2 DashDotDotLine SquareCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 2 DashDotDotLine RoundCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 4 DashDotDotLine FlatCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 4 DashDotDotLine SquareCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 4 DashDotDotLine RoundCap BevelJoin
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
restore
translate 100 0
save
setPen black 1 SolidLine FlatCap BevelJoin
pen_setDashPattern [1 4 9 4 27 4]
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 1 SolidLine SquareCap BevelJoin
pen_setDashPattern [1 4 9 4 27 4]
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 1 SolidLine RoundCap BevelJoin
pen_setDashPattern [1 4 9 4 27 4]
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 2 SolidLine FlatCap BevelJoin
pen_setDashPattern [1 4 9 4 27 4]
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 2 SolidLine SquareCap BevelJoin
pen_setDashPattern [1 4 9 4 27 4]
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 2 SolidLine RoundCap BevelJoin
pen_setDashPattern [1 4 9 4 27 4]
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 4 SolidLine FlatCap BevelJoin
pen_setDashPattern [1 4 9 4 27 4]
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 4 SolidLine SquareCap BevelJoin
pen_setDashPattern [1 4 9 4 27 4]
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
setPen black 4 SolidLine RoundCap BevelJoin
pen_setDashPattern [1 4 9 4 27 4]
drawPolyline [0 0 80 0 80 30 40 20 0 30]
translate 0 40
restore
restore
end_block
translate 0 400
setRenderHint Antialiasing
repeat_block draw
translate 0 -20
drawText 30 0 "Solid"
translate 100 0
drawText 20 0 "DotLine"
translate 100 0
drawText 10 0 "DashLine"
translate 100 0
drawText 0 0 "DashDotLine"
translate 100 0
drawText 0 0 "DashDotDotLine"
translate 100 0
drawText 0 0 "CustomDashLine"
resetMatrix
translate 620 40
begin_block width_and_caps_texts
drawText 0 0 "Width=1, FlatCap"
translate 0 40
drawText 0 0 "Width=1, SquareCap"
translate 0 40
drawText 0 0 "Width=1, RoundCap"
translate 0 40
drawText 0 0 "Width=2, FlatCap"
translate 0 40
drawText 0 0 "Width=2, SquareCap"
translate 0 40
drawText 0 0 "Width=2, RoundCap"
translate 0 40
drawText 0 0 "Width=6, FlatCap"
translate 0 40
drawText 0 0 "Width=6, SqareCap"
translate 0 40
drawText 0 0 "Width=6, RoundCap"
end_block
translate 0 80
repeat_block width_and_caps_texts

View File

@ -0,0 +1,47 @@
# Version: 1
# CheckVsReference: 5%
path_moveTo degenerate 3427.0918499999997948 3872.1318999999998596
path_cubicTo degenerate 3427.0918499999997948 3872.1318999999994048 4729.4590867905308187 5176.8613451144155988 5389.9325499999995372 5837.8072499999998399
scale 0.05 0.05
translate -2500 -3000
setPen black 800
drawPath degenerate
resetMatrix
path_moveTo revbez 0 20
path_cubicTo revbez 0 0 120 0 120 -20
path_moveTo revbez 0 80
path_cubicTo revbez 0 100 120 100 120 120
translate 50 250
setPen blue 40 solidline flatcap
drawPath revbez
setPen red 0
drawPath revbez
translate 200 0
setPen blue 40 solidline squarecap
drawPath revbez
setPen red 0
drawPath revbez
translate 200 0
setPen blue 40 solidline roundcap
drawPath revbez
setPen red 0
drawPath revbez
resetMatrix
path_lineTo tightJoin 60 10
path_cubicTo tightJoin 50 0 100 0 100 50
translate 50 500
setPen green 40 solidline roundcap roundjoin
drawPath tightJoin
setPen red 0
drawPath tightJoin

View File

@ -0,0 +1,48 @@
# Version: 1
# CheckVsReference: 5%
setBrush 0xff7f7f
setPen 0x7f0000
path_moveTo path -1000000 10000
path_cubicTo path 100 100 100 150 150 400
path_closeSubpath path
begin_block drawing
drawPath ellipse
drawLine -1000000 200 200 200
drawLine 200 -1000000 200 200
drawLine 200 200 1000000 200
drawLine 200 200 200 1000000
drawLine -1000000 -1000000 200 200
drawPolygon [-1000000 100 100 -1000000 100 100]
drawRect 300 -500000 1000000 1000000
drawPath path
end_block
save
translate 20 20
setBrush #0x7f7f7fff
setPen #0x7f00007f
repeat_block drawing
translate 20 20
setRenderHint Antialiasing
setBrush #0x7f7fff7f
setPen #0x7f007f00
repeat_block drawing
restore
setPen 0x00007f 2
setRenderHint Antialiasing
drawLine 0 -200 200 200
setPen 0x007f00 10
drawLine 0 -200 200 0

View File

@ -0,0 +1,101 @@
# Version: 1
# CheckVsReference: 5%
#setRenderHint Antialiasing
setPen red 0 solidline
begin_block points
drawPoint 00 00
drawPoint 10 00
drawPoint 20 00
drawPoint 30 00
drawPoint 40 00
drawPoint 50 00
drawPoint 00 10
drawPoint 10 10
drawPoint 20 10
drawPoint 30 10
drawPoint 40 10
drawPoint 50 10
drawPoint 00 20
drawPoint 10 20
drawPoint 20 20
drawPoint 30 20
drawPoint 40 20
drawPoint 50 20
drawPoint 00 30
drawPoint 10 30
drawPoint 20 30
drawPoint 30 30
drawPoint 40 30
drawPoint 50 30
drawPoint 00 40
drawPoint 10 40
drawPoint 20 40
drawPoint 30 40
drawPoint 40 40
drawPoint 50 40
drawPoint 00 50
drawPoint 10 50
drawPoint 20 50
drawPoint 30 50
drawPoint 40 50
drawPoint 50 50
end_block points
translate 100 0
setPen blue 1 solidline
repeat_block points
translate 100 0
setPen green 5 solidline roundcap
repeat_block points
resetMatrix
translate 0 100
scale 3 3
setPen red 0 solidline roundcap
repeat_block points
translate 60 0
setPen blue 1 solidline roundcap
repeat_block points
translate 60 0
setPen green 5 solidline roundcap
repeat_block points
resetMatrix
translate 0 300
scale 3 3
setPen red 0 solidline flatcap
repeat_block points
translate 60 0
setPen blue 1 solidline flatcap
repeat_block points
translate 60 0
setPen green 5 solidline flatcap
repeat_block points
resetMatrix
translate 10 500
setPen black 1 solidline flatcap
drawPoint 0 0
setPen black 2 solidline flatcap
drawPoint 3 0
setPen black 3 solidline flatcap
drawPoint 8 0
setPen black 4 solidline flatcap
drawPoint 15 0
setPen black 5 solidline flatcap
drawPoint 24 0
setPen black 6 solidline flatcap
drawPoint 35 0
setPen black 7 solidline flatcap
drawPoint 48 0
setPen black 8 solidline flatcap
drawPoint 63 0

View File

@ -0,0 +1,86 @@
# Version: 1
# CheckVsReference: 5%
surface_begin 0 0 600 600
translate 0 50
setPen nopen
setBrush 0x7f000000
gradient_clearStops
gradient_appendStop 0 red
gradient_appendStop 0.25 orange
gradient_appendStop 0.5 yellow
gradient_appendStop 0.8 green
gradient_appendStop 1 cyan
gradient_setSpread PadSpread
gradient_setRadial 20 20 220 200
drawEllipse 10 10 80 80
drawEllipse 50 50 120 90
translate 100 0
brushTranslate 40 20
brushScale 0.25 0.25
setPen black
drawEllipse 10 10 80 80
setOpacity 0.5
setCompositionMode SourceIn
drawEllipse 50 50 120 90
setOpacity 1.0
setRenderHint Antialiasing
setCompositionMode Xor
brushTranslate 70 0
translate 100 0
drawEllipse 10 10 80 80
setPen nopen
drawEllipse 50 50 120 90
setOpacity 0.7
setBrush red
translate 100 0
setCompositionMode SourceOver
drawEllipse 10 10 80 80
setOpacity 0.6
setPen black 5.0
gradient_clearStops
gradient_appendStop 0 red
gradient_appendStop 0.25 orange
gradient_appendStop 0.5 yellow
gradient_appendStop 0.8 green
gradient_appendStop 1 cyan
gradient_setSpread PadSpread
gradient_setLinear 20 20 120 100
drawEllipse 50 50 120 90
translate 100 0
setOpacity 1.0
drawEllipse 10 10 80 80
setCompositionMode SourceIn
setOpacity 0.7
setPen black 3.0
gradient_clearStops
gradient_appendStop 0 red
gradient_appendStop 0.25 orange
gradient_appendStop 0.5 yellow
gradient_appendStop 0.8 green
gradient_appendStop 1 cyan
gradient_setSpread PadSpread
gradient_setLinear 50 50 80 90
drawEllipse 50 50 120 90
surface_end
drawText 200 220 "Testing Ellipse drawing with varios combinations"
drawText 200 240 "of features such as brushes, pens and composition modes"

View File

@ -0,0 +1,121 @@
setRenderHint Antialiasing false
# offscreen
translate 0 -200
begin_block rects
# int API
fillRect 10 10 20 20 green
fillRect 40 10 20 20
drawRect 70 10 20 20
# float API, int values
fillRectF 10.0 40.0 20.0 20.0 green
fillRectF 40.0 40.0 20.0 20.0
drawRect 70.0 40.0 20.0 20.0
# float API, float values
fillRectF 10.0 70.0 20.5 20.5 green
fillRectF 40.0 70.0 20.5 20.5
drawRect 70.0 70.0 20.5 20.5
# alignment, int api, color
fillRect 10 100 10 10 green
fillRect 20 100 10 10 green
fillRect 10 110 10 10 green
fillRect 20 110 10 10 green
# alignment, int api, brush
fillRect 40 100 10 10
fillRect 50 100 10 10
fillRect 40 110 10 10
fillRect 50 110 10 10
# alignment comparison
drawRect 70 100 10 10
drawRect 80 100 10 10
drawRect 70 110 10 10
drawRect 80 110 10 10
# alignment, float api, color
fillRectF 10.0 130.0 10.0 10.0 green
fillRectF 20.0 130.0 10.0 10.0 green
fillRectF 10.0 140.0 10.0 10.0 green
fillRectF 20.0 140.0 10.0 10.0 green
# alignment, float api, brush
fillRectF 40.0 130.0 10.0 10.0
fillRectF 50.0 130.0 10.0 10.0
fillRectF 40.0 140.0 10.0 10.0
fillRectF 50.0 140.0 10.0 10.0
# alignment comparison
drawRect 70.0 130.0 10.0 10.0
drawRect 80.0 130.0 10.0 10.0
drawRect 70.0 140.0 10.0 10.0
drawRect 80.0 140.0 10.0 10.0
end_block
begin_block row
repeat_block rects
save
translate 100.2 0.2
repeat_block rects
restore
save
translate 200.5 0.5
repeat_block rects
restore
save
translate 300.7 0.7
repeat_block rects
restore
end_block
# end of block defs
resetMatrix
setPen NoPen
setBrush green
repeat_block row
save
translate 500 50
scale 0.42 0.42
repeat_block row
restore
save
translate 0 160
scale 1.8 0.8
repeat_block row
restore
save
translate 650 320
rotate 80
repeat_block row
restore
save
setBrush green Dense2Pattern
translate 0 400
repeat_block row
restore
save
gradient_clearStops
gradient_appendStop 0 green
gradient_appendStop 1 blue
gradient_setCoordinateMode ObjectBoundingMode
gradient_setLinear 0.0 0.0 1.0 1.0
translate 0 600
repeat_block row
restore

View File

@ -0,0 +1,121 @@
setRenderHint Antialiasing true
# offscreen
translate 0 -200
begin_block rects
# int API
fillRect 10 10 20 20 green
fillRect 40 10 20 20
drawRect 70 10 20 20
# float API, int values
fillRectF 10.0 40.0 20.0 20.0 green
fillRectF 40.0 40.0 20.0 20.0
drawRect 70.0 40.0 20.0 20.0
# float API, float values
fillRectF 10.0 70.0 20.5 20.5 green
fillRectF 40.0 70.0 20.5 20.5
drawRect 70.0 70.0 20.5 20.5
# alignment, int api, color
fillRect 10 100 10 10 green
fillRect 20 100 10 10 green
fillRect 10 110 10 10 green
fillRect 20 110 10 10 green
# alignment, int api, brush
fillRect 40 100 10 10
fillRect 50 100 10 10
fillRect 40 110 10 10
fillRect 50 110 10 10
# alignment comparison
drawRect 70 100 10 10
drawRect 80 100 10 10
drawRect 70 110 10 10
drawRect 80 110 10 10
# alignment, float api, color
fillRectF 10.0 130.0 10.0 10.0 green
fillRectF 20.0 130.0 10.0 10.0 green
fillRectF 10.0 140.0 10.0 10.0 green
fillRectF 20.0 140.0 10.0 10.0 green
# alignment, float api, brush
fillRectF 40.0 130.0 10.0 10.0
fillRectF 50.0 130.0 10.0 10.0
fillRectF 40.0 140.0 10.0 10.0
fillRectF 50.0 140.0 10.0 10.0
# alignment comparison
drawRect 70.0 130.0 10.0 10.0
drawRect 80.0 130.0 10.0 10.0
drawRect 70.0 140.0 10.0 10.0
drawRect 80.0 140.0 10.0 10.0
end_block
begin_block row
repeat_block rects
save
translate 100.2 0.2
repeat_block rects
restore
save
translate 200.5 0.5
repeat_block rects
restore
save
translate 300.7 0.7
repeat_block rects
restore
end_block
# end of block defs
resetMatrix
setPen NoPen
setBrush green
repeat_block row
save
translate 500 50
scale 0.42 0.42
repeat_block row
restore
save
translate 0 160
scale 1.8 0.8
repeat_block row
restore
save
translate 650 320
rotate 80
repeat_block row
restore
save
setBrush green Dense2Pattern
translate 0 400
repeat_block row
restore
save
gradient_clearStops
gradient_appendStop 0 green
gradient_appendStop 1 blue
gradient_setCoordinateMode ObjectBoundingMode
gradient_setLinear 0.0 0.0 1.0 1.0
translate 0 600
repeat_block row
restore

View File

@ -0,0 +1,413 @@
# Version: 1
# CheckVsReference: 5%
setPen nopen
setBrush red
translate 0 4
begin_block polys
drawPolygon [0 0 2 -2 4 0]
drawPolygon [0 2 2 4 4 2]
end_block polys
translate 6 .5
repeat_block polys
translate 6.5 0
repeat_block polys
translate 6 .5
repeat_block polys
resetMatrix
translate 0 12
setPen black
drawPolygon [0 0 5 0 5 5 0 5]
translate 10 0
setPen nopen
drawPolygon [0 0 5 0 5 5 0 5]
translate 10 0
drawPolygon [0 0 5 0 5 5 0 5]
setBrush black
path_addRect stroke -.5 -.5 6 6
path_addRect stroke .5 .5 4 4
drawPath stroke
resetMatrix
translate 0 65
setPen red
drawText 0 0 "path"
drawText 40 0 "rect"
drawText 80 0 "img"
drawText 120 0 "pix"
drawText 160 0 "brush"
setPen nopen
translate 0 5
image_load border.png img
pixmap_load border.png pix
path_addRect rect 0 0 10 10
begin_block rects
drawPath rect
drawRect 40 0 10 10
drawImage img 80 0
drawPixmap pix 120 0
setBrush border.png
drawRect 160 0 10 10
setBrush black
end_block rects
setPen red
drawText 180 10 "0.0"
setPen nopen
translate 0.1 20
repeat_block rects
setPen red
drawText 180 10 "0.1"
setPen nopen
translate 0.1 20
repeat_block rects
setPen red
drawText 180 10 "0.2"
setPen nopen
translate 0.1 20
repeat_block rects
setPen red
drawText 180 10 "0.3"
setPen nopen
translate 0.1 20
repeat_block rects
setPen red
drawText 180 10 "0.4"
setPen nopen
translate 0.1 20
repeat_block rects
setPen red
drawText 180 10 "0.5"
setPen nopen
translate 0.1 20
repeat_block rects
setPen red
drawText 180 10 "0.6"
setPen nopen
translate 0.1 20
repeat_block rects
setPen red
drawText 180 10 "0.7"
setPen nopen
translate 0.1 20
repeat_block rects
setPen red
drawText 180 10 "0.8"
setPen nopen
translate 0.1 20
repeat_block rects
setPen red
drawText 180 10 "0.9"
setPen nopen
translate 0.1 20
repeat_block rects
setPen red
drawText 180 10 "1.0"
setPen nopen
resetMatrix
translate 0 400
setPen red
drawText 0 10 "path"
drawText 0 30 "rect"
drawText 0 50 "img"
drawText 0 70 "pix"
drawText 0 90 "brush"
drawText 0 110 "stroke"
drawText 0 130 "scale"
drawText 0 170 "rotate"
setPen nopen
translate 50 0
begin_block rects2
drawPath rect
drawRect 0 20 10 10
drawImage img 0 40
drawPixmap pix 0 60
save
setBrush border.png
drawRect 0 80 10 10
translate 0 100
setBrush red
setPen black
drawRect 0 0 10 10
setBrush border.png
setPen nopen
translate 0 20
scale 2 2
drawRect 0 0 10 10
translate 10 20
rotate 90
drawRect 0 0 10 10
restore
end_block rects2
setPen red
drawText -5 -10 "0.0"
setPen nopen
translate 40 0.1
repeat_block rects2
setPen red
drawText -5 -10 "0.1"
setPen nopen
translate 40 0.1
repeat_block rects2
setPen red
drawText -5 -10 "0.2"
setPen nopen
translate 40 0.1
repeat_block rects2
setPen red
drawText -5 -10 "0.3"
setPen nopen
translate 40 0.1
repeat_block rects2
setPen red
drawText -5 -10 "0.4"
setPen nopen
translate 40 0.1
repeat_block rects2
setPen red
drawText -5 -10 "0.5"
setPen nopen
translate 40 0.1
repeat_block rects2
setPen red
drawText -5 -10 "0.6"
setPen nopen
translate 40 0.1
repeat_block rects2
setPen red
drawText -5 -10 "0.7"
setPen nopen
translate 40 0.1
repeat_block rects2
setPen red
drawText -5 -10 "0.8"
setPen nopen
translate 40 0.1
repeat_block rects2
setPen red
drawText -5 -10 "0.9"
setPen nopen
translate 40 0.1
repeat_block rects2
setPen red
drawText -5 -10 "1.0"
setPen nopen
resetMatrix
translate 0 620
setPen red
drawText 0 10 "path"
setPen nopen
path_addRect rect2 -5 -5 10 10
translate 55 5
drawPath rect2
translate 20 0
rotate 10
drawPath rect2
rotate -10
translate 20 0
rotate 20
drawPath rect2
rotate -20
translate 20 0
rotate 30
drawPath rect2
rotate -30
translate 20 0
rotate 40
drawPath rect2
rotate -40
translate 20 0
rotate 50
drawPath rect2
rotate -50
translate 20 0
rotate 60
drawPath rect2
rotate -60
translate 20 0
rotate 70
drawPath rect2
rotate -70
translate 20 0
rotate 80
drawPath rect2
rotate -80
translate 20 0
rotate 90
drawPath rect2
rotate -90
resetMatrix
translate 0 600
setPen red
drawText 0 10 "rect"
setPen nopen
translate 55 5
drawRect -5 -5 10 10
translate 20 0
rotate 10
drawRect -5 -5 10 10
rotate -10
translate 20 0
rotate 20
drawRect -5 -5 10 10
rotate -20
translate 20 0
rotate 30
drawRect -5 -5 10 10
rotate -30
translate 20 0
rotate 40
drawRect -5 -5 10 10
rotate -40
translate 20 0
rotate 50
drawRect -5 -5 10 10
rotate -50
translate 20 0
rotate 60
drawRect -5 -5 10 10
rotate -60
translate 20 0
rotate 70
drawRect -5 -5 10 10
rotate -70
translate 20 0
rotate 80
drawRect -5 -5 10 10
rotate -80
translate 20 0
rotate 90
drawRect -5 -5 10 10
rotate -90
resetMatrix
path_addRect vertical 0.1 0.1 0.2 10
translate 0 320
drawPath vertical
translate 2.2 0
drawPath vertical
translate 2.2 0
drawPath vertical
translate 2.2 0
drawPath vertical
translate 2.2 0
drawPath vertical
resetMatrix
path_addRect horizontal 0.1 0.1 10 0.2
translate 0 340
drawPath horizontal
translate 0 2.2
drawPath horizontal
translate 0 2.2
drawPath horizontal
translate 0 2.2
drawPath horizontal
translate 0 2.2
drawPath horizontal
setOpacity 0.8
resetMatrix
translate 0.1 24.7
translate 400 0
#rotate 88.8
rotate 89.9
setBrush red
drawPolygon [0 0 300 0 0 173]
setBrush green
drawPolygon [0 173 300 0 300 173]
resetMatrix
translate 410 24
path_lineTo left 0 273
path_lineTo left 300 273
path_cubicTo left 50 273 250 0 0 0
path_cubicTo right 250 0 50 273 300 273
path_lineTo right 300 0
translate 310 0
rotate 90
setBrush red
drawPath left
setBrush green
drawPath right
resetMatrix
translate 0.1 680.1
setPen red
setOpacity 1
drawText 115 -20 "0.1"
drawText 0 0 "pixmap w/ opacity"
setOpacity 0.6
drawPixmap pix 120 -10
translate 0 20
setOpacity 1
drawText 0 0 "image w/ opacity"
setOpacity 0.6
drawImage img 120 -10
resetMatrix
path_lineTo fillpath 0 50
path_lineTo fillpath 50 50
path_moveTo fillpath 70 50
path_lineTo fillpath 70 100
path_lineTo fillpath 40 100
translate 500 400
drawPath fillpath
resetMatrix
path_moveTo vectorarne 50 10
path_lineTo vectorarne 50 50
path_lineTo vectorarne 100 50
path_addEllipse vectorarne 350 20 230 230
path_moveTo vectorarne 500 500
path_cubicTo vectorarne 20 20 250 30 50 150
translate 500 550
scale 0.4 0.4
setRenderHint antialiasing
drawPath vectorarne
resetMatrix
translate 200 730
setRenderHint antialiasing off
setOpacity 1
setPen red
drawText 0 0 "outline/fill consistency"
setPen red
setBrush green
translate 80 -30
drawPolygon [13.6965 -99.1837 -71.4767 13.823 32.4596 -33.1847]

View File

@ -0,0 +1,175 @@
drawGlyphRun -5 5 "Text that is drawn outside the bounds..."
translate 20 20
begin_block text_drawing
save
setFont "sansserif" 10 normal
drawGlyphRun 0 20 "sansserif 10pt, normal"
setFont "sansserif" 12 normal
drawGlyphRun 0 40 "sansserif 12pt, normal"
setFont "sansserif" 12 bold
drawGlyphRun 0 60 "sansserif 12pt, bold"
setFont "sansserif" 10 bold italic
drawGlyphRun 0 80 "sansserif 10pt, bold italic"
translate 0 100
setPen #7fff0000
setFont "sansserif" 10 normal
drawGlyphRun 0 20 "alpha sansserif 10pt, normal"
setFont "sansserif" 12 normal
drawGlyphRun 0 40 "alpha sansserif 12pt, normal"
setFont "sansserif" 12 bold
drawGlyphRun 0 60 "alpha sansserif 12pt, bold"
setFont "sansserif" 10 bold italic
drawGlyphRun 0 80 "alpha sansserif 10pt, bold italic"
translate 0 100
setPen black
save
scale 0.9 0.9
setFont "sansserif" 10 normal
drawGlyphRun 0 20 "scaled sansserif 10pt, normal"
setFont "sansserif" 12 normal
drawGlyphRun 0 40 "scaled sansserif 12pt, normal"
setFont "sansserif" 12 bold
drawGlyphRun 0 60 "scaled sansserif 12pt, bold"
setFont "sansserif" 10 bold italic
drawGlyphRun 0 80 "scaled sansserif 10pt, bold italic"
restore
translate 200 200
setPen black
save
scale -1 -1
setFont "sansserif" 10 normal
drawGlyphRun 0 20 "flipped sansserif 10pt, normal"
setFont "sansserif" 12 normal
drawGlyphRun 0 40 "flipped sansserif 12pt, normal"
setFont "sansserif" 12 bold
drawGlyphRun 0 60 "flipped sansserif 12pt, bold"
setFont "sansserif" 10 bold italic
drawGlyphRun 0 80 "flipped sansserif 10pt, bold italic"
restore
translate -200 20
setPen black
save
translate 200 90
rotate 185
setFont "sansserif" 10 normal
drawGlyphRun 0 20 "rotated sansserif 10pt, normal"
setFont "sansserif" 12 normal
drawGlyphRun 0 40 "rotated sansserif 12pt, normal"
setFont "sansserif" 12 bold
drawGlyphRun 0 60 "rotated sansserif 12pt, bold"
setFont "sansserif" 10 bold italic
drawGlyphRun 0 80 "rotated sansserif 10pt, bold italic"
restore
translate 0 100
gradient_appendStop 0 red
gradient_appendStop 0.5 #00ff00
gradient_appendStop 1 blue
gradient_setLinear 0 0 200 0
setPen brush
setFont "sansserif" 10 normal
drawGlyphRun 0 0 "gradient sansserif 10pt, normal"
setFont "sansserif" 12 normal
drawGlyphRun 0 20 "gradient sansserif 12pt, normal"
setFont "sansserif" 12 bold
drawGlyphRun 0 40 "gradient sansserif 12pt, bold"
setFont "sansserif" 10 bold italic
drawGlyphRun 0 60 "gradient sansserif 10pt, bold italic"
restore
end_block
translate 250 0
drawGlyphRun 25 640 "clipped to rectangle"
save
setPen #3f000000
setBrush nobrush
drawRect 20 0 100 620
setClipRect 20 0 100 620
setPen black
repeat_block text_drawing
restore
translate 150 0
drawGlyphRun 25 640 "clipped to path"
save
path_moveTo clip 20 0
path_cubicTo clip 0 200 40 400 20 400
path_lineTo clip 30 620
path_lineTo clip 30 0
path_lineTo clip 40 0
path_lineTo clip 40 620
path_lineTo clip 120 620
path_lineTo clip 120 0
path_lineTo clip 20 0
setPen #3f000000
setBrush nobrush
drawPath clip
setClipPath clip
setPen black
repeat_block text_drawing
restore
translate 150 0
save
setPen black
setFont "sansserif" 16 normal
drawGlyphRun 0 40 "e😃m😇o😍j😜i😸!"
restore
translate 0 55
save
setPen black
setFont "sansserif" 12 normal normal default underline
drawGlyphRun 0 20 "Underlined text drawing"
restore
translate 0 35
save
setPen black
setFont "sansserif" 12 normal normal default normal strikeout
drawGlyphRun 0 20 "Struck out text drawing"
restore
translate 0 35
save
setPen black
setFont "sansserif" 12 normal normal default normal normal overline
drawGlyphRun 0 20 "Overlined text drawing"
restore
translate 0 35
save
setPen black
setFont "sansserif" 12 normal normal default underline strikeout overline
drawGlyphRun 0 20 "All the effects text drawing"
restore

View File

@ -0,0 +1,44 @@
# Version: 1
# CheckVsReference: 5%
drawText 75 20 "Linear"
drawText 176 20 "Radial"
drawText 277 20 "Conical"
translate 0 30
drawText 0 50 "AA off"
drawText 0 151 "AA on"
setPen nopen
gradient_clearStops
gradient_appendStop 0 0x00000000
gradient_appendStop 0.001 red
gradient_appendStop 0.2 blue
gradient_appendStop 0.4 yellow
gradient_appendStop 0.6 cyan
gradient_appendStop 0.8 green
gradient_appendStop 0.999 red
gradient_appendStop 1 0x00000000
gradient_setSpread PadSpread
gradient_setCoordinateMode ObjectBoundingMode
begin_block row
save
gradient_setLinear 0.1 0.0 0.9 0.0
drawRect 50 0 100 100
gradient_setRadial 0.5 0.5 0.5 0.5 0.5
translate 101 0
drawRect 50 0 100 100
gradient_setConical 0.5 0.5 45
translate 101 0
drawRect 50 0 100 100
restore
end_block row
setRenderHint Antialiasing
translate 0 101
repeat_block row

View File

@ -0,0 +1,67 @@
# Version: 1
# CheckVsReference: 5%
gradient_clearStops
gradient_appendStop 0 black
gradient_appendStop 0.4 yellow
gradient_appendStop 1 gray
gradient_setSpread PadSpread
gradient_setCoordinateMode StretchToDeviceMode
# first run is dummy, make it offscreen
save
translate -500 -500
begin_block row
save
setPen nopen
drawRect 50 0 100 100
setPen brush 30
setBrush lightblue
drawRect 175 15 70 70
setFont "times" 110 1000
drawText 270 100 "X"
restore
end_block row
restore
drawText 160 20 "PLAIN"
drawText 560 20 "BRUSH XFORM"
translate 0 20
begin_block block
save
drawText 75 20 "Brush Fill"
drawText 176 20 "Pen Stroke"
drawText 277 20 "Text Stroke"
translate 0 30
drawText 0 50 "Linear"
drawText 0 160 "Radial"
drawText 0 270 "Conical"
gradient_setLinear 0.0 0.0 0.4 0.0
repeat_block row
translate 0 110
gradient_setRadial 0.04 0.08 0.3 0.3 0.05
repeat_block row
translate 0 110
gradient_setConical 0.25 0.1 45
repeat_block row
restore
end_block block
translate 400 0
brushRotate 30.0
brushScale 1.5 .5
brushTranslate 0 -80
repeat_block block

View File

@ -0,0 +1,67 @@
# Version: 1
# CheckVsReference: 5%
gradient_clearStops
gradient_appendStop 0 black
gradient_appendStop 0.4 yellow
gradient_appendStop 1 gray
gradient_setSpread PadSpread
gradient_setCoordinateMode LogicalMode
# first run is dummy, make it offscreen
save
translate -500 -500
begin_block row
save
setPen nopen
drawRect 50 0 100 100
setPen brush 30
setBrush lightblue
drawRect 175 15 70 70
setFont "times" 110 1000
drawText 270 100 "X"
restore
end_block row
restore
drawText 160 20 "PLAIN"
drawText 560 20 "BRUSH XFORM"
translate 0 20
begin_block block
save
drawText 75 20 "Brush Fill"
drawText 176 20 "Pen Stroke"
drawText 277 20 "Text Stroke"
translate 0 30
drawText 0 50 "Linear"
drawText 0 160 "Radial"
drawText 0 270 "Conical"
gradient_setLinear 0 0 400 0
repeat_block row
translate 0 110
gradient_setRadial 200 50 140 70 20
repeat_block row
translate 0 110
gradient_setConical 220 60 45
repeat_block row
restore
end_block block
translate 400 0
brushRotate 30.0
brushScale 1.5 .5
brushTranslate 0 -80
repeat_block block

View File

@ -0,0 +1,83 @@
# Version: 1
# CheckVsReference: 5%
gradient_clearStops
gradient_appendStop 0 black
gradient_appendStop 0.4 yellow
gradient_appendStop 1 gray
gradient_setSpread PadSpread
gradient_setCoordinateMode ObjectBoundingMode
# first run is dummy, make it offscreen
save
translate -500 -500
begin_block row
save
setPen nopen
drawRect 50 0 100 100
setPen brush 30
setBrush lightblue
translate 110 0
drawRect 65 15 70 70
translate 110 0
setFont "times" 110 1000
drawText 50 100 "X"
restore
end_block row
restore
drawText 160 20 "PLAIN"
drawText 560 20 "BRUSH XFORM"
translate 0 20
begin_block block
save
drawText 75 20 "Brush Fill"
drawText 176 20 "Pen Stroke"
drawText 277 20 "Text Stroke"
translate 0 30
drawText 0 50 "Linear"
drawText 0 160 "Radial"
drawText 0 270 "Conical"
gradient_setLinear 0.1 0.0 0.5 0.0
repeat_block row
translate 0 110
gradient_setRadial 0.3 0.2 0.5 0.4 0.5
repeat_block row
translate 0 110
gradient_setConical 0.5 0.7 45
repeat_block row
restore
end_block block
save
translate 400 0
brushRotate 30.0
brushScale 1.5 .5
repeat_block block
restore
drawText 80 400 "BRUSH XFORM, OBJECT BOUNDING MODE"
drawText 500 400 "BRUSH XFORM, OBJECT MODE"
translate 0 400
brushTranslate 0.5 0.5
brushRotate 180.0
brushTranslate -0.5 -0.5
repeat_block block
translate 400 0
gradient_setCoordinateMode ObjectMode
repeat_block block

View File

@ -0,0 +1,26 @@
translate 10 50
setFont "sansserif" 10
drawText 0 0 "Default hinting:"
setFont "times" 12 normal normal default
drawText 0 20 "The quick brown fox jumps over the lazy dog"
translate 0 50
setFont "sansserif" 10
drawText 0 0 "No hinting:"
setFont "times" 12 normal normal none
drawText 0 20 "The quick brown fox jumps over the lazy dog"
translate 0 50
setFont "sansserif" 10
drawText 0 0 "Vertical hinting:"
setFont "times" 12 normal normal vertical
drawText 0 20 "The quick brown fox jumps over the lazy dog"
translate 0 50
setFont "sansserif" 10
drawText 0 0 "Full hinting:"
setFont "times" 12 normal normal full
drawText 0 20 "The quick brown fox jumps over the lazy dog"
# Note: there is also the textlayout_draw command which might be interesting here.

View File

@ -0,0 +1,43 @@
setRenderHint Antialiasing true
setRenderHint SmoothPixmapTransform true
image_load sign.png img1
pixmap_load sign.png pix1
begin_block drawIt
save
drawImage img1 20 20 -1 -1
drawRect 17.5 17.5 85 85
setBrush img1
setPen NoPen
drawRect 20 120 120 120
brushRotate 45
drawRect 20 260 120 120
setBrush NoBrush
drawTiledPixmap pix1 20 400 120 120
restore
end_block
save
translate 150 0
rotate -5
repeat_block drawIt
restore
image_setDevicePixelRatio img1 2.0
pixmap_setDevicePixelRatio pix1 2.0
translate 400 0
repeat_block drawIt
save
translate 150 0
rotate -5
repeat_block drawIt
restore

View File

@ -0,0 +1,81 @@
# Version: 1
# CheckVsReference: 5%
image_load dome_argb32.png the_pixmap
image_convertToFormat the_pixmap the_pixmap ARGB32_Premultiplied
begin_block draw_stuff
save
image_convertToFormat the_pixmap converted ARGB32_Premultiplied
drawImage converted 0 0
translate 0 110
image_convertToFormat the_pixmap converted ARGB32
drawImage converted 0 0
translate 0 110
image_convertToFormat the_pixmap converted RGB32
drawImage converted 0 0
translate 0 110
image_convertToFormat the_pixmap converted Indexed8
drawImage converted 0 0
translate 0 110
image_convertToFormat the_pixmap converted MonoLSB
drawImage converted 0 0
translate 0 110
image_convertToFormat the_pixmap converted Mono
drawImage converted 0 0
translate 0 110
restore
end_block
image_load dome_argb32.png the_pixmap
translate 110 0
repeat_block draw_stuff
image_load dome_rgb32.png the_pixmap
translate 110 0
repeat_block draw_stuff
image_load dome_indexed.png the_pixmap
translate 110 0
repeat_block draw_stuff
image_load dome_mono.png the_pixmap
translate 110 0
repeat_block draw_stuff
image_load dome_mono_palette.png the_pixmap
translate 110 0
repeat_block draw_stuff
image_load dome_indexed_mask.png the_pixmap
translate 110 0
repeat_block draw_stuff
# helpful texts
resetMatrix
setPen black
drawText 10 670 "ARGB32_PM"
drawText 120 670 "ARGB32"
drawText 230 670 "RGB32"
drawText 340 670 "Indexed"
drawText 450 670 "Mono"
drawText 560 670 "Mono w/lut"
drawText 670 670 "Indexed w/mask"
drawText 770 50 "ARGB32_PM"
drawText 770 160 "ARGB32"
drawText 770 270 "RGB32"
drawText 770 380 "Indexed"
drawText 770 490 "MonoLSB"
drawText 770 600 "Mono"

View File

@ -0,0 +1,106 @@
# Version: 1
# CheckVsReference: 5%
setRenderHint Antialiasing
setPen #00ff00
image_load dome_argb32.png the_image
begin_block draw_stuff
save
# standard draw
drawImage the_image 0 0
# sub recting
translate 120 0
drawImage the_image 0 0 40 40 0 0 40 40
drawImage the_image 60 0 40 40 60 0 40 40
drawImage the_image 0 60 40 40 0 60 40 40
drawImage the_image 60 60 40 40 60 60 40 40
drawImage the_image 0 40 40 20 0 40 40 20
drawImage the_image 60 40 40 20 60 40 40 20
drawImage the_image 40 0 20 100 40 0 20 100
# subrecting w/scale
translate 120 0
drawImage the_image 0 0 50 50 0 0 25 25
drawImage the_image 50 0 50 50 25 0 25 25
drawImage the_image 0 50 50 50 0 25 25 25
drawImage the_image 50 50 50 50 25 25 25 25
# subrecting w/scale & smooth xform
translate 120 0
setRenderHint SmoothPixmapTransformation
drawImage the_image 0 0 50 50 0 0 25 25
drawImage the_image 50 0 50 50 25 0 25 25
drawImage the_image 0 50 50 50 0 25 25 25
drawImage the_image 50 50 50 50 25 25 25 25
# Rotation w/o smooth xform
translate 120 0
save
setRenderHint SmoothPixmapTransform off
rotate 10
drawImage the_image 0 0
restore
# Rotation w smooth xform
translate 120 0
save
setRenderHint SmoothPixmapTransform
rotate 10
drawImage the_image 0 0
restore
restore
end_block
translate 0 120
image_load dome_rgb32.png the_image
repeat_block draw_stuff
translate 0 120
image_load dome_indexed.png the_image
repeat_block draw_stuff
translate 0 120
image_load dome_indexed_mask.png the_image
repeat_block draw_stuff
translate 0 120
image_load dome_mono.png the_image
repeat_block draw_stuff
resetMatrix
translate 700 60
setPen black
drawText 0 0 "32 bit w/alpha"
translate 0 120
drawText 0 0 "32 bit w/o alpha"
translate 0 120
drawText 0 0 "8 bit indexed"
translate 0 120
drawText 0 0 "8 bit indexed w/mask"
translate 0 120
drawText 0 0 "1 bit"
resetMatrix
translate 0 600
drawText 0 0 "normal"
translate 120 0
drawText 0 0 "subrect"
translate 120 0
drawText 0 0 "subrect scale"
translate 120 0
drawText 0 0 "subrect scale smooth"
translate 120 0
drawText 0 0 "xform"
translate 120 0
drawText 0 0 "smooth xform"
translate 120 0

View File

@ -0,0 +1,145 @@
# Version: 1
# CheckVsReference: 5%
image_load dome_argb32.png the_image
begin_block draw_stuff
save
# standard draw
drawImage the_image 0 0
# flip x
translate 220 0
scale -1 1
drawImage the_image 0 0
scale -1 1
# flip y
translate 20 100
scale 1 -1
drawImage the_image 0 0
scale 1 -1
# flip x and y
translate 220 0
scale -1 -1
drawImage the_image 0 0
scale -1 -1
# flip y and scale
translate 20 10
save
scale 1 -1.1
drawImage the_image 0 0
restore
# flip y and scale
translate 220 -110
save
scale -1.1 0.9
drawImage the_image 0 0
restore
restore
end_block
setRenderHint Antialiasing
resetMatrix
translate 0 120
repeat_block draw_stuff
resetMatrix
translate 720 60
setPen black
drawText 0 0 "aliased"
translate 0 120
drawText 0 0 "antialiased"
resetMatrix
translate 0 260
drawText 0 0 "normal"
translate 120 0
drawText 0 0 "flip x"
translate 120 0
drawText 0 0 "flip y"
translate 120 0
drawText 0 0 "flip x and y"
translate 120 0
drawText 0 0 "flip y and scale"
translate 120 0
drawText 0 0 "flip x and scale"
translate 120 0
setRenderHint SmoothPixmapTransform
resetMatrix
translate 20 300
drawImage border.png 0 0 100 100 1 1 8 8
drawText 0 -5 "subrect color bleeding"
translate 0 120
drawImage border.png 0 0 100 100 0 0 10 10
image_load sign.png the_image
resetMatrix
drawText 240 300 "drawImage() with varying sx/sy offsets"
translate 0 10
drawRect 240 300 50 50
drawImage the_image 240 300 50 50 20 0 80 80
drawRect 300 300 50 50
drawImage the_image 300 300 50 50 -20 0 80 80
drawRect 240 370 50 50
drawImage the_image 240 370 50 50 0 20 80 80
drawRect 300 370 50 50
drawImage the_image 300 370 50 50 0 -20 80 80
pixmap_load sign.png the_pixmap
translate 220 0
translate 0 -10
drawText 240 300 "drawPixmap() with varying sx/sy offsets"
translate 0 10
drawRect 240 300 50 50
drawPixmap the_pixmap 240 300 50 50 20 0 80 80
drawRect 300 300 50 50
drawPixmap the_pixmap 300 300 50 50 -20 0 80 80
drawRect 240 370 50 50
drawPixmap the_pixmap 240 370 50 50 0 20 80 80
drawRect 300 370 50 50
drawPixmap the_pixmap 300 370 50 50 0 -20 80 80
resetMatrix
translate 0 170
drawText 240 300 "drawImage() with varying sx/sy offsets"
translate 0 10
drawRect 240 300 50 50
drawImage the_image 240 300 50 50 50 0 50 50
drawRect 300 300 50 50
drawImage the_image 300 300 50 50 -20 0 50 50
drawRect 240 370 50 50
drawImage the_image 240 370 50 50 0 50 50 50
drawRect 300 370 50 50
drawImage the_image 300 370 50 50 0 -20 50 50
resetMatrix
translate 220 170
drawText 240 300 "drawPixmap() with varying sx/sy offsets"
translate 0 10
drawRect 240 300 50 50
drawPixmap the_pixmap 240 300 50 50 50 0 50 50
drawRect 300 300 50 50
drawPixmap the_pixmap 300 300 50 50 -20 0 50 50
drawRect 240 370 50 50
drawPixmap the_pixmap 240 370 50 50 0 50 50 50
drawRect 300 370 50 50
drawPixmap the_pixmap 300 370 50 50 0 -20 50 50
resetMatrix
drawText 10 620 "drawImage/Pixmap() with negative x/y and sx/sy"
setPen red
translate 20 640
drawImage the_image -10 -10 -1 -1 -10 -10 0 0
drawRect 0 0 80 80
translate 100 0
drawPixmap the_pixmap -10 -10 -1 -1 -10 -10 0 0
drawRect 0 0 80 80

View File

@ -0,0 +1,63 @@
# Version: 1
# CheckVsReference: 5%
setRenderHint Antialiasing
path_moveTo p 20 20
path_cubicTo p 100 20 100 180 180 100
path_lineTo p 20 180
path_lineTo p 180 20
setPen black 20 solidline roundcap roundjoin
drawPath p
setPen red
drawPath p
translate 200 0
setPen black 20 solidline roundcap miterjoin
drawPath p
setPen red
drawPath p
translate 200 0
setPen black 20 solidline roundcap beveljoin
drawPath p
setPen red
drawPath p
translate -400 200
setPen black 20 solidline squarecap roundjoin
drawPath p
setPen red
drawPath p
translate 200 0
setPen black 20 solidline squarecap miterjoin
drawPath p
setPen red
drawPath p
translate 200 0
setPen black 20 solidline squarecap beveljoin
drawPath p
setPen red
drawPath p
translate -400 200
setPen black 20 solidline flatcap roundjoin
drawPath p
setPen red
drawPath p
translate 200 0
setPen black 20 solidline flatcap miterjoin
drawPath p
setPen red
drawPath p
translate 200 0
setPen black 20 solidline flatcap beveljoin
drawPath p
setPen red
drawPath p

View File

@ -0,0 +1,68 @@
# Version: 1
# CheckVsReference: 1% (0 0 600 650)
setRenderHint Antialiasing
path_moveTo p 40 70
path_lineTo p 20 70
path_cubicTo p 20 70 40 20 80 80
path_moveTo p 20 120
path_cubicTo p 50 60 80 110 80 110
path_lineTo p 60 110
scale 2 2
setPen black 10 solidline roundcap roundjoin
drawPath p
setPen red 0
drawPath p
translate 100 0
setPen black 10 solidline roundcap miterjoin
drawPath p
setPen red 0
drawPath p
translate 100 0
setPen black 10 solidline roundcap beveljoin
drawPath p
setPen red 0
drawPath p
translate -200 100
setPen black 10 solidline squarecap roundjoin
drawPath p
setPen red 0
drawPath p
translate 100 0
setPen black 10 solidline squarecap miterjoin
drawPath p
setPen red 0
drawPath p
translate 100 0
setPen black 10 solidline squarecap beveljoin
drawPath p
setPen red 0
drawPath p
translate -200 100
setPen black 10 solidline flatcap roundjoin
drawPath p
setPen red 0
drawPath p
translate 100 0
setPen black 10 solidline flatcap miterjoin
drawPath p
setPen red 0
drawPath p
translate 100 0
setPen black 10 solidline flatcap beveljoin
drawPath p
setPen red 0
drawPath p

View File

@ -0,0 +1,144 @@
# Version: 1
# CheckVsReference: 2% (0 0 600 750)
path_addRect path 400 0 80 80
path_addEllipse path 440 40 60 60
setRenderHint Antialiasing
setPen black
begin_block gradients
gradient_clearStops
gradient_appendStop 0 red
gradient_appendStop 0.25 orange
gradient_appendStop 0.5 yellow
gradient_appendStop 0.8 green
gradient_appendStop 1 cyan
gradient_setSpread PadSpread
gradient_setLinear 20 20 70 70
drawRect 0 0 100 100
gradient_setSpread ReflectSpread
gradient_setLinear 120 20 170 70
drawEllipse 100 0 100 100
gradient_setSpread RepeatSpread
gradient_setLinear 220 20 270 70
drawRoundRect 200 0 100 100
gradient_clearStops
gradient_appendStop 0 3f7f7fff
gradient_appendStop 0.5 dfdfffff
gradient_appendStop 1 7f00007f
gradient_setSpread PadSpread
gradient_setLinear 320 20 340 40
drawPolygon [300 0 390 0 350 99]
gradient_setSpread ReflectSpread
gradient_setLinear 420 20 440 40
drawPath path
gradient_setSpread RepeatSpread
gradient_setLinear 520 20 540 40
drawPie 500 0 100 100 720 4320
end_block
translate 0 100
scale 1 2
repeat_block gradients
resetMatrix
translate 0 300
brushTranslate 30 0
brushScale 0.9 0.9
brushRotate 20
repeat_block gradients
# Vertical gradient tests
resetMatrix
setBrush noBrush
translate 0 400
begin_block vertical_gradients
gradient_clearStops
gradient_appendStop 0 red
gradient_appendStop 0.25 orange
gradient_appendStop 0.5 yellow
gradient_appendStop 0.8 green
gradient_appendStop 1 cyan
gradient_setSpread PadSpread
gradient_setLinear 20 20 20 70
drawRect 0 0 100 100
gradient_setSpread ReflectSpread
gradient_setLinear 120 20 120 70
drawEllipse 100 0 100 100
gradient_setSpread RepeatSpread
gradient_setLinear 220 20 220 70
drawRoundRect 200 0 100 100
gradient_clearStops
gradient_appendStop 0 3f7f7fff
gradient_appendStop 0.5 dfdfffff
gradient_appendStop 1 7f00007f
gradient_setSpread PadSpread
gradient_setLinear 320 20 320 40
drawPolygon [300 0 390 0 350 99]
gradient_setSpread ReflectSpread
gradient_setLinear 420 20 420 40
drawPath path
gradient_setSpread RepeatSpread
gradient_setLinear 520 20 520 40
drawPie 500 0 100 100 720 4320
end_block
translate 0 100
scale 1 1.5
repeat_block vertical_gradients
resetMatrix
translate 0 650
brushTranslate 30 0
brushScale 0.9 0.9
brushRotate 20
repeat_block vertical_gradients
# Some helpful info perhaps?
resetMatrix
setPen black
# gradient line indicators
drawLine 20 20 70 70
drawLine 120 20 170 70
drawLine 220 20 270 70
drawLine 320 20 340 40
drawLine 420 20 440 40
drawLine 520 20 540 40
drawLine 20 140 70 240
drawLine 120 140 170 240
drawLine 220 140 270 240
drawLine 320 140 340 180
drawLine 420 140 440 180
drawLine 520 140 540 180
drawText 610 50 "No XForm"
drawText 610 200 "scale 1x2"
drawText 610 350 "brush transform"
drawText 610 450 "vertical brush"
drawText 610 570 "vertical brush scale 1x1.5"
drawText 610 700 "vertical brush transform"
drawText 10 780 "Pad"
drawText 110 780 "Reflect"
drawText 210 780 "Repeat"
drawText 310 780 "Pad w/alpha"
drawText 410 780 "Reflect w/alpha"
drawText 510 780 "Repeat w/alpha"

View File

@ -0,0 +1,62 @@
# Version: 1
setRenderHint Antialiasing
setPen #00ff00
translate 10 10
# standard draw
begin_block gradient
gradient_clearStops
gradient_appendStop 0 red
gradient_appendStop 0.25 orange
gradient_appendStop 0.5 yellow
gradient_appendStop 0.8 green
gradient_appendStop 1 cyan
gradient_setSpread PadSpread
gradient_setLinear 10 10 290 290
drawRect 0 0 300 300
end_block gradient
# Rotation w/o smooth xform
save
translate 350 0
save
setRenderHint SmoothPixmapTransform on
mapQuadToQuad 0 0 0 300 300 300 300 0 0 50 0 200 300 300 300 0
repeat_block gradient
restore
restore
translate 0 320
save
setRenderHint SmoothPixmapTransform on
mapQuadToQuad 0 0 0 300 300 300 300 0 0 0 100 300 200 300 300 0
repeat_block gradient
restore
save
translate 350 0
save
setRenderHint SmoothPixmapTransform on
mapQuadToQuad 0 0 0 300 300 300 300 0 0 0 0 300 300 250 300 50
repeat_block gradient
restore
restore
resetMatrix
setPen black
translate 125 20
drawText 0 0 "No transform"
translate 350 0
drawText 0 0 "Left Tilted"
resetMatrix
translate 125 350
drawText 0 0 "Bottom Tilted"
translate 350 0
drawText 0 0 "Right Tilted"
translate 120 0

View File

@ -0,0 +1,66 @@
# Version: 2
# CheckVsReference: 2% (0 0 500 400)
setRenderHint Antialiasing
setPen black
begin_block gradients
gradient_clearStops
gradient_appendStop 0 red
gradient_appendStop 0.25 orange
gradient_appendStop 0.5 yellow
gradient_appendStop 0.8 green
gradient_appendStop 1 cyan
gradient_setSpread PadSpread
gradient_setCoordinateMode ObjectBoundingMode
gradient_setLinear 0.2 0.2 0.7 0.7
drawRect 0 0 100 100
gradient_setSpread ReflectSpread
gradient_setLinear 0.2 0.2 0.7 0.7
drawEllipse 100 0 100 100
gradient_setSpread RepeatSpread
gradient_setLinear 0.2 0.2 0.7 0.7
drawRoundRect 200 0 100 100
gradient_clearStops
gradient_appendStop 0 3f7f7fff
gradient_appendStop 0.5 dfdfffff
gradient_appendStop 1 7f00007f
gradient_setSpread PadSpread
gradient_setLinear 0.2 0.2 0.8 0.4
drawPolygon [300 0 400 0 350 100]
gradient_setSpread RepeatSpread
gradient_setLinear 0.2 0.2 0.4 0.4
drawPie 400 0 100 100 0 4320
end_block
translate 0 100
scale 1 2
repeat_block gradients
resetMatrix
translate 0 300
brushTranslate 30 0
brushScale 0.9 0.9
brushRotate 20
repeat_block gradients
# Some helpful info perhaps?
resetMatrix
setPen black
drawText 510 50 "No XForm"
drawText 510 200 "scale 1x2"
drawText 510 350 "brush transform"
drawText 10 450 "Pad"
drawText 110 450 "Reflect"
drawText 210 450 "Repeat"
drawText 310 450 "Pad w/alpha"
drawText 410 450 "Repeat w/alpha"

View File

@ -0,0 +1,72 @@
# Version: 1
begin_block draw
setPen red
drawPolygon [1.1 1 3.3 30.6 23.1 39.2 38.9 6.5]
setPen black
drawLine 1.1 1 3.3 30.6
drawLine 3.3 30.6 23.1 39.2
drawLine 23.1 39.2 38.9 6.5
drawLine 38.9 6.5 1.1 1
end_block draw
drawText 0 60 "0.0 aligned"
translate 0.1 80.1
repeat_block draw
drawText 0 60 "0.1 aligned"
translate 0.1 80.1
repeat_block draw
drawText 0 60 "0.2 aligned"
translate 0.1 80.1
repeat_block draw
drawText 0 60 "0.3 aligned"
translate 0.1 80.1
repeat_block draw
drawText 0 60 "0.4 aligned"
translate 0.1 80.1
repeat_block draw
drawText 0 60 "0.5 aligned"
translate 0.1 80.1
repeat_block draw
drawText 0 60 "0.6 aligned"
translate 0.1 80.1
repeat_block draw
drawText 0 60 "0.7 aligned"
translate 0.1 80.1
repeat_block draw
drawText 0 60 "0.8 aligned"
translate 0.1 80.1
repeat_block draw
drawText 0 60 "0.9 aligned"
resetMatrix
translate 100 0
setPen black
drawText 0 20 "Line and text, 0.0 aligned"
drawLine 0 21 160 21
translate 0 40.1
drawText 0 20 "Line and text, 0.1 aligned"
drawLine 0 21 160 21
translate 0 40.1
drawText 0 20 "Line and text, 0.2 aligned"
drawLine 0 21 160 21
translate 0 40.1
drawText 0 20 "Line and text, 0.3 aligned"
drawLine 0 21 160 21
translate 0 40.1
drawText 0 20 "Line and text, 0.4 aligned"
drawLine 0 21 160 21
translate 0 40.1
drawText 0 20 "Line and text, 0.5 aligned"
drawLine 0 21 160 21
translate 0 40.1
drawText 0 20 "Line and text, 0.6 aligned"
drawLine 0 21 160 21
translate 0 40.1
drawText 0 20 "Line and text, 0.7 aligned"
drawLine 0 21 160 21
translate 0 40.1
drawText 0 20 "Line and text, 0.8 aligned"
drawLine 0 21 160 21
translate 0 40.1
drawText 0 20 "Line and text, 0.9 aligned"
drawLine 0 21 160 21

View File

@ -0,0 +1,132 @@
# Version: 1
translate 10 10
setPen 0xffff0000 0 solidline squarecap
translate 50 50
begin_block draw_lines
save
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
restore
end_block
setPen 0xffff0000 0 dotline squarecap
translate 100 0
repeat_block draw_lines
setPen 0xffff0000 0 dashdotline squarecap
translate 100 0
repeat_block draw_lines
setPen 0xffff0000 0 dashdotdotline squarecap
translate 100 0
repeat_block draw_lines
setPen 0xffff0000 0 dashline squarecap
translate 100 0
repeat_block draw_lines
path_moveTo mypath 10 10
path_lineTo mypath 87 10
path_moveTo mypath 10 30
path_lineTo mypath 87 30
path_moveTo mypath 10 50
path_lineTo mypath 87 50
resetMatrix
translate 0 150
begin_block distinctLines
setPen black 0 SolidLine SquareCap
pen_setDashPattern [ 3 3 ]
drawPath mypath
translate 100 0
setPen black 5 SolidLine SquareCap
pen_setDashPattern [ 3 3 ]
drawPath mypath
translate 100 0
setPen black 0 SolidLine RoundCap
pen_setDashPattern [ 3 3 ]
drawPath mypath
translate 100 0
setPen black 5 SolidLine RoundCap
pen_setDashPattern [ 3 3 ]
drawPath mypath
end_block distinctLines
resetMatrix
translate 0 220
setRenderHint Antialiasing true
repeat_block distinctLines

View File

@ -0,0 +1,196 @@
# Version: 1
# CheckVsReference: 5% (0 0 800 800)
translate -30 10
setPen 0xffff0000 0 dashline squarecap
pen_setDashPattern [10 5]
save
translate 100 100
begin_block lines
drawLine 100 100 200 100
drawLine 100 100 200 200
drawLine 100 100 100 200
end_block
setPen 0xffff0000 2 dashline squarecap
translate 150 0
repeat_block lines
restore
save
save
begin_block horizontal
drawLine 0 0 50 0
drawLine 3 10 53 10
drawLine 6 20 56 20
drawLine 9 30 59 30
translate 0 50
drawLine 0 0 50 5
drawLine 3 10 53 15
drawLine 6 20 56 25
drawLine 9 30 59 35
translate 0 50
drawLine 0 0 50 -5
drawLine 3 10 53 5
drawLine 6 20 56 15
drawLine 9 30 59 25
end_block
restore
save
translate 80 0
repeat_block horizontal
restore
save
translate 800 0
repeat_block horizontal
restore
translate 180 -40
save
begin_block vertical
drawLine 0 0 0 50
drawLine 10 3 10 53
drawLine 20 6 20 56
drawLine 30 9 30 59
translate 50 0
drawLine 0 0 5 50
drawLine 10 3 15 53
drawLine 20 6 25 56
drawLine 30 9 35 59
translate 50 0
drawLine 0 0 -5 50
drawLine 10 3 5 53
drawLine 20 6 15 56
drawLine 30 9 25 59
end_block
restore
save
translate 0 80
repeat_block vertical
restore
translate 0 800
repeat_block vertical
restore
translate 0 200
setPen 0xffff0000 2 dashline squarecap
save
repeat_block horizontal
restore
save
translate 80 0
repeat_block horizontal
restore
save
translate 780 0
repeat_block horizontal
restore
translate 360 -240
save
repeat_block vertical
restore
save
translate 0 80
repeat_block vertical
restore
translate 0 780
repeat_block vertical
resetMatrix
translate 20 380
setPen 0xffff00ff 5 dashdotline flatcap
begin_block offset
pen_setDashPattern [1 1 4 1 1 4]
pen_setDashOffset -4
drawLine 0 0 300 0
translate 0 8
pen_setDashOffset -2
drawLine 0 0 300 0
translate 0 8
pen_setDashOffset 0
drawLine 0 0 300 0
translate 0 8
pen_setDashOffset 2
drawLine 0 0 300 0
translate 0 8
pen_setDashOffset 4
drawLine 0 0 300 0
translate 0 8
pen_setDashOffset 6
drawLine 0 0 300 0
translate 0 8
pen_setDashOffset 8
drawLine 0 0 300 0
translate 0 8
pen_setDashOffset 10
drawLine 0 0 300 0
translate 0 8
pen_setDashOffset 12
drawLine 0 0 300 0
translate 0 8
pen_setDashOffset 14
drawLine 0 0 300 0
translate 0 8
pen_setDashOffset 16
drawLine 0 0 300 0
end_block offset
resetMatrix
translate 420 380
setPen 0xffff00ff 5 dashdotline roundcap
repeat_block offset
resetMatrix
setPen black 3 dashdotline
pen_setCosmetic true
translate 0 -150
drawLine 500 160 500 410
resetMatrix
translate 300 480
setPen blue 0
begin_block clip_lines
pen_setDashPattern [ 20 4 5 4 1 4 ]
pen_setDashOffset 26.0
drawLines [0 0 1000000 10 1000000 10 -1000000 20 -1000000 20 0 30]
end_block clip_lines
translate 0 45
setPen blue 5
repeat_block clip_lines
translate 0 45
setPen blue 5 SolidLine RoundCap
repeat_block clip_lines
translate 0 45
setPen green 0
begin_block clip_poly
pen_setDashPattern [ 20 4 5 4 1 4 ]
pen_setDashOffset 26.0
drawPolyline [0 0 1000000 10 -1000000 20 0 30]
end_block clip_poly
translate 0 45
setPen green 5
repeat_block clip_poly
translate 0 45
setPen green 5 SolidLine RoundCap
repeat_block clip_poly

View File

@ -0,0 +1,5 @@
# Version: 1
# CheckVsReference: 1% (0 0 800 800)
setRenderHint LineAntialiasing
import "linedashes2.qps"

View File

@ -0,0 +1,433 @@
# Version: 1
# CheckVsReference: 5% (0 0 310 425)
translate 10 10
begin_block draw_lines
save
translate 50 50
save
setPen 0x7fff0000
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
restore
# and then draw the lines the other direction
save
setPen 0x7f0000ff
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
rotate 10
drawLine 50 0 10 0
restore
# and now with a clip
save
setClipRect -30 -30 60 60
setPen 0x7f00ff00
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
rotate 10
drawLine 10 0 50 0
restore
restore
end_block
save
translate 100 0
scale 2 2
repeat_block draw_lines
restore
translate 0 10
save
translate 0 200
setRenderHint Antialiasing
repeat_block draw_lines
restore
save
translate 100 200
scale 2 2
setRenderHint Antialiasing
repeat_block draw_lines
restore
setPen 0x000000 8
translate 350 240
drawText 0 0 "Steep slopes:"
translate 0 10
drawLine 0 0 -8 400
translate 20 0
drawLine 0 0 -7 400
translate 20 0
drawLine 0 0 -6 400
translate 20 0
drawLine 0 0 -5 400
translate 20 0
drawLine 0 0 -4 400
translate 20 0
drawLine 0 0 -3 400
translate 20 0
drawLine 0 0 -2 400
translate 20 0
drawLine 0 0 -1 400
translate 20 0
drawLine 0 0 0 400
translate 20 0
drawLine 0 0 1 400
translate 20 0
drawLine 0 0 2 400
translate 20 0
drawLine 0 0 3 400
translate 20 0
drawLine 0 0 4 400
translate 20 0
drawLine 0 0 5 400
translate 20 0
drawLine 0 0 6 400
translate 20 0
drawLine 0 0 7 400
translate 20 0
drawLine 0 0 8 400
resetMatrix
translate 20 450
drawText 0 0 "Zero length lines:"
translate 0 20
drawText 100 10 "Square cap"
save
begin_block points
setPen 0x000000 1 solidline squarecap
drawLine 0 0 0 0
setPen 0x000000 2 solidline squarecap
drawLine 8 0 8 0
setPen 0x000000 3 solidline squarecap
drawLine 16 0 16 0
setPen 0x000000 4 solidline squarecap
drawLine 24 0 24 0
setPen 0x000000 5 solidline squarecap
drawLine 32 0 32 0
setPen 0x000000 6 solidline squarecap
drawLine 40 0 40 0
setPen 0x000000 7 solidline squarecap
drawLine 48 0 48 0
setPen 0x000000 8 solidline squarecap
drawLine 57 0 57 0
setPen 0x000000 9 solidline squarecap
drawLine 67 0 67 0
setPen 0x000000 10 solidline squarecap
drawLine 78 0 78 0
end_block points
restore
translate 0 12
setRenderHint Antialiasing off
repeat_block points
setRenderHint Antialiasing
translate 0 20
drawText 100 10 "Round cap"
save
begin_block points2
setPen 0x000000 1 solidline roundcap
drawLine 0 0 0 0
setPen 0x000000 2 solidline roundcap
drawLine 8 0 8 0
setPen 0x000000 3 solidline roundcap
drawLine 16 0 16 0
setPen 0x000000 4 solidline roundcap
drawLine 24 0 24 0
setPen 0x000000 5 solidline roundcap
drawLine 32 0 32 0
setPen 0x000000 6 solidline roundcap
drawLine 40 0 40 0
setPen 0x000000 7 solidline roundcap
drawLine 48 0 48 0
setPen 0x000000 8 solidline roundcap
drawLine 57 0 57 0
setPen 0x000000 9 solidline roundcap
drawLine 67 0 67 0
setPen 0x000000 10 solidline roundcap
drawLine 78 0 78 0
end_block points2
restore
translate 0 12
setRenderHint Antialiasing off
repeat_block points2
setRenderHint Antialiasing
translate 0 20
drawText 100 10 "Flat cap"
save
begin_block points3
setPen 0x000000 1 solidline flatcap
drawLine 0 0 0 0
setPen 0x000000 2 solidline flatcap
drawLine 8 0 8 0
setPen 0x000000 3 solidline flatcap
drawLine 16 0 16 0
setPen 0x000000 4 solidline flatcap
drawLine 24 0 24 0
setPen 0x000000 5 solidline flatcap
drawLine 32 0 32 0
setPen 0x000000 6 solidline flatcap
drawLine 40 0 40 0
setPen 0x000000 7 solidline flatcap
drawLine 48 0 48 0
setPen 0x000000 8 solidline flatcap
drawLine 57 0 57 0
setPen 0x000000 9 solidline flatcap
drawLine 67 0 67 0
setPen 0x000000 10 solidline flatcap
drawLine 78 0 78 0
end_block points3
restore
translate 0 12
setRenderHint Antialiasing off
repeat_block points3
resetMatrix
translate -220 667.226
drawText 230 -80 "Task 194266 (should see only one line):"
setPen black
drawRect 230.5 -70.5 122 12
setRenderHint Antialiasing
setPen red
drawLine 236.842105263 -63.775117299 247.368421053 -63.775437504
setRenderHint Antialiasing off
resetMatrix
translate 10 640
setPen black
drawText 0 -10 "Task 207147 (should see two lines):"
drawRect 0.5 0.5 64 64
setRenderHint Antialiasing
setPen red
drawLine 4.5 4.5 4.5001 60.5
drawLine 4.5 4.5 60.5 4.5001
setRenderHint Antialiasing off
resetMatrix
translate 10 730
setPen black
drawText 0 -10 "Task 229459 (should see one diagonal line):"
drawRect 0.5 0.5 64 64
setPen red 2 solidline flatcap
setClipRect 2 2 63 63
drawLine 1.5 1.5 33560000 33560000

View File

@ -0,0 +1,179 @@
# Version: 1
# CheckVsReference: 5%
translate 10 20
drawText 0 0 "Thin lines"
translate 60 70
save
begin_block lines
translate 0 -60
translate 0 5
setPen 0x000000 0.05
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 0.1
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 0.15
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 0.2
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 0.25
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 0.3
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 0.35
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 0.2
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 0.25
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 0.5
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 0.55
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 0.6
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 0.65
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 0.7
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 0.75
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 0.8
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 0.85
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 0.9
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 0.95
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 1
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 1.05
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 1.1
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 1.15
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 1.2
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 1.25
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 1.3
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 1.35
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 1.2
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 1.25
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 1.5
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 1.55
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 1.6
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 1.65
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 1.7
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 1.75
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 1.8
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 1.85
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 1.9
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 1.95
drawLine -60 -2 60 2
translate 0 5
setPen 0x000000 2
drawLine -60 -2 60 2
end_block
restore
save
translate 150 0
scale -1 1
repeat_block lines
restore
save
translate 80 220
rotate 90
repeat_block lines
restore
save
translate 80 370
rotate 90
scale -1 1
repeat_block lines
restore
setRenderHint Antialiasing
translate 300 0
save
repeat_block lines
restore
save
translate 150 0
scale -1 1
repeat_block lines
restore
save
translate 80 220
rotate 90
repeat_block lines
restore
save
translate 80 370
rotate 90
scale -1 1
repeat_block lines
restore

View File

@ -0,0 +1,171 @@
clearRenderHint
setPen black 0 solidline squarecap
save
translate 20 20
begin_block lines
# 0 -> 45 degress
drawLine 100 100 200 90
drawLine 100 100 200 80
drawLine 100 100 200 70
drawLine 100 100 200 60
drawLine 100 100 200 50
drawLine 100 100 200 40
drawLine 100 100 200 30
drawLine 100 100 200 20
drawLine 100 100 200 10
# 45
drawLine 100 100 200 0
# 45 -> 90
drawLine 100 100 190 0
drawLine 100 100 180 0
drawLine 100 100 170 0
drawLine 100 100 160 0
drawLine 100 100 150 0
drawLine 100 100 140 0
drawLine 100 100 130 0
drawLine 100 100 120 0
drawLine 100 100 110 0
# 90
drawLine 100 100 100 0
# 90 -> 135
drawLine 100 100 90 0
drawLine 100 100 80 0
drawLine 100 100 70 0
drawLine 100 100 60 0
drawLine 100 100 50 0
drawLine 100 100 40 0
drawLine 100 100 30 0
drawLine 100 100 20 0
drawLine 100 100 10 0
# 135
drawLine 100 100 0 0
# 135 -> 180 degress
drawLine 100 100 0 10
drawLine 100 100 0 20
drawLine 100 100 0 30
drawLine 100 100 0 40
drawLine 100 100 0 50
drawLine 100 100 0 60
drawLine 100 100 0 70
drawLine 100 100 0 80
drawLine 100 100 0 90
# 180
drawLine 100 100 0 100
# 180 -> 225
drawLine 100 100 0 110
drawLine 100 100 0 120
drawLine 100 100 0 130
drawLine 100 100 0 140
drawLine 100 100 0 150
drawLine 100 100 0 160
drawLine 100 100 0 170
drawLine 100 100 0 180
drawLine 100 100 0 190
# 225
drawLine 100 100 0 200
# 225 -> 270
drawLine 100 100 10 200
drawLine 100 100 20 200
drawLine 100 100 30 200
drawLine 100 100 40 200
drawLine 100 100 50 200
drawLine 100 100 60 200
drawLine 100 100 70 200
drawLine 100 100 80 200
drawLine 100 100 90 200
# 270
drawLine 100 100 100 200
# 270 -> 315 degrees
drawLine 100 100 110 200
drawLine 100 100 120 200
drawLine 100 100 130 200
drawLine 100 100 140 200
drawLine 100 100 150 200
drawLine 100 100 160 200
drawLine 100 100 170 200
drawLine 100 100 180 200
drawLine 100 100 190 200
# 315
drawLine 100 100 200 200
# 315 -> 360 degress
drawLine 100 100 200 100
drawLine 100 100 200 110
drawLine 100 100 200 120
drawLine 100 100 200 130
drawLine 100 100 200 140
drawLine 100 100 200 150
drawLine 100 100 200 160
drawLine 100 100 200 170
drawLine 100 100 200 180
drawLine 100 100 200 190
end_block
setRenderHint Antialiasing
setPen 0x7fff0000 0 solidline squarecap
repeat_block lines
translate 250.5 0.5
clearRenderHint
setPen black 0 solidline squarecap
repeat_block lines
setRenderHint Antialiasing
setPen 0x7fff0000 0 solidline squarecap
repeat_block lines
restore
save
translate 20 250
clearRenderHint
setPen black 1 solidline squarecap
repeat_block lines
setRenderHint Antialiasing
setPen 0x7fff0000 1 solidline squarecap
repeat_block lines
translate 250.5 0.5
clearRenderHint
setPen black 1 soslidline squarecap
repeat_block lines
setRenderHint Antialiasing
setPen 0x7fff0000 0 solidline squarecap
repeat_block lines
restore
translate 20 500
scale 1.5 1.5
clearRenderHint
setPen black 1 solidline squarecap
repeat_block lines
setRenderHint Antialiasing
setPen 0x7fff0000 1 solidline squarecap
repeat_block lines
translate 250.5 0.5
clearRenderHint
setPen black 1 soslidline squarecap
repeat_block lines
setRenderHint Antialiasing
setPen 0x7fff0000 0 solidline squarecap
repeat_block lines

View File

@ -0,0 +1,38 @@
# Version: 1
# CheckVsReference: 1% (0 0 850 420)
setPen afff0000 4
setBrush dome_rgb32.png
drawEllipse 10 10 200 200
setBrush dome_argb32.png
drawEllipse 220 10 200 200
setPen NoPen
setBrush dome_rgb32.png
drawEllipse 10 220 200 200
setBrush dome_argb32.png
drawEllipse 220 220 200 200
setBrushOrigin -30 -30
setPen afff0000 4
setBrush dome_rgb32.png
drawEllipse 430 10 200 200
setBrush dome_argb32.png
drawEllipse 640 10 200 200
setPen NoPen
setBrush dome_rgb32.png
drawEllipse 430 220 200 200
setBrush dome_argb32.png
drawEllipse 640 220 200 200
setPen black
drawText 150 450 "No offset RGB/ARGB"
drawText 550 450 "-30 offset RGB/ARGB"

View File

@ -0,0 +1,49 @@
# Version: 1
setPen black 1
setBrush 7f7fff
setFont "arial" 12
drawText 10 330 "Non-Cosmetic"
drawText 10 730 "Cosmetic"
path_moveTo star 50 0
path_lineTo star 30 90
path_lineTo star 100 60
path_lineTo star 0 20
path_lineTo star 80 100
setFont "times" 50
path_addText text 0 50 "ABCD, 1234, abcd, #¤%&"
path_addRect rectncircle 0 0 75 75
path_addEllipse rectncircle 25 25 75 75
path_setFillRule rectncircle winding
path_moveTo curve 100 0
path_cubicTo curve 100 100 50 50 0 100
begin_block drawing
drawPath star
translate 100 0
drawPath rectncircle
translate 100 0
drawPath curve
translate -200 100
drawPath text
end_block
begin_block xform
save
translate 50 60
rotate 10
scale 1.0 0.7
repeat_block drawing
restore
end_block xform
setPen black 0
setBrush ff7f7f
translate 0 300
repeat_block drawing
repeat_block xform

View File

@ -0,0 +1,4 @@
# Version: 1
setRenderHint LineAntialiasing
import "paths.qps"

View File

@ -0,0 +1,79 @@
# Version: 1
# CheckVsReference: 5%
#define basic block off screen
save
translate -1000 -1000
begin_block drawrects
setBrush green Dense4Pattern
drawRect 0 0 40 40
setBrush green DiagCrossPattern
drawRect 40 0 40 40
setBrush green HorPattern
brushRotate 30
drawRect 80 0 40 40
fillRect 120 0 40 40
save
setPen brush 40 SolidLine FlatCap
setBrush NoBrush
drawLine 160 20 200 20
restore
end_block
restore
begin_block hintsuite
save
setRenderHint NonCosmeticBrushPatterns false
setRenderHint SmoothPixmapTransform false
translate 10 10
repeat_block drawrects
setRenderHint NonCosmeticBrushPatterns false
setRenderHint SmoothPixmapTransform true
translate 0 50
repeat_block drawrects
setRenderHint NonCosmeticBrushPatterns true
setRenderHint SmoothPixmapTransform false
translate 0 50
repeat_block drawrects
setRenderHint NonCosmeticBrushPatterns true
setRenderHint SmoothPixmapTransform true
translate 0 50
repeat_block drawrects
restore
end_block
save
translate 0 200
scale 2 2
repeat_block hintsuite
restore
save
translate 500 0
scale 1.5 2.5
rotate_y 60
repeat_block hintsuite
restore
translate 0 650
setBrush blue CrossPattern
setPen red
setRenderHint NonCosmeticBrushPatterns false
begin_block dots
save
drawRect 0 0 50 50
setBrushOrigin 12 0
drawRect 50 0 50 50
scale 2 1
drawRect 50 0 50 50
restore
end_block dots
setRenderHint NonCosmeticBrushPatterns true
translate 0 60
repeat_block dots

View File

@ -0,0 +1,81 @@
# Version: 1
# CheckVsReference: 5%
# 1: Check brush origin vs (non)cosmetic brush patterns
setBrush blue CrossPattern
begin_block blockName
save
setBrushOrigin 0 0
fillRect 0 0 32 32
translate 0 32
setBrushOrigin 1 0
fillRect 0 0 32 32
translate 0 32
setBrushOrigin 2 0
fillRect 0 0 32 32
translate 0 32
setBrushOrigin 3 0
fillRect 0 0 32 32
translate 0 32
setBrushOrigin 4 0
fillRect 0 0 32 32
translate 0 32
setBrushOrigin 5 0
fillRect 0 0 32 32
translate 0 32
setBrushOrigin 6 0
fillRect 0 0 32 32
translate 0 32
setBrushOrigin 7 0
fillRect 0 0 32 32
translate 0 32
setBrushOrigin 8 0
fillRect 0 0 32 32
restore
end_block blockName
save
setBrush red CrossPattern
scale 2 1
repeat_block blockName
restore
save
translate 0 300
setRenderHint NonCosmeticBrushPatterns true
setBrush blue CrossPattern
repeat_block blockName
setBrush red CrossPattern
scale 2 1
repeat_block blockName
restore
# 2: Check brush update after only xform or hint change
translate 100 0
save
setPen NoPen
setBrush blue DiagCrossPattern
setRenderHint NonCosmeticBrushPatterns true
drawRect 10 10 200 100
scale 10 10
drawRect 22 1 20 10
drawRect 22 12 20 10
setRenderHint NonCosmeticBrushPatterns false
drawRect 1 12 20 10
restore
setBrush green DiagCrossPattern
setPen brush 100 SolidLine FlatCap
pen_setCosmetic true
setBrush NoBrush
translate 0 250
setRenderHint NonCosmeticBrushPatterns true
drawLine 10 60 210 60
scale 10 10
drawLine 22 6 42 6
drawLine 22 17 42 17
setRenderHint NonCosmeticBrushPatterns false
drawLine 1 17 21 17

View File

@ -0,0 +1,133 @@
# Version: 1
# CheckVsReference: 1% (0 0 800 800)
translate 10 10
begin_block penstyles
setPen black 0 solidline flatcap
drawLine 0 0 100 0
setPen black 0 dashline flatcap
drawLine 100 0 100 40
setPen black 0 dotline flatcap
drawLine 100 40 200 0
setPen black 0 dashdotline flatcap
drawLine 200 0 300 0
setPen black 0 dashdotdotline flatcap
drawLine 300 0 400 40
translate 0 50
setPen blue 2 solidline flatcap
drawLine 0 0 100 0
setPen blue 2 dashline flatcap
drawLine 100 0 100 40
setPen blue 2 dotline flatcap
drawLine 100 40 200 0
setPen blue 2 dashdotline flatcap
drawLine 200 0 300 0
setPen blue 2 dashdotdotline flatcap
drawLine 300 0 400 40
translate 0 50
setPen red 5 solidline flatcap
drawLine 0 0 100 0
setPen red 5 dashline flatcap
drawLine 100 0 100 40
setPen red 5 dotline flatcap
drawLine 100 40 200 0
setPen red 5 dashdotline flatcap
drawLine 200 0 300 0
setPen red 5 dashdotdotline flatcap
drawLine 300 0 400 40
end_block
translate 0 50
scale 1 2
repeat_block penstyles
# Test cap styles
resetMatrix
translate 420 10
setPen green 5 dashdotline flatcap
drawLine 0 0 200 0
setPen green 5 dashdotline roundcap
drawLine 0 20 200 20
setPen green 5 dashdotline squarecap
drawLine 0 40 200 40
# Test join styles
resetMatrix
translate 420 80
setBrush nobrush
begin_block joinstyles
setPen orange 10 solidline flatcap miterjoin
drawPolyline [ 0 0 80 0 80 80 0 80 ]
translate 0 100
setPen aquamarine 10 solidline squarecap beveljoin
drawPolyline [ 0 0 80 0 80 80 0 80 ]
translate 0 100
setPen purple 10 solidline roundcap roundjoin
drawPolyline [ 0 0 80 0 80 80 0 80 ]
end_block
translate 130 -200
scale 2 1
rotate 1
repeat_block joinstyles
# transparent lines
resetMatrix
translate 10 400
setPen #7f000000
drawLine 0 0 50 0
setPen #7f000000 1 SolidLine
drawLine 0 10 50 10
setPen #7f000000 5 SolidLine
drawLine 0 20 50 20
setPen #7f000000 10 SolidLine
drawLine 0 30 50 30
setPen #7f000000
drawLine 0 0 0 50
setPen #7f000000 1 SolidLine
drawLine 10 0 10 50
setPen #7f000000 5 SolidLine
drawLine 20 0 20 50
setPen #7f000000 10 SolidLine
drawLine 30 0 30 50
# pen styles
resetMatrix
translate 0 500
setPen black 0 DashLine
drawLine 20 20 100 20
translate 0 10
setPen black 0 DotLine
drawLine 20 20 100 20
translate 0 10
setPen black 0 DashDotLine
drawLine 20 20 100 20
translate 0 10
setPen black 0 DashDotDotLine
drawLine 20 20 100 20
# scaling ellipse
resetMatrix
setPen black 0.008 DashLine
translate 250 550
rotate 30
scale 250 250
drawEllipse -0.4 -0.4 0.8 0.8
# scaling path
path_addEllipse star -0.3 -0.3 0.6 0.6
resetMatrix
setPen black 0.008 DashLine
translate 250 550
rotate 30
scale 250 250
drawPath star

View File

@ -0,0 +1,6 @@
# Version: 1
# CheckVsReference: 1% (0 0 800 800)
setRenderHint LineAntialiasing
import "pens.qps"

View File

@ -0,0 +1,116 @@
# Version: 1
# CheckVsReference: 1% (0 0 585 470)
path_addEllipse path 22 0 7 7
path_addRect path 25 5 4 4
translate 20 20
setPen black 0
pen_setCosmetic false
begin_block lines
save
drawLine 0 0 10 10
drawLine 2 0 10 0
drawLine 0 2 0 10
drawPolygon [12 0 20 0 15 10]
drawPath path
drawEllipse 32 0 8 8
drawPoint 36 4
translate 100 0
save
scale 4 1
drawLine 0 0 10 10
drawLine 2 0 10 0
drawLine 0 2 0 10
drawPolygon [12 0 20 0 15 10]
drawPath path
drawEllipse 32 0 8 8
drawPoint 36 4
restore
translate 200 0
save
scale 1 4
drawLine 0 0 10 10
drawLine 2 0 10 0
drawLine 0 2 0 10
drawPolygon [12 0 20 0 15 10]
drawPath path
drawEllipse 32 0 8 8
drawPoint 36 4
restore
translate 100 0
save
scale 4 4
drawLine 0 0 10 10
drawLine 2 0 10 0
drawLine 0 2 0 10
drawPolygon [12 0 20 0 15 10]
drawPath path
drawEllipse 32 0 8 8
drawPoint 36 4
restore
restore
end_block
drawText 580 15 "non-cosmetic, 0-width"
translate 0 50
setPen black 2
pen_setCosmetic false
repeat_block lines
drawText 580 15 "non-cosmetic, 2-width"
translate 0 20
translate 0 50
setPen black 0
pen_setCosmetic true
repeat_block lines
drawText 580 15 "cosmetic, 0-width"
translate 0 50
setPen black 2
pen_setCosmetic true
repeat_block lines
drawText 580 15 "cosmetic, 2-width"
setRenderHint Antialiasing
translate 0 20
translate 0 50
setPen black 0
pen_setCosmetic false
repeat_block lines
drawText 580 15 "non-cosmetic, 0-width"
translate 0 50
setPen black 2
pen_setCosmetic false
repeat_block lines
drawText 580 15 "non-cosmetic, 2-width"
translate 0 20
translate 0 50
setPen black 0
pen_setCosmetic true
repeat_block lines
drawText 580 15 "cosmetic, 0-width"
translate 0 50
setPen black 2
pen_setCosmetic true
repeat_block lines
drawText 580 15 "cosmetic, 2-width"
translate 0 70
drawText 0 0 "scale(1, 1)"
drawText 150 0 "scale(4, 1)"
drawText 300 0 "scale(1, 4)"
drawText 450 0 "scale(4, 4)"

View File

@ -0,0 +1,72 @@
# Version: 1
setRenderHint Antialiasing
setPen #00ff00
image_load image.png the_image
translate 10 10
# standard draw
drawImage the_image 0 0
# Rotation w/o smooth xform
save
translate 350 0
save
setRenderHint SmoothPixmapTransform on
mapQuadToQuad 0 0 0 300 300 300 300 0 0 50 0 200 300 300 300 0
drawImage the_image 0 0
restore
restore
translate 0 320
save
setRenderHint SmoothPixmapTransform on
mapQuadToQuad 0 0 0 300 300 300 300 0 0 0 100 300 200 300 300 0
drawImage the_image 0 0
restore
save
translate 350 0
save
setRenderHint SmoothPixmapTransform on
mapQuadToQuad 0 0 0 300 300 300 300 0 0 0 0 300 300 250 300 50
drawImage the_image 0 0
restore
restore
setRenderHint SmoothPixmapTransform on
setBrush red
setPen black
resetMatrix
translate 100 720
rotate_y 85
scale 7 0.01
drawRect -150 -150 300 300
resetMatrix
setBrush gam030.png
setPen black 30
translate 700 700
rotate_y -85
scale 7 0.01
drawRect -150 -150 300 300
resetMatrix
setPen black
translate 125 20
drawText 0 0 "No transform"
translate 350 0
drawText 0 0 "Left Tilted"
resetMatrix
translate 125 350
drawText 0 0 "Bottom Tilted"
translate 350 0
drawText 0 0 "Right Tilted"
translate 120 0
resetMatrix
translate 300 760
drawText 0 0 "Perspective Clipping"

View File

@ -0,0 +1,309 @@
# Version: 1
setRenderHint Antialiasing
image_load zebra.png zebra_png
image_convertToFormat zebra_png zebra ARGB32_Premultiplied
translate 75 100
# standard draw
begin_block row1
drawImage zebra -50 -50
translate 90 0
save
rotate_y 50
drawImage zebra -50 -50
restore
translate 65 0
save
rotate_y 60
drawImage zebra -50 -50
restore
translate 50 0
save
rotate_y 70
drawImage zebra -50 -50
restore
translate 30 0
save
rotate_y 80
drawImage zebra -50 -50
restore
translate 24 0
save
rotate_y 82
drawImage zebra -50 -50
restore
translate 20 0
save
rotate_y 84
drawImage zebra -50 -50
restore
translate 16 0
save
rotate_y 86
drawImage zebra -50 -50
restore
translate 12 0
save
rotate_y 87
drawImage zebra -50 -50
restore
translate 8 0
save
rotate_y 88
drawImage zebra -50 -50
restore
translate 6 0
save
rotate_y 89
drawImage zebra -50 -50
restore
translate 6 0
save
rotate_y 91
drawImage zebra -50 -50
restore
translate 6 0
save
rotate_y 92
drawImage zebra -50 -50
restore
translate 8 0
save
rotate_y 93
drawImage zebra -50 -50
restore
translate 12 0
save
rotate_y 94
drawImage zebra -50 -50
restore
translate 16 0
save
rotate_y 96
drawImage zebra -50 -50
restore
translate 20 0
save
rotate_y 98
drawImage zebra -50 -50
restore
translate 24 0
save
rotate_y 100
drawImage zebra -50 -50
restore
translate 30 0
save
rotate_y 110
drawImage zebra -50 -50
restore
translate 50 0
save
rotate_y 120
drawImage zebra -50 -50
restore
translate 65 0
save
rotate_y 130
drawImage zebra -50 -50
restore
translate 90 0
save
rotate_y 180
drawImage zebra -50 -50
restore
end_block row1
resetMatrix
translate 75 280
setRenderHint SmoothPixmapTransform
repeat_block row1
resetMatrix
setPen black
translate 300 20
drawText 0 0 "Fast Pixmap Transform"
resetMatrix
translate 300 210
drawText 0 0 "Smooth Pixmap Transform"
resetMatrix
translate 0 400
image_load dome_argb32.png the_pixmap
image_convertToFormat the_pixmap dome ARGB32
setRenderHint SmoothPixmapTransform false
translate 75 100
# standard draw
begin_block row2
drawImage dome -50 -50
translate 90 0
save
rotate_y 50
drawImage dome -50 -50
restore
translate 65 0
save
rotate_y 60
drawImage dome -50 -50
restore
translate 50 0
save
rotate_y 70
drawImage dome -50 -50
restore
translate 30 0
save
rotate_y 80
drawImage dome -50 -50
restore
translate 24 0
save
rotate_y 82
drawImage dome -50 -50
restore
translate 20 0
save
rotate_y 84
drawImage dome -50 -50
restore
translate 16 0
save
rotate_y 86
drawImage dome -50 -50
restore
translate 12 0
save
rotate_y 87
drawImage dome -50 -50
restore
translate 8 0
save
rotate_y 88
drawImage dome -50 -50
restore
translate 6 0
save
rotate_y 89
drawImage dome -50 -50
restore
translate 6 0
save
rotate_y 91
drawImage dome -50 -50
restore
translate 6 0
save
rotate_y 92
drawImage dome -50 -50
restore
translate 8 0
save
rotate_y 93
drawImage dome -50 -50
restore
translate 12 0
save
rotate_y 94
drawImage dome -50 -50
restore
translate 16 0
save
rotate_y 96
drawImage dome -50 -50
restore
translate 20 0
save
rotate_y 98
drawImage dome -50 -50
restore
translate 24 0
save
rotate_y 100
drawImage dome -50 -50
restore
translate 30 0
save
rotate_y 110
drawImage dome -50 -50
restore
translate 50 0
save
rotate_y 120
drawImage dome -50 -50
restore
translate 65 0
save
rotate_y 130
drawImage dome -50 -50
restore
translate 90 0
save
rotate_y 180
drawImage dome -50 -50
restore
end_block row2
resetMatrix
translate 0 400
translate 75 280
setRenderHint SmoothPixmapTransform
repeat_block row2
resetMatrix
setPen black
translate 0 400
translate 300 20
drawText 0 0 "Fast Pixmap Transform"
resetMatrix
translate 0 400
translate 300 210
drawText 0 0 "Smooth Pixmap Transform"

View File

@ -0,0 +1,31 @@
# Version: 1
# CheckVsReference: 0% (0 0 440 220)
translate 120 120
begin_block drawing
save
rotate 90
drawPixmap solid.png 0 0
rotate 90
drawPixmap solid.png 0 0
rotate 90
drawPixmap solid.png 0 0
rotate 90
drawPixmap solid.png 0 0
restore
end_block
resetMatrix
translate 340 120
setRenderHint SmoothPixmapTransformation
repeat_block drawing
resetMatrix
drawText 50 240 "Normal Xform"
drawText 270 240 "Smooth Xform"

View File

@ -0,0 +1,8 @@
# Version: 1
# CheckVsReference: 1%
setRenderHint SmoothPixmapTransformation
translate 400 -120
rotate 45
scale 400 400
drawImage solid2x2.png 0 0

View File

@ -0,0 +1,224 @@
# Version: 1
# CheckVsReference: 0% (0 30 600 70)
# CheckVsReference: 0% (290 130 280 60)
# CheckVsReference: 0% (0 180 250 90)
# Hurra! Force line endings (?)
translate 5 25
setFont "arial" 8
save
drawText 15 0 "opaque image"
translate 50 50
save
translate 1 1
scale 20 20
drawImage solid2x2.png 0 0
restore
save
translate -1 1
scale -20 20
drawImage solid2x2.png 0 0
restore
save
translate 1 -1
scale 20 -20
drawImage solid2x2.png 0 0
restore
save
translate -1 -1
scale -20 -20
drawImage solid2x2.png 0 0
restore
restore
save
translate 150 0
drawText 15 0 "alpha image"
translate 50 50
save
translate 1 1
scale 20 20
drawImage alpha2x2.png 0 0
restore
save
translate -1 1
scale -20 20
drawImage alpha2x2.png 0 0
restore
save
translate 1 -1
scale 20 -20
drawImage alpha2x2.png 0 0
restore
save
translate -1 -1
scale -20 -20
drawImage alpha2x2.png 0 0
restore
restore
save
translate 0 150
drawText 15 0 "solid pixmap"
translate 50 50
save
translate 1 1
scale 20 20
drawPixmap solid2x2.png 0 0
restore
save
translate -1 1
scale -20 20
drawPixmap solid2x2.png 0 0
restore
save
translate 1 -1
scale 20 -20
drawPixmap solid2x2.png 0 0
restore
save
translate -1 -1
scale -20 -20
drawPixmap solid2x2.png 0 0
restore
restore
save
translate 150 150
drawText 15 0 "alpha pixmap"
translate 50 50
save
translate 1 1
scale 20 20
drawPixmap alpha2x2.png 0 0
restore
save
translate -1 1
scale -20 20
drawPixmap alpha2x2.png 0 0
restore
save
translate 1 -1
scale 20 -20
drawPixmap alpha2x2.png 0 0
restore
save
translate -1 -1
scale -20 -20
drawPixmap alpha2x2.png 0 0
restore
restore
save
translate 300 10
save
drawText 0 -10 "subrect solid image"
drawImage solid2x2.png 0 0 50 5 0 0.0 2 0.2
drawImage solid2x2.png 0 5 50 5 0 0.2 2 0.2
drawImage solid2x2.png 0 10 50 5 0 0.4 2 0.2
drawImage solid2x2.png 0 15 50 5 0 0.6 2 0.2
drawImage solid2x2.png 0 20 50 5 0 0.8 2 0.2
drawImage solid2x2.png 0 25 50 5 0 1.0 2 0.2
drawImage solid2x2.png 0 30 50 5 0 1.2 2 0.2
drawImage solid2x2.png 0 35 50 5 0 1.4 2 0.2
drawImage solid2x2.png 0 40 50 5 0 1.6 2 0.2
drawImage solid2x2.png 0 45 50 5 0 1.8 2 0.2
translate 60 0
drawImage solid2x2.png 0 0 5 50 0.0 0 0.2 2
drawImage solid2x2.png 5 0 5 50 0.2 0 0.2 2
drawImage solid2x2.png 10 0 5 50 0.4 0 0.2 2
drawImage solid2x2.png 15 0 5 50 0.6 0 0.2 2
drawImage solid2x2.png 20 0 5 50 0.8 0 0.2 2
drawImage solid2x2.png 25 0 5 50 1.0 0 0.2 2
drawImage solid2x2.png 30 0 5 50 1.2 0 0.2 2
drawImage solid2x2.png 35 0 5 50 1.4 0 0.2 2
drawImage solid2x2.png 40 0 5 50 1.6 0 0.2 2
drawImage solid2x2.png 45 0 5 50 1.8 0 0.2 2
restore
save
translate 150 0
drawText 0 -10 "subrect solid image"
drawImage alpha2x2.png 0 0 50 5 0 0.0 2 0.2
drawImage alpha2x2.png 0 5 50 5 0 0.2 2 0.2
drawImage alpha2x2.png 0 10 50 5 0 0.4 2 0.2
drawImage alpha2x2.png 0 15 50 5 0 0.6 2 0.2
drawImage alpha2x2.png 0 20 50 5 0 0.8 2 0.2
drawImage alpha2x2.png 0 25 50 5 0 1.0 2 0.2
drawImage alpha2x2.png 0 30 50 5 0 1.2 2 0.2
drawImage alpha2x2.png 0 35 50 5 0 1.4 2 0.2
drawImage alpha2x2.png 0 40 50 5 0 1.6 2 0.2
drawImage alpha2x2.png 0 45 50 5 0 1.8 2 0.2
translate 60 0
drawImage alpha2x2.png 0 0 5 50 0.0 0 0.2 2
drawImage alpha2x2.png 5 0 5 50 0.2 0 0.2 2
drawImage alpha2x2.png 10 0 5 50 0.4 0 0.2 2
drawImage alpha2x2.png 15 0 5 50 0.6 0 0.2 2
drawImage alpha2x2.png 20 0 5 50 0.8 0 0.2 2
drawImage alpha2x2.png 25 0 5 50 1.0 0 0.2 2
drawImage alpha2x2.png 30 0 5 50 1.2 0 0.2 2
drawImage alpha2x2.png 35 0 5 50 1.4 0 0.2 2
drawImage alpha2x2.png 40 0 5 50 1.6 0 0.2 2
drawImage alpha2x2.png 45 0 5 50 1.8 0 0.2 2
restore
save
translate 0 100
drawText 0 -10 "subrect alpha pixmap"
drawPixmap solid2x2.png 0 0 50 5 0 0.0 2 0.2
drawPixmap solid2x2.png 0 5 50 5 0 0.2 2 0.2
drawPixmap solid2x2.png 0 10 50 5 0 0.4 2 0.2
drawPixmap solid2x2.png 0 15 50 5 0 0.6 2 0.2
drawPixmap solid2x2.png 0 20 50 5 0 0.8 2 0.2
drawPixmap solid2x2.png 0 25 50 5 0 1.0 2 0.2
drawPixmap solid2x2.png 0 30 50 5 0 1.2 2 0.2
drawPixmap solid2x2.png 0 35 50 5 0 1.4 2 0.2
drawPixmap solid2x2.png 0 40 50 5 0 1.6 2 0.2
drawPixmap solid2x2.png 0 45 50 5 0 1.8 2 0.2
translate 60 0
drawPixmap solid2x2.png 0 0 5 50 0.0 0 0.2 2
drawPixmap solid2x2.png 5 0 5 50 0.2 0 0.2 2
drawPixmap solid2x2.png 10 0 5 50 0.4 0 0.2 2
drawPixmap solid2x2.png 15 0 5 50 0.6 0 0.2 2
drawPixmap solid2x2.png 20 0 5 50 0.8 0 0.2 2
drawPixmap solid2x2.png 25 0 5 50 1.0 0 0.2 2
drawPixmap solid2x2.png 30 0 5 50 1.2 0 0.2 2
drawPixmap solid2x2.png 35 0 5 50 1.4 0 0.2 2
drawPixmap solid2x2.png 40 0 5 50 1.6 0 0.2 2
drawPixmap solid2x2.png 45 0 5 50 1.8 0 0.2 2
restore
save
translate 150 100
drawText 0 -10 "subrect alpha pixmap"
drawPixmap alpha2x2.png 0 0 50 5 0 0.0 2 0.2
drawPixmap alpha2x2.png 0 5 50 5 0 0.2 2 0.2
drawPixmap alpha2x2.png 0 10 50 5 0 0.4 2 0.2
drawPixmap alpha2x2.png 0 15 50 5 0 0.6 2 0.2
drawPixmap alpha2x2.png 0 20 50 5 0 0.8 2 0.2
drawPixmap alpha2x2.png 0 25 50 5 0 1.0 2 0.2
drawPixmap alpha2x2.png 0 30 50 5 0 1.2 2 0.2
drawPixmap alpha2x2.png 0 35 50 5 0 1.4 2 0.2
drawPixmap alpha2x2.png 0 40 50 5 0 1.6 2 0.2
drawPixmap alpha2x2.png 0 45 50 5 0 1.8 2 0.2
translate 60 0
drawPixmap alpha2x2.png 0 0 5 50 0.0 0 0.2 2
drawPixmap alpha2x2.png 5 0 5 50 0.2 0 0.2 2
drawPixmap alpha2x2.png 10 0 5 50 0.4 0 0.2 2
drawPixmap alpha2x2.png 15 0 5 50 0.6 0 0.2 2
drawPixmap alpha2x2.png 20 0 5 50 0.8 0 0.2 2
drawPixmap alpha2x2.png 25 0 5 50 1.0 0 0.2 2
drawPixmap alpha2x2.png 30 0 5 50 1.2 0 0.2 2
drawPixmap alpha2x2.png 35 0 5 50 1.4 0 0.2 2
drawPixmap alpha2x2.png 40 0 5 50 1.6 0 0.2 2
drawPixmap alpha2x2.png 45 0 5 50 1.8 0 0.2 2
restore
restore

View File

@ -0,0 +1,117 @@
# Version: 1
# CheckVsReference: 5%
translate 50 50
# Pixmaps at 0.1 offset, unclipped
begin_block draw_pixmaps
save
drawPixmap border.png 0 0
translate 20.1 0.1
drawPixmap border.png 0 0
translate 20.1 0.1
drawPixmap border.png 0 0
translate 20.1 0.1
drawPixmap border.png 0 0
translate 20.1 0.1
drawPixmap border.png 0 0
translate 20.1 0.1
drawPixmap border.png 0 0
translate 20.1 0.1
drawPixmap border.png 0 0
translate 20.1 0.1
drawPixmap border.png 0 0
translate 20.1 0.1
drawPixmap border.png 0 0
translate 20.1 0.1
drawPixmap border.png 0 0
translate 20.1 0.1
drawPixmap border.png 0 0
translate 20.1 0.1
drawPixmap border.png 0 0
translate 20.1 0.1
drawPixmap border.png 0 0
translate 20.1 0.1
drawPixmap border.png 0 0
translate 20.1 0.1
drawPixmap border.png 0 0
translate 20.1 0.1
drawPixmap border.png 0 0
translate 20.1 0.1
drawPixmap border.png 0 0
translate 20.1 0.1
drawPixmap border.png 0 0
translate 20.1 0.1
drawPixmap border.png 0 0
translate 20.1 0.1
drawPixmap border.png 0 0
translate 20.1 0.1
restore
end_block
# Tiled pixmaps at 0.1 offsets, unclipped
translate 0 50
begin_block draw_tiled
save
drawTiledPixmap border.png 0 0 16 16 0 0
translate 20.1 0.1
drawTiledPixmap border.png 0 0 16 16 0 0
translate 20.1 0.1
drawTiledPixmap border.png 0 0 16 16 0 0
translate 20.1 0.1
drawTiledPixmap border.png 0 0 16 16 0 0
translate 20.1 0.1
drawTiledPixmap border.png 0 0 16 16 0 0
translate 20.1 0.1
drawTiledPixmap border.png 0 0 16 16 0 0
translate 20.1 0.1
drawTiledPixmap border.png 0 0 16 16 0 0
translate 20.1 0.1
drawTiledPixmap border.png 0 0 16 16 0 0
translate 20.1 0.1
drawTiledPixmap border.png 0 0 16 16 0 0
translate 20.1 0.1
drawTiledPixmap border.png 0 0 16 16 0 0
translate 20.1 0.1
drawTiledPixmap border.png 0 0 16 16 0 0
translate 20.1 0.1
drawTiledPixmap border.png 0 0 16 16 0 0
translate 20.1 0.1
drawTiledPixmap border.png 0 0 16 16 0 0
translate 20.1 0.1
drawTiledPixmap border.png 0 0 16 16 0 0
translate 20.1 0.1
drawTiledPixmap border.png 0 0 16 16 0 0
translate 20.1 0.1
drawTiledPixmap border.png 0 0 16 16 0 0
translate 20.1 0.1
drawTiledPixmap border.png 0 0 16 16 0 0
translate 20.1 0.1
drawTiledPixmap border.png 0 0 16 16 0 0
translate 20.1 0.1
drawTiledPixmap border.png 0 0 16 16 0 0
translate 20.1 0.1
drawTiledPixmap border.png 0 0 16 16 0 0
translate 20.1 0.1
restore
end_block
path_moveTo clip 0 0
path_lineTo clip width 0
path_lineTo clip width 400
path_lineTo clip 0 height
setClipPath clip
translate 0 50
# Pixmaps at 0.1 offset, clipped
repeat_block draw_pixmaps
# Tiled pixmaps at 0.1 offsets...
translate 0 50
repeat_block draw_tiled

View File

@ -0,0 +1,65 @@
# Version: 1
# CheckVsReference: 1% (0 0 690 580)
setRenderHint Antialiasing
setPen #00ff00
pixmap_load dome_argb32.png the_pixmap
begin_block draw_stuff
save
drawPixmapFragments the_pixmap 1 50 50 25 25 60 60 1 1 0 1
drawPixmapFragments the_pixmap 1 150 50 25 25 60 60 1 1 0 0.5
drawPixmapFragments the_pixmap 1 250 50 25 25 60 60 1 1 30 1
drawPixmapFragments the_pixmap 1 350 50 25 25 60 60 1.5 1 0 1
drawPixmapFragments the_pixmap 1 450 50 25 25 60 60 1 1.5 0 1
drawPixmapFragments the_pixmap 2 550 50 25 25 40 40 0.5 0.5 -45 1 600 50 25 25 40 40 0.7 0.7 45 1
restore
end_block
translate 0 120
pixmap_load dome_rgb32.png the_pixmap
repeat_block draw_stuff
translate 0 120
pixmap_load dome_indexed.png the_pixmap
repeat_block draw_stuff
translate 0 120
pixmap_load dome_indexed_mask.png the_pixmap
repeat_block draw_stuff
translate 0 120
pixmap_load dome_mono.png the_pixmap
repeat_block draw_stuff
resetMatrix
translate 700 60
setPen black
drawText 0 0 "32 bit w/alpha"
translate 0 120
drawText 0 0 "32 bit w/o alpha"
translate 0 120
drawText 0 0 "8 bit indexed"
translate 0 120
drawText 0 0 "8 bit indexed w/mask"
translate 0 120
drawText 0 0 "1 bit"
resetMatrix
translate 25 600
drawText 0 0 "simple"
translate 100 0
drawText 0 0 "opacity"
translate 100 0
drawText 0 0 "rotation"
translate 100 0
drawText 0 0 "scale x"
translate 100 0
drawText 0 0 "scale y"
translate 100 0
drawText 0 0 "two fragments"
translate 100 0

View File

@ -0,0 +1,106 @@
# Version: 1
# CheckVsReference: 1% (0 0 690 580)
setRenderHint Antialiasing
setPen #00ff00
pixmap_load dome_argb32.png the_pixmap
begin_block draw_stuff
save
# standard draw
drawPixmap the_pixmap 0 0
# sub recting
translate 120 0
drawPixmap the_pixmap 0 0 40 40 0 0 40 40
drawPixmap the_pixmap 60 0 40 40 60 0 40 40
drawPixmap the_pixmap 0 60 40 40 0 60 40 40
drawPixmap the_pixmap 60 60 40 40 60 60 40 40
drawPixmap the_pixmap 0 40 40 20 0 40 40 20
drawPixmap the_pixmap 60 40 40 20 60 40 40 20
drawPixmap the_pixmap 40 0 20 100 40 0 20 100
# subrecting w/scale
translate 120 0
drawPixmap the_pixmap 0 0 50 50 0 0 25 25
drawPixmap the_pixmap 50 0 50 50 25 0 25 25
drawPixmap the_pixmap 0 50 50 50 0 25 25 25
drawPixmap the_pixmap 50 50 50 50 25 25 25 25
# subrecting w/scale & smooth xform
translate 120 0
setRenderHint SmoothPixmapTransformation
drawPixmap the_pixmap 0 0 50 50 0 0 25 25
drawPixmap the_pixmap 50 0 50 50 25 0 25 25
drawPixmap the_pixmap 0 50 50 50 0 25 25 25
drawPixmap the_pixmap 50 50 50 50 25 25 25 25
# Rotation w/o smooth xform
translate 120 0
save
setRenderHint SmoothPixmapTransform off
rotate 10
drawPixmap the_pixmap 0 0
restore
# Rotation w smooth xform
translate 120 0
save
setRenderHint SmoothPixmapTransform
rotate 10
drawPixmap the_pixmap 0 0
restore
restore
end_block
translate 0 120
pixmap_load dome_rgb32.png the_pixmap
repeat_block draw_stuff
translate 0 120
pixmap_load dome_indexed.png the_pixmap
repeat_block draw_stuff
translate 0 120
pixmap_load dome_indexed_mask.png the_pixmap
repeat_block draw_stuff
translate 0 120
pixmap_load dome_mono.png the_pixmap
repeat_block draw_stuff
resetMatrix
translate 700 60
setPen black
drawText 0 0 "32 bit w/alpha"
translate 0 120
drawText 0 0 "32 bit w/o alpha"
translate 0 120
drawText 0 0 "8 bit indexed"
translate 0 120
drawText 0 0 "8 bit indexed w/mask"
translate 0 120
drawText 0 0 "1 bit"
resetMatrix
translate 0 600
drawText 0 0 "normal"
translate 120 0
drawText 0 0 "subrect"
translate 120 0
drawText 0 0 "subrect scale"
translate 120 0
drawText 0 0 "subrect scale smooth"
translate 120 0
drawText 0 0 "xform"
translate 120 0
drawText 0 0 "smooth xform"
translate 120 0

View File

@ -0,0 +1,251 @@
# Version: 1
# CheckVsReference: 5%
translate 0 50
surface_begin 0 0 100 100
begin_block predraw
setRenderHint Antialiasing
setPen nopen
setBrush 0x7f000000
drawEllipse 10 10 80 80
end_block
setCompositionMode SourceOver
begin_block postdraw
setBrush 0x1fff0000
drawRect 0 0 50 50
setBrush 0xdf00ff00
drawRect 50 50 50 50
setBrush 0x7f0000ff
drawEllipse 30 30 40 40
# 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"

View File

@ -0,0 +1,261 @@
# 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"

View File

@ -0,0 +1,184 @@
# Version: 1#Version: 1
# CheckVsReference: 5%
# CheckVsReference: 5%
setBrush #ff7f7fff
setPen black 1 solidline
translate 20 20
begin_block testblock
save
drawRect 0 0 10 10
drawRect 20 0 20 10
drawRect 0 20 10 20
drawRect 20 20 20 20
translate 50 0
setPen NoPen
drawRect 0 0 10 10
drawRect 20 0 20 10
drawRect 0 20 10 20
drawRect 20 20 20 20
restore
save
translate 0 50
drawEllipse 0 0 10 10
drawEllipse 20 0 20 10
drawEllipse 0 20 10 20
drawEllipse 20 20 20 20
translate 50 0
setPen NoPen
drawEllipse 0 0 10 10
drawEllipse 20 0 20 10
drawEllipse 0 20 10 20
drawEllipse 20 20 20 20
restore
save
translate 0 100
drawPolygon [ 0 0 30 0 30 30 10 30 10 10 40 10 40 40 0 40 ]
save
translate 0 50
drawPolygon [ 0 0 30 0 30 30 10 30 10 10 40 10 40 40 0 40 ] Winding
translate 0 45
drawPolyline [ 0 0 50 0 25 25 ]
restore
setPen NoPen
translate 50 0
drawPolygon [ 0 0 30 0 30 30 10 30 10 10 40 10 40 40 0 40 ]
save
translate 0 50
drawPolygon [ 0 0 30 0 30 30 10 30 10 10 40 10 40 40 0 40 ] Winding
restore
save
translate -20 100
drawPie 0 0 50 50 0 1500
restore
restore
end_block
setPen black 1 SolidLine FlatCap
translate 200 0
scale 2 1
rotate 10
repeat_block testblock
resetMatrix
translate 0 250
setBrush 7f7f7fff
translate 20 20
repeat_block testblock
setPen black 1 SolidLine FlatCap
translate 200 0
scale 2 1
rotate 10
repeat_block testblock
resetMatrix
save
setRenderHint LineAntialiasing
setBrush 7f7fff
translate 20 500
repeat_block testblock
translate 200 0
scale 2 1
rotate 10
repeat_block testblock
restore
setRenderHint LineAntialiasing false
translate 420 20
begin_block lines
drawLine 0 0 100 0
drawLine 0 0 100 10
drawLine 0 0 100 20
drawLine 0 0 100 30
drawLine 0 0 100 40
drawLine 0 0 100 50
drawLine 0 0 100 60
drawLine 0 0 100 70
drawLine 0 0 100 80
drawLine 0 0 100 90
drawLine 0 0 100 100
drawLine 0 0 90 100
drawLine 0 0 80 100
drawLine 0 0 70 100
drawLine 0 0 60 100
drawLine 0 0 50 100
drawLine 0 0 40 100
drawLine 0 0 30 100
drawLine 0 0 20 100
drawLine 0 0 10 100
drawLine 0 0 0 100
end_block
setRenderHint LineAntialiasing
translate 0 120
repeat_block lines
translate 0 120
scale 5 2
repeat_block lines
resetMatrix
translate 420 500
begin_block roundedrects
save
drawRoundedRect 0 0 50 30 5 5
translate 60 0
drawRoundedRect 0 0 50 30 7.5 7.5
translate 60 0
drawRoundedRect 0 0 50 30 10 10
translate 60 0
drawRoundedRect 0 0 50 30 12.5 12.5
translate 60 0
drawRoundedRect 0 0 50 30 15 15
restore
save
translate 0 40
drawRoundedRect 0 0 50 30 20 20 RelativeSize
translate 60 0
drawRoundedRect 0 0 50 30 40 40 RelativeSize
translate 60 0
drawRoundedRect 0 0 50 30 60 60 RelativeSize
translate 60 0
drawRoundedRect 0 0 50 30 80 80 RelativeSize
translate 60 0
drawRoundedRect 0 0 50 30 100 100 RelativeSize
restore
end_block
translate 0.5 80.5
repeat_block roundedrects
translate -0.5 79.5
setRenderHint Antialiasing off
repeat_block roundedrects
resetMatrix
setRenderHint Antialiasing off
setPen black 1
begin_block drawShapes
translate 550.5 25
rotate 45
setBrush nobrush
drawEllipse -10 -10 20 20
drawLine 10 0 50 0
drawRect 50 -7 14 14
resetMatrix
end_block
setPen black 2
translate 25 0
repeat_block drawShapes
setPen black 3
translate 50 0
repeat_block drawShapes
setPen black 4
translate 75 0
repeat_block drawShapes
resetMatrix
setRenderHint Antialiasing off
setPen nopen
translate 550 100
setBrush #7f7f7fff
drawRect -0.5 -0.5 21 21
setBrush red
drawEllipse 0 0 20 20
setBrush nobrush
setPen black
drawEllipse 0 0 20 20
translate 25 0
setPen nopen
setBrush #7f7f7fff
drawRect 0 0 20 20
setBrush red
drawEllipse 0 0 20 20

View File

@ -0,0 +1,99 @@
# Version: 1
# CheckVsReference: 5% (0 0 600 400)
path_addRect path 400 0 80 80
path_addEllipse path 440 40 60 60
setRenderHint Antialiasing
setPen black
begin_block gradients
gradient_clearStops
gradient_appendStop 0 red
gradient_appendStop 0.25 orange
gradient_appendStop 0.5 yellow
gradient_appendStop 0.8 green
gradient_appendStop 1 cyan
gradient_setSpread PadSpread
gradient_setRadial 20 20 50 40 40
drawRect 0 0 100 100
gradient_setSpread ReflectSpread
gradient_setRadial 120 20 50 140 40
drawEllipse 100 0 100 100
gradient_setSpread RepeatSpread
gradient_setRadial 220 20 50 240 40
drawRoundRect 200 0 100 100
gradient_clearStops
gradient_appendStop 0 3f7f7fff
gradient_appendStop 0.5 dfdfffff
gradient_appendStop 1 7f00007f
gradient_setSpread PadSpread
gradient_setRadial 320 20 50 340 40
drawPolygon [300 0 390 0 350 99]
gradient_setSpread ReflectSpread
gradient_setRadial 420 20 50 440 40
drawPath path
gradient_setSpread RepeatSpread
gradient_setRadial 520 20 50 540 40
drawPie 500 0 100 100 720 4320
end_block
translate 0 100
scale 1 2
repeat_block gradients
resetMatrix
translate 0 300
brushTranslate 30 0
brushScale 0.9 0.9
brushRotate 20
repeat_block gradients
# Some helpful info perhaps?
resetMatrix
setPen black
drawText 610 50 "No XForm"
drawText 610 200 "scale 1x2"
drawText 610 300 "brush transform"
drawText 10 450 "Pad"
drawText 110 450 "Reflect"
drawText 210 450 "Repeat"
drawText 310 450 "Pad w/alpha"
drawText 410 450 "Reflect w/alpha"
drawText 510 450 "Repeat w/alpha"
# Radius and focal indicators
setPen 3f000000
setBrush nobrush
begin_block ellipse_draw
setClipRect 0 0 100 100
drawEllipse -30 -30 100 100
drawEllipse 35 35 11 11
translate 100 0
end_block
repeat_block ellipse_draw
repeat_block ellipse_draw
repeat_block ellipse_draw
repeat_block ellipse_draw
repeat_block ellipse_draw
resetMatrix
translate 0 100
scale 1 2
repeat_block ellipse_draw
repeat_block ellipse_draw
repeat_block ellipse_draw
repeat_block ellipse_draw
repeat_block ellipse_draw
repeat_block ellipse_draw

View File

@ -0,0 +1,62 @@
# Version: 1
setRenderHint Antialiasing
setPen #00ff00
translate 10 10
# standard draw
begin_block gradient
gradient_clearStops
gradient_appendStop 0 red
gradient_appendStop 0.25 orange
gradient_appendStop 0.5 yellow
gradient_appendStop 0.8 green
gradient_appendStop 1 cyan
gradient_setSpread PadSpread
gradient_setRadial 110 100 230 230 240
drawRect 0 0 300 300
end_block gradient
# Rotation w/o smooth xform
save
translate 350 0
save
setRenderHint SmoothPixmapTransform on
mapQuadToQuad 0 0 0 300 300 300 300 0 0 50 0 200 300 300 300 0
repeat_block gradient
restore
restore
translate 0 320
save
setRenderHint SmoothPixmapTransform on
mapQuadToQuad 0 0 0 300 300 300 300 0 0 0 100 300 200 300 300 0
repeat_block gradient
restore
save
translate 350 0
save
setRenderHint SmoothPixmapTransform on
mapQuadToQuad 0 0 0 300 300 300 300 0 0 0 0 300 300 250 300 50
repeat_block gradient
restore
restore
resetMatrix
setPen black
translate 125 20
drawText 0 0 "No transform"
translate 350 0
drawText 0 0 "Left Tilted"
resetMatrix
translate 125 350
drawText 0 0 "Bottom Tilted"
translate 350 0
drawText 0 0 "Right Tilted"
translate 120 0

Some files were not shown because too many files have changed in this diff Show More