├── bindings └── generated │ └── placeholder.txt ├── tests ├── config.nims ├── paths │ ├── arc.png │ ├── ButtCap.png │ ├── RoundCap.png │ ├── arcTo1.png │ ├── arcTo2.png │ ├── arcTo3.png │ ├── boxBevel.png │ ├── boxMiter.png │ ├── boxRound.png │ ├── dashes.png │ ├── polygon3.png │ ├── polygon4.png │ ├── polygon5.png │ ├── polygon6.png │ ├── polygon7.png │ ├── polygon8.png │ ├── rectMask.png │ ├── SquareCap.png │ ├── paintImage.png │ ├── paintSolid.png │ ├── pathHeart.png │ ├── pathSwish.png │ ├── pixelScale.png │ ├── rectMaskAA.png │ ├── opacityFill.png │ ├── opacityStroke.png │ ├── path0pxCover.png │ ├── path1pxCover.png │ ├── pathBottomArc.png │ ├── pathCornerArc.png │ ├── pathRoundRect.png │ ├── pathStroke1.png │ ├── pathStroke2.png │ ├── pathStroke3.png │ ├── selfclosing.png │ ├── fillImagePaint.png │ ├── gradientAngular.png │ ├── gradientLinear.png │ ├── gradientLinear2.png │ ├── gradientRadial.png │ ├── paintImageTiled.png │ ├── pathRotatedArc.png │ ├── pathStroke1Big.png │ ├── rectExcludeMask.png │ ├── rectMaskStroke.png │ ├── paintImageOpacity.png │ ├── pathBlackRectangle.png │ ├── pathRedRectangle.png │ ├── rectExcludeMaskAA.png │ ├── fillTiledImagePaint.png │ ├── pathBlackRectangleZ.png │ ├── pathYellowRectangle.png │ ├── gradientAngularOpacity.png │ ├── paintImageTiledOpacity.png │ ├── pathInvertedCornerArc.png │ ├── miterLimit_10deg_2.00num.png │ ├── miterLimit_145deg_2.00num.png │ ├── miterLimit_145deg_3.32num.png │ ├── miterLimit_145deg_3.33num.png │ ├── miterLimit_155deg_2.00num.png │ ├── miterLimit_165deg_2.00num.png │ └── miterLimit_165deg_10.00num.png ├── images │ ├── pip1.png │ ├── rock.png │ ├── rhino.png │ ├── rotate0.png │ ├── turtle.png │ ├── drawRect.png │ ├── flipped1.png │ ├── flipped2.png │ ├── flipped3.png │ ├── rotate180.png │ ├── rotate270.png │ ├── rotate360.png │ ├── rotate90.png │ ├── scaleHalf.png │ ├── drawEllipse.png │ ├── drawPolygon.png │ ├── drawSegment.png │ ├── imageblur20.png │ ├── magnifiedBy2.png │ ├── magnifiedBy4.png │ ├── maskblur20.png │ ├── minifiedBy2.png │ ├── minifiedBy4.png │ ├── opaqueBounds.png │ ├── strokeRect.png │ ├── superimage1.png │ ├── superimage2.png │ ├── superimage3.png │ ├── superimage4.png │ ├── superimage5.png │ ├── superimage6.png │ ├── turtle@10x.png │ ├── imageblur20oob.png │ ├── strokeEllipse.png │ ├── strokePolygon.png │ ├── drawRoundedRect.png │ ├── fillOptimization.png │ ├── fillOptimization2.png │ ├── maskClearsOnDraw0.png │ ├── maskClearsOnDraw1.png │ ├── maskClearsOnDraw2.png │ ├── maskClearsOnDraw3.png │ ├── maskClearsOnDraw4.png │ ├── masters │ │ ├── smooth1.png │ │ ├── smooth10.png │ │ ├── smooth11.png │ │ ├── smooth12.png │ │ ├── smooth2.png │ │ ├── smooth3.png │ │ ├── smooth4.png │ │ ├── smooth5.png │ │ ├── smooth6.png │ │ ├── smooth7.png │ │ ├── smooth8.png │ │ ├── smooth9.png │ │ ├── minify_odd.png │ │ ├── rock_minified.png │ │ └── rock_minified2.png │ ├── minifiedMandrill.png │ └── strokeRoundedRect.png ├── fonts │ ├── PTSans.ttc │ ├── svg_ibm.png │ ├── svg_moon.png │ ├── Inter-Bold.ttf │ ├── NotoEmoji.otf │ ├── svg_changa.png │ ├── svg_dejavu.png │ ├── svg_ubuntu.png │ ├── Inter-Regular.ttf │ ├── PinyonScript.ttf │ ├── masters │ │ ├── cff.png │ │ ├── emoji.png │ │ ├── huge1.png │ │ ├── huge2.png │ │ ├── huge3.png │ │ ├── basic1.png │ │ ├── basic10.png │ │ ├── basic2.png │ │ ├── basic3.png │ │ ├── basic4.png │ │ ├── basic5.png │ │ ├── basic6.png │ │ ├── basic7.png │ │ ├── basic8.png │ │ ├── basic8b.png │ │ ├── basic9.png │ │ ├── cff_jp.png │ │ ├── lines1.png │ │ ├── lines2.png │ │ ├── paints1.png │ │ ├── pairs1.png │ │ ├── pairs2.png │ │ ├── pairs3.png │ │ ├── spans1.png │ │ ├── spans2.png │ │ ├── spans4.png │ │ ├── spans5.png │ │ ├── spans6.png │ │ ├── spans7.png │ │ ├── alignments.png │ │ ├── fallback.png │ │ ├── fallback2.png │ │ ├── image_fill.png │ │ ├── paragraph1.png │ │ ├── paragraph2.png │ │ ├── paragraph3.png │ │ ├── paragraph4.png │ │ ├── paragraph5.png │ │ ├── underline1.png │ │ ├── underline2.png │ │ ├── underline3.png │ │ ├── cff_wrapping.png │ │ ├── huge1_nokern.png │ │ ├── huge2_nokern.png │ │ ├── huge3_nokern.png │ │ ├── image_stroke.png │ │ ├── paragraph1_2.png │ │ ├── paragraph1_3.png │ │ ├── paragraph2_2.png │ │ ├── paragraph2_3.png │ │ ├── paragraph3_2.png │ │ ├── paragraph3_3.png │ │ ├── paragraph4_2.png │ │ ├── paragraph4_3.png │ │ ├── paragraph5_2.png │ │ ├── paragraph5_3.png │ │ ├── tofu_advance.png │ │ ├── cff_underline.png │ │ ├── strikethrough1.png │ │ ├── strikethrough2.png │ │ ├── strikethrough3.png │ │ ├── cff_strikethrough.png │ │ ├── customlineheight.png │ │ ├── image_paint_fill.png │ │ ├── paragraph1_nokern.png │ │ ├── paragraph2_nokern.png │ │ ├── paragraph3_nokern.png │ │ ├── paragraph4_nokern.png │ │ ├── paragraph5_nokern.png │ │ ├── selection_rects1.png │ │ ├── selection_rects2.png │ │ ├── selection_rects3.png │ │ ├── paragraph1_nokern_2.png │ │ ├── paragraph1_nokern_3.png │ │ ├── paragraph2_nokern_2.png │ │ ├── paragraph2_nokern_3.png │ │ ├── paragraph3_nokern_2.png │ │ ├── paragraph3_nokern_3.png │ │ ├── paragraph4_nokern_2.png │ │ ├── paragraph4_nokern_3.png │ │ ├── paragraph5_nokern_2.png │ │ └── paragraph5_nokern_3.png │ ├── Aclonica-Regular_1.ttf │ ├── NotoSans-Regular_4.ttf │ ├── NotoSansJP-Regular.ttf │ ├── Pacifico-Regular_4.ttf │ ├── Roboto-Regular_1.ttf │ ├── Ubuntu-Regular_1.ttf │ └── IBMPlexSans-Regular_2.ttf ├── contexts │ ├── clip_1.png │ ├── clip_1b.png │ ├── clip_1c.png │ ├── clip_1d.png │ ├── clip_1e.png │ ├── clip_1f.png │ ├── clip_2.png │ ├── clip_3.png │ ├── fill_1.png │ ├── save_1.png │ ├── scale_1.png │ ├── clip_text.png │ ├── draw_image.png │ ├── ellipse_1.png │ ├── fillText_1.png │ ├── moveTo_1.png │ ├── rotate_1.png │ ├── stroke_1.png │ ├── stroke_2.png │ ├── stroke_3.png │ ├── beginPath_1.png │ ├── blendmode_1.png │ ├── clearRect_1.png │ ├── closePath_1.png │ ├── strokeRect_1.png │ ├── strokeRect_2.png │ ├── strokeText_1.png │ ├── translate_1.png │ ├── bezierCurveTo_1.png │ ├── bezierCurveTo_2.png │ ├── globalAlpha_1.png │ ├── setLineDash_1.png │ ├── setTransform_1.png │ ├── textBaseline_1.png │ ├── draw_image_rhino.png │ ├── draw_image_rhino2.png │ ├── draw_image_scaled.png │ ├── paintSaveRestore.png │ ├── resetTransform_1.png │ ├── resetTransform_2.png │ ├── quadracticCurveTo_1.png │ ├── quadracticCurveTo_2.png │ ├── draw_image_self_scaled.png │ └── draw_image_translated.png ├── fileformats │ ├── gif │ │ ├── 3x5.gif │ │ ├── 3x5.png │ │ ├── audrey.gif │ │ ├── audrey.png │ │ ├── sunflower.gif │ │ ├── sunflower.png │ │ ├── newtons_cradle.gif │ │ └── newtons_cradle.png │ ├── png │ │ ├── lenna.png │ │ ├── mandrill.png │ │ ├── trailing_data.png │ │ └── pngsuite │ │ │ ├── PngSuite.png │ │ │ ├── basi0g01.png │ │ │ ├── basi0g02.png │ │ │ ├── basi0g04.png │ │ │ ├── basi0g08.png │ │ │ ├── basi0g16.png │ │ │ ├── basi2c08.png │ │ │ ├── basi2c16.png │ │ │ ├── basi3p01.png │ │ │ ├── basi3p02.png │ │ │ ├── basi3p04.png │ │ │ ├── basi3p08.png │ │ │ ├── basi4a08.png │ │ │ ├── basi4a16.png │ │ │ ├── basi6a08.png │ │ │ ├── basi6a16.png │ │ │ ├── basn0g01.png │ │ │ ├── basn0g02.png │ │ │ ├── basn0g04.png │ │ │ ├── basn0g08.png │ │ │ ├── basn0g16.png │ │ │ ├── basn2c08.png │ │ │ ├── basn2c16.png │ │ │ ├── basn3p01.png │ │ │ ├── basn3p02.png │ │ │ ├── basn3p04.png │ │ │ ├── basn3p08.png │ │ │ ├── basn4a08.png │ │ │ ├── basn4a16.png │ │ │ ├── basn6a08.png │ │ │ ├── basn6a16.png │ │ │ ├── bgai4a08.png │ │ │ ├── bgai4a16.png │ │ │ ├── bgan6a08.png │ │ │ ├── bgan6a16.png │ │ │ ├── bgbn4a08.png │ │ │ ├── bggn4a16.png │ │ │ ├── bgwn6a08.png │ │ │ ├── bgyn6a16.png │ │ │ ├── ccwn2c08.png │ │ │ ├── ccwn3p08.png │ │ │ ├── cdfn2c08.png │ │ │ ├── cdhn2c08.png │ │ │ ├── cdsn2c08.png │ │ │ ├── cdun2c08.png │ │ │ ├── ch1n3p04.png │ │ │ ├── ch2n3p08.png │ │ │ ├── cm0n0g04.png │ │ │ ├── cm7n0g04.png │ │ │ ├── cm9n0g04.png │ │ │ ├── cs3n2c16.png │ │ │ ├── cs3n3p08.png │ │ │ ├── cs5n2c08.png │ │ │ ├── cs5n3p08.png │ │ │ ├── cs8n2c08.png │ │ │ ├── cs8n3p08.png │ │ │ ├── ct0n0g04.png │ │ │ ├── ct1n0g04.png │ │ │ ├── cten0g04.png │ │ │ ├── ctfn0g04.png │ │ │ ├── ctgn0g04.png │ │ │ ├── cthn0g04.png │ │ │ ├── ctjn0g04.png │ │ │ ├── ctzn0g04.png │ │ │ ├── exif2c08.png │ │ │ ├── f00n0g08.png │ │ │ ├── f00n2c08.png │ │ │ ├── f01n0g08.png │ │ │ ├── f01n2c08.png │ │ │ ├── f02n0g08.png │ │ │ ├── f02n2c08.png │ │ │ ├── f03n0g08.png │ │ │ ├── f03n2c08.png │ │ │ ├── f04n0g08.png │ │ │ ├── f04n2c08.png │ │ │ ├── f99n0g04.png │ │ │ ├── g03n0g16.png │ │ │ ├── g03n2c08.png │ │ │ ├── g03n3p04.png │ │ │ ├── g04n0g16.png │ │ │ ├── g04n2c08.png │ │ │ ├── g04n3p04.png │ │ │ ├── g05n0g16.png │ │ │ ├── g05n2c08.png │ │ │ ├── g05n3p04.png │ │ │ ├── g07n0g16.png │ │ │ ├── g07n2c08.png │ │ │ ├── g07n3p04.png │ │ │ ├── g10n0g16.png │ │ │ ├── g10n2c08.png │ │ │ ├── g10n3p04.png │ │ │ ├── g25n0g16.png │ │ │ ├── g25n2c08.png │ │ │ ├── g25n3p04.png │ │ │ ├── oi1n0g16.png │ │ │ ├── oi1n2c16.png │ │ │ ├── oi2n0g16.png │ │ │ ├── oi2n2c16.png │ │ │ ├── oi4n0g16.png │ │ │ ├── oi4n2c16.png │ │ │ ├── oi9n0g16.png │ │ │ ├── oi9n2c16.png │ │ │ ├── pp0n2c16.png │ │ │ ├── pp0n6a08.png │ │ │ ├── ps1n0g08.png │ │ │ ├── ps1n2c16.png │ │ │ ├── ps2n0g08.png │ │ │ ├── ps2n2c16.png │ │ │ ├── s01i3p01.png │ │ │ ├── s01n3p01.png │ │ │ ├── s02i3p01.png │ │ │ ├── s02n3p01.png │ │ │ ├── s03i3p01.png │ │ │ ├── s03n3p01.png │ │ │ ├── s04i3p01.png │ │ │ ├── s04n3p01.png │ │ │ ├── s05i3p02.png │ │ │ ├── s05n3p02.png │ │ │ ├── s06i3p02.png │ │ │ ├── s06n3p02.png │ │ │ ├── s07i3p02.png │ │ │ ├── s07n3p02.png │ │ │ ├── s08i3p02.png │ │ │ ├── s08n3p02.png │ │ │ ├── s09i3p02.png │ │ │ ├── s09n3p02.png │ │ │ ├── s32i3p04.png │ │ │ ├── s32n3p04.png │ │ │ ├── s33i3p04.png │ │ │ ├── s33n3p04.png │ │ │ ├── s34i3p04.png │ │ │ ├── s34n3p04.png │ │ │ ├── s35i3p04.png │ │ │ ├── s35n3p04.png │ │ │ ├── s36i3p04.png │ │ │ ├── s36n3p04.png │ │ │ ├── s37i3p04.png │ │ │ ├── s37n3p04.png │ │ │ ├── s38i3p04.png │ │ │ ├── s38n3p04.png │ │ │ ├── s39i3p04.png │ │ │ ├── s39n3p04.png │ │ │ ├── s40i3p04.png │ │ │ ├── s40n3p04.png │ │ │ ├── tbbn0g04.png │ │ │ ├── tbbn2c16.png │ │ │ ├── tbbn3p08.png │ │ │ ├── tbgn2c16.png │ │ │ ├── tbgn3p08.png │ │ │ ├── tbrn2c08.png │ │ │ ├── tbwn0g16.png │ │ │ ├── tbwn3p08.png │ │ │ ├── tbyn3p08.png │ │ │ ├── tm3n3p02.png │ │ │ ├── tp0n0g08.png │ │ │ ├── tp0n2c08.png │ │ │ ├── tp0n3p08.png │ │ │ ├── tp1n3p08.png │ │ │ ├── xc1n0g08.png │ │ │ ├── xc9n2c08.png │ │ │ ├── xcrn0g04.png │ │ │ ├── xcsn0g01.png │ │ │ ├── xd0n2c08.png │ │ │ ├── xd3n2c08.png │ │ │ ├── xd9n2c08.png │ │ │ ├── xdtn0g01.png │ │ │ ├── xhdn0g08.png │ │ │ ├── xlfn0g04.png │ │ │ ├── xs1n0g01.png │ │ │ ├── xs2n0g01.png │ │ │ ├── xs4n0g01.png │ │ │ ├── xs7n0g01.png │ │ │ ├── z00n2c08.png │ │ │ ├── z03n2c08.png │ │ │ ├── z06n2c08.png │ │ │ ├── z09n2c08.png │ │ │ ├── PngSuite.LICENSE │ │ │ └── PngSuite.README │ ├── bmp │ │ ├── rgb.24.bmp │ │ ├── test4x2.bmp │ │ ├── knight.24.bmp │ │ ├── knight.32.bmp │ │ ├── test16x16.bmp │ │ ├── rgb.24.master.bmp │ │ ├── bmpsuite │ │ │ ├── 1bpp-1x1.bmp │ │ │ ├── 24bpp-1x1.bmp │ │ │ ├── 32bpp-1x1.bmp │ │ │ ├── 4bpp-1x1.bmp │ │ │ ├── 8bpp-1x1.bmp │ │ │ ├── 1bpp-320x240.bmp │ │ │ ├── 1bpp-321x240.bmp │ │ │ ├── 1bpp-322x240.bmp │ │ │ ├── 1bpp-323x240.bmp │ │ │ ├── 1bpp-324x240.bmp │ │ │ ├── 1bpp-325x240.bmp │ │ │ ├── 1bpp-326x240.bmp │ │ │ ├── 1bpp-327x240.bmp │ │ │ ├── 1bpp-328x240.bmp │ │ │ ├── 1bpp-329x240.bmp │ │ │ ├── 1bpp-330x240.bmp │ │ │ ├── 1bpp-331x240.bmp │ │ │ ├── 1bpp-332x240.bmp │ │ │ ├── 1bpp-333x240.bmp │ │ │ ├── 1bpp-334x240.bmp │ │ │ ├── 1bpp-335x240.bmp │ │ │ ├── 24bpp-320x240.bmp │ │ │ ├── 24bpp-321x240.bmp │ │ │ ├── 24bpp-322x240.bmp │ │ │ ├── 24bpp-323x240.bmp │ │ │ ├── 32bpp-320x240.bmp │ │ │ ├── 4bpp-320x240.bmp │ │ │ ├── 4bpp-321x240.bmp │ │ │ ├── 4bpp-322x240.bmp │ │ │ ├── 4bpp-323x240.bmp │ │ │ ├── 4bpp-324x240.bmp │ │ │ ├── 4bpp-325x240.bmp │ │ │ ├── 4bpp-326x240.bmp │ │ │ ├── 4bpp-327x240.bmp │ │ │ ├── 8bpp-1x64000.bmp │ │ │ ├── 8bpp-320x240.bmp │ │ │ ├── 8bpp-321x240.bmp │ │ │ ├── 8bpp-322x240.bmp │ │ │ ├── 8bpp-323x240.bmp │ │ │ ├── 1bpp-320x240-color.bmp │ │ │ ├── misleadingextension.jpg │ │ │ ├── spaces in filename.bmp │ │ │ ├── 1bpp-topdown-320x240.bmp │ │ │ ├── 24bpp-imagesize-zero.bmp │ │ │ ├── 24bpp-topdown-320x240.bmp │ │ │ ├── 32bpp-101110-320x240.bmp │ │ │ ├── 32bpp-topdown-320x240.bmp │ │ │ ├── 4bpp-topdown-320x240.bmp │ │ │ ├── 8bpp-colorsused-zero.bmp │ │ │ ├── 8bpp-topdown-320x240.bmp │ │ │ ├── 8bpp-colorsimportant-two.bmp │ │ │ ├── 1bpp-320x240-overlappingcolor.bmp │ │ │ ├── 32bpp-optimalpalette-320x240.bmp │ │ │ └── 32bpp-888-optimalpalette-320x240.bmp │ │ ├── knight.24.master.bmp │ │ └── knight.32.master.bmp │ ├── jpeg │ │ ├── itu-t81.pdf │ │ └── masters │ │ │ ├── 8x8.jpg │ │ │ ├── 8x8.png │ │ │ ├── blue.jpg │ │ │ ├── cat.png │ │ │ ├── red.jpg │ │ │ ├── 16x16.jpg │ │ │ ├── 16x16.png │ │ │ ├── black.jpg │ │ │ ├── green.jpg │ │ │ ├── white.jpg │ │ │ ├── cat_4_1_1.jpg │ │ │ ├── cat_4_2_0.jpg │ │ │ ├── cat_4_2_2.jpg │ │ │ ├── cat_4_4_4.jpg │ │ │ ├── f1-exif.jpg │ │ │ ├── f2-exif.jpg │ │ │ ├── f3-exif.jpg │ │ │ ├── f4-exif.jpg │ │ │ ├── f5-exif.jpg │ │ │ ├── f6-exif.jpg │ │ │ ├── f7-exif.jpg │ │ │ ├── f8-exif.jpg │ │ │ ├── mandrill.jpg │ │ │ ├── testimg.jpg │ │ │ ├── testimgp.jpg │ │ │ ├── testorig.jpg │ │ │ ├── testprog.jpg │ │ │ ├── progressive.jpg │ │ │ ├── quality_01.jpg │ │ │ ├── quality_10.jpg │ │ │ ├── quality_100.jpg │ │ │ ├── quality_25.jpg │ │ │ ├── quality_50.jpg │ │ │ ├── exif_overrun.jpg │ │ │ ├── grayscale_test.jpg │ │ │ ├── restartmarker.jpg │ │ │ ├── 8x8_progressive.jpg │ │ │ ├── 16x16_progressive.jpg │ │ │ ├── cat_4_2_0_progressive.jpg │ │ │ ├── cat_4_4_4_progressive.jpg │ │ │ ├── cat_restart_markers_5.jpg │ │ │ └── cat_restart_markers_5_progressive.jpg │ ├── ppm │ │ ├── feep.p3.ppm │ │ ├── feep.p6.ppm │ │ ├── feep.p3.hidepth.ppm │ │ ├── feep.p6.master.ppm │ │ ├── feep.p3.master.ppm │ │ └── feep.p3.hidepth.master.ppm │ ├── qoi │ │ ├── testcard.png │ │ ├── testcard.qoi │ │ ├── testcard_rgba.png │ │ └── testcard_rgba.qoi │ ├── svg │ │ ├── emojitwo.png │ │ ├── ionicons.png │ │ ├── openmoji.png │ │ ├── twemoji.png │ │ ├── noto-emoji.png │ │ ├── twbs-icons.png │ │ ├── masters │ │ │ ├── scale.png │ │ │ ├── dashes.png │ │ │ ├── dragon2.png │ │ │ ├── line01.png │ │ │ ├── quad01.png │ │ │ ├── rect01.png │ │ │ ├── rect02.png │ │ │ ├── circle01.png │ │ │ ├── ellipse01.png │ │ │ ├── miterlimit.png │ │ │ ├── polygon01.png │ │ │ ├── polyline01.png │ │ │ ├── triangle01.png │ │ │ ├── Ghostscript_Tiger.png │ │ │ └── accessibility-outline.png │ │ ├── simple-icons.png │ │ ├── tabler-icons.png │ │ ├── flat-color-icons.png │ │ ├── triangle01.svg │ │ ├── rect01.svg │ │ ├── circle01.svg │ │ ├── scale.svg │ │ ├── rect02.svg │ │ ├── ellipse01.svg │ │ ├── accessibility-outline.svg │ │ ├── polygon01.svg │ │ ├── polyline01.svg │ │ ├── line01.svg │ │ ├── dashes.svg │ │ ├── quad01.svg │ │ └── miterlimit.svg │ └── tiff │ │ └── pc260001.tif ├── bench_gif.nim ├── bench_qoi.nim ├── bench_svg.nim ├── test_tiff.nim ├── common.nim ├── test_jpeg.nim ├── megatest_fonts.nim ├── fuzz_leaks3.nim ├── fuzz_svg.nim ├── xrays.nim ├── all.nim ├── fuzz_jpeg.nim ├── fuzz_qoi.nim ├── fuzz_gif.nim ├── fuzz_png.nim ├── validate_jpeg.nim ├── test_qoi.nim ├── fuzz_opentype.nim ├── fuzz_leaks.nim ├── bench_jpeg.nim ├── validate_png.nim ├── fuzz_leaks2.nim ├── test_svg.nim ├── fuzz_bmp.nim ├── test_ppm.nim ├── bench_fonts.nim ├── test_png.nim ├── bench_paints.nim ├── validate_fonts.nim ├── test_gif.nim └── fuzz_image_draw.nim ├── docs └── banner.png ├── examples ├── blur.png ├── heart.png ├── line.png ├── shadow.png ├── square.png ├── text.png ├── tiger.png ├── gradient.png ├── masking.png ├── data │ ├── trees.png │ ├── mandrill.png │ ├── Roboto-Regular_1.ttf │ └── Ubuntu-Regular_1.ttf ├── image_tiled.png ├── text_spans.png ├── rounded_rectangle.png ├── square.nim ├── tiger.nim ├── line.nim ├── heart.nim ├── rounded_rectangle.nim ├── image_tiled.nim ├── text.nim ├── blur.nim ├── shadow.nim ├── gradient.nim ├── masking.nim └── text_spans.nim ├── experiments └── trapezoids │ ├── g.png │ ├── l.png │ ├── rect.png │ ├── heart.png │ ├── rhombus.png │ ├── output_diff.png │ ├── output_sweep.png │ └── output_scanline.png ├── .gitignore ├── src └── pixie │ ├── simd.nim │ └── simd │ └── avx.nim ├── .github └── workflows │ ├── build.yml │ └── docs.yml ├── LICENSE ├── pixie.nimble └── tools └── gen_readme.nim /bindings/generated/placeholder.txt: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/config.nims: -------------------------------------------------------------------------------- 1 | --path:"../src" 2 | -------------------------------------------------------------------------------- /docs/banner.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/docs/banner.png -------------------------------------------------------------------------------- /examples/blur.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/examples/blur.png -------------------------------------------------------------------------------- /examples/heart.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/examples/heart.png -------------------------------------------------------------------------------- /examples/line.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/examples/line.png -------------------------------------------------------------------------------- /examples/shadow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/examples/shadow.png -------------------------------------------------------------------------------- /examples/square.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/examples/square.png -------------------------------------------------------------------------------- /examples/text.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/examples/text.png -------------------------------------------------------------------------------- /examples/tiger.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/examples/tiger.png -------------------------------------------------------------------------------- /tests/paths/arc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/arc.png -------------------------------------------------------------------------------- /examples/gradient.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/examples/gradient.png -------------------------------------------------------------------------------- /examples/masking.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/examples/masking.png -------------------------------------------------------------------------------- /tests/images/pip1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/pip1.png -------------------------------------------------------------------------------- /tests/images/rock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/rock.png -------------------------------------------------------------------------------- /examples/data/trees.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/examples/data/trees.png -------------------------------------------------------------------------------- /examples/image_tiled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/examples/image_tiled.png -------------------------------------------------------------------------------- /examples/text_spans.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/examples/text_spans.png -------------------------------------------------------------------------------- /tests/fonts/PTSans.ttc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/PTSans.ttc -------------------------------------------------------------------------------- /tests/fonts/svg_ibm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/svg_ibm.png -------------------------------------------------------------------------------- /tests/fonts/svg_moon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/svg_moon.png -------------------------------------------------------------------------------- /tests/images/rhino.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/rhino.png -------------------------------------------------------------------------------- /tests/images/rotate0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/rotate0.png -------------------------------------------------------------------------------- /tests/images/turtle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/turtle.png -------------------------------------------------------------------------------- /tests/paths/ButtCap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/ButtCap.png -------------------------------------------------------------------------------- /tests/paths/RoundCap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/RoundCap.png -------------------------------------------------------------------------------- /tests/paths/arcTo1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/arcTo1.png -------------------------------------------------------------------------------- /tests/paths/arcTo2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/arcTo2.png -------------------------------------------------------------------------------- /tests/paths/arcTo3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/arcTo3.png -------------------------------------------------------------------------------- /tests/paths/boxBevel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/boxBevel.png -------------------------------------------------------------------------------- /tests/paths/boxMiter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/boxMiter.png -------------------------------------------------------------------------------- /tests/paths/boxRound.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/boxRound.png -------------------------------------------------------------------------------- /tests/paths/dashes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/dashes.png -------------------------------------------------------------------------------- /tests/paths/polygon3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/polygon3.png -------------------------------------------------------------------------------- /tests/paths/polygon4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/polygon4.png -------------------------------------------------------------------------------- /tests/paths/polygon5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/polygon5.png -------------------------------------------------------------------------------- /tests/paths/polygon6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/polygon6.png -------------------------------------------------------------------------------- /tests/paths/polygon7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/polygon7.png -------------------------------------------------------------------------------- /tests/paths/polygon8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/polygon8.png -------------------------------------------------------------------------------- /tests/paths/rectMask.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/rectMask.png -------------------------------------------------------------------------------- /examples/data/mandrill.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/examples/data/mandrill.png -------------------------------------------------------------------------------- /tests/contexts/clip_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/clip_1.png -------------------------------------------------------------------------------- /tests/contexts/clip_1b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/clip_1b.png -------------------------------------------------------------------------------- /tests/contexts/clip_1c.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/clip_1c.png -------------------------------------------------------------------------------- /tests/contexts/clip_1d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/clip_1d.png -------------------------------------------------------------------------------- /tests/contexts/clip_1e.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/clip_1e.png -------------------------------------------------------------------------------- /tests/contexts/clip_1f.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/clip_1f.png -------------------------------------------------------------------------------- /tests/contexts/clip_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/clip_2.png -------------------------------------------------------------------------------- /tests/contexts/clip_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/clip_3.png -------------------------------------------------------------------------------- /tests/contexts/fill_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/fill_1.png -------------------------------------------------------------------------------- /tests/contexts/save_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/save_1.png -------------------------------------------------------------------------------- /tests/contexts/scale_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/scale_1.png -------------------------------------------------------------------------------- /tests/fonts/Inter-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/Inter-Bold.ttf -------------------------------------------------------------------------------- /tests/fonts/NotoEmoji.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/NotoEmoji.otf -------------------------------------------------------------------------------- /tests/fonts/svg_changa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/svg_changa.png -------------------------------------------------------------------------------- /tests/fonts/svg_dejavu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/svg_dejavu.png -------------------------------------------------------------------------------- /tests/fonts/svg_ubuntu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/svg_ubuntu.png -------------------------------------------------------------------------------- /tests/images/drawRect.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/drawRect.png -------------------------------------------------------------------------------- /tests/images/flipped1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/flipped1.png -------------------------------------------------------------------------------- /tests/images/flipped2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/flipped2.png -------------------------------------------------------------------------------- /tests/images/flipped3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/flipped3.png -------------------------------------------------------------------------------- /tests/images/rotate180.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/rotate180.png -------------------------------------------------------------------------------- /tests/images/rotate270.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/rotate270.png -------------------------------------------------------------------------------- /tests/images/rotate360.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/rotate360.png -------------------------------------------------------------------------------- /tests/images/rotate90.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/rotate90.png -------------------------------------------------------------------------------- /tests/images/scaleHalf.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/scaleHalf.png -------------------------------------------------------------------------------- /tests/paths/SquareCap.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/SquareCap.png -------------------------------------------------------------------------------- /tests/paths/paintImage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/paintImage.png -------------------------------------------------------------------------------- /tests/paths/paintSolid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/paintSolid.png -------------------------------------------------------------------------------- /tests/paths/pathHeart.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/pathHeart.png -------------------------------------------------------------------------------- /tests/paths/pathSwish.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/pathSwish.png -------------------------------------------------------------------------------- /tests/paths/pixelScale.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/pixelScale.png -------------------------------------------------------------------------------- /tests/paths/rectMaskAA.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/rectMaskAA.png -------------------------------------------------------------------------------- /experiments/trapezoids/g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/experiments/trapezoids/g.png -------------------------------------------------------------------------------- /experiments/trapezoids/l.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/experiments/trapezoids/l.png -------------------------------------------------------------------------------- /tests/contexts/clip_text.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/clip_text.png -------------------------------------------------------------------------------- /tests/contexts/draw_image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/draw_image.png -------------------------------------------------------------------------------- /tests/contexts/ellipse_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/ellipse_1.png -------------------------------------------------------------------------------- /tests/contexts/fillText_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/fillText_1.png -------------------------------------------------------------------------------- /tests/contexts/moveTo_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/moveTo_1.png -------------------------------------------------------------------------------- /tests/contexts/rotate_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/rotate_1.png -------------------------------------------------------------------------------- /tests/contexts/stroke_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/stroke_1.png -------------------------------------------------------------------------------- /tests/contexts/stroke_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/stroke_2.png -------------------------------------------------------------------------------- /tests/contexts/stroke_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/stroke_3.png -------------------------------------------------------------------------------- /tests/fileformats/gif/3x5.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/gif/3x5.gif -------------------------------------------------------------------------------- /tests/fileformats/gif/3x5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/gif/3x5.png -------------------------------------------------------------------------------- /tests/fonts/Inter-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/Inter-Regular.ttf -------------------------------------------------------------------------------- /tests/fonts/PinyonScript.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/PinyonScript.ttf -------------------------------------------------------------------------------- /tests/fonts/masters/cff.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/cff.png -------------------------------------------------------------------------------- /tests/fonts/masters/emoji.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/emoji.png -------------------------------------------------------------------------------- /tests/fonts/masters/huge1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/huge1.png -------------------------------------------------------------------------------- /tests/fonts/masters/huge2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/huge2.png -------------------------------------------------------------------------------- /tests/fonts/masters/huge3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/huge3.png -------------------------------------------------------------------------------- /tests/images/drawEllipse.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/drawEllipse.png -------------------------------------------------------------------------------- /tests/images/drawPolygon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/drawPolygon.png -------------------------------------------------------------------------------- /tests/images/drawSegment.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/drawSegment.png -------------------------------------------------------------------------------- /tests/images/imageblur20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/imageblur20.png -------------------------------------------------------------------------------- /tests/images/magnifiedBy2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/magnifiedBy2.png -------------------------------------------------------------------------------- /tests/images/magnifiedBy4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/magnifiedBy4.png -------------------------------------------------------------------------------- /tests/images/maskblur20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/maskblur20.png -------------------------------------------------------------------------------- /tests/images/minifiedBy2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/minifiedBy2.png -------------------------------------------------------------------------------- /tests/images/minifiedBy4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/minifiedBy4.png -------------------------------------------------------------------------------- /tests/images/opaqueBounds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/opaqueBounds.png -------------------------------------------------------------------------------- /tests/images/strokeRect.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/strokeRect.png -------------------------------------------------------------------------------- /tests/images/superimage1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/superimage1.png -------------------------------------------------------------------------------- /tests/images/superimage2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/superimage2.png -------------------------------------------------------------------------------- /tests/images/superimage3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/superimage3.png -------------------------------------------------------------------------------- /tests/images/superimage4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/superimage4.png -------------------------------------------------------------------------------- /tests/images/superimage5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/superimage5.png -------------------------------------------------------------------------------- /tests/images/superimage6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/superimage6.png -------------------------------------------------------------------------------- /tests/images/turtle@10x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/turtle@10x.png -------------------------------------------------------------------------------- /tests/paths/opacityFill.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/opacityFill.png -------------------------------------------------------------------------------- /tests/paths/opacityStroke.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/opacityStroke.png -------------------------------------------------------------------------------- /tests/paths/path0pxCover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/path0pxCover.png -------------------------------------------------------------------------------- /tests/paths/path1pxCover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/path1pxCover.png -------------------------------------------------------------------------------- /tests/paths/pathBottomArc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/pathBottomArc.png -------------------------------------------------------------------------------- /tests/paths/pathCornerArc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/pathCornerArc.png -------------------------------------------------------------------------------- /tests/paths/pathRoundRect.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/pathRoundRect.png -------------------------------------------------------------------------------- /tests/paths/pathStroke1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/pathStroke1.png -------------------------------------------------------------------------------- /tests/paths/pathStroke2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/pathStroke2.png -------------------------------------------------------------------------------- /tests/paths/pathStroke3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/pathStroke3.png -------------------------------------------------------------------------------- /tests/paths/selfclosing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/selfclosing.png -------------------------------------------------------------------------------- /examples/rounded_rectangle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/examples/rounded_rectangle.png -------------------------------------------------------------------------------- /experiments/trapezoids/rect.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/experiments/trapezoids/rect.png -------------------------------------------------------------------------------- /tests/contexts/beginPath_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/beginPath_1.png -------------------------------------------------------------------------------- /tests/contexts/blendmode_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/blendmode_1.png -------------------------------------------------------------------------------- /tests/contexts/clearRect_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/clearRect_1.png -------------------------------------------------------------------------------- /tests/contexts/closePath_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/closePath_1.png -------------------------------------------------------------------------------- /tests/contexts/strokeRect_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/strokeRect_1.png -------------------------------------------------------------------------------- /tests/contexts/strokeRect_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/strokeRect_2.png -------------------------------------------------------------------------------- /tests/contexts/strokeText_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/strokeText_1.png -------------------------------------------------------------------------------- /tests/contexts/translate_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/translate_1.png -------------------------------------------------------------------------------- /tests/fileformats/png/lenna.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/lenna.png -------------------------------------------------------------------------------- /tests/fonts/masters/basic1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/basic1.png -------------------------------------------------------------------------------- /tests/fonts/masters/basic10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/basic10.png -------------------------------------------------------------------------------- /tests/fonts/masters/basic2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/basic2.png -------------------------------------------------------------------------------- /tests/fonts/masters/basic3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/basic3.png -------------------------------------------------------------------------------- /tests/fonts/masters/basic4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/basic4.png -------------------------------------------------------------------------------- /tests/fonts/masters/basic5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/basic5.png -------------------------------------------------------------------------------- /tests/fonts/masters/basic6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/basic6.png -------------------------------------------------------------------------------- /tests/fonts/masters/basic7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/basic7.png -------------------------------------------------------------------------------- /tests/fonts/masters/basic8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/basic8.png -------------------------------------------------------------------------------- /tests/fonts/masters/basic8b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/basic8b.png -------------------------------------------------------------------------------- /tests/fonts/masters/basic9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/basic9.png -------------------------------------------------------------------------------- /tests/fonts/masters/cff_jp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/cff_jp.png -------------------------------------------------------------------------------- /tests/fonts/masters/lines1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/lines1.png -------------------------------------------------------------------------------- /tests/fonts/masters/lines2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/lines2.png -------------------------------------------------------------------------------- /tests/fonts/masters/paints1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paints1.png -------------------------------------------------------------------------------- /tests/fonts/masters/pairs1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/pairs1.png -------------------------------------------------------------------------------- /tests/fonts/masters/pairs2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/pairs2.png -------------------------------------------------------------------------------- /tests/fonts/masters/pairs3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/pairs3.png -------------------------------------------------------------------------------- /tests/fonts/masters/spans1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/spans1.png -------------------------------------------------------------------------------- /tests/fonts/masters/spans2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/spans2.png -------------------------------------------------------------------------------- /tests/fonts/masters/spans4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/spans4.png -------------------------------------------------------------------------------- /tests/fonts/masters/spans5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/spans5.png -------------------------------------------------------------------------------- /tests/fonts/masters/spans6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/spans6.png -------------------------------------------------------------------------------- /tests/fonts/masters/spans7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/spans7.png -------------------------------------------------------------------------------- /tests/images/imageblur20oob.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/imageblur20oob.png -------------------------------------------------------------------------------- /tests/images/strokeEllipse.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/strokeEllipse.png -------------------------------------------------------------------------------- /tests/images/strokePolygon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/strokePolygon.png -------------------------------------------------------------------------------- /tests/paths/fillImagePaint.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/fillImagePaint.png -------------------------------------------------------------------------------- /tests/paths/gradientAngular.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/gradientAngular.png -------------------------------------------------------------------------------- /tests/paths/gradientLinear.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/gradientLinear.png -------------------------------------------------------------------------------- /tests/paths/gradientLinear2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/gradientLinear2.png -------------------------------------------------------------------------------- /tests/paths/gradientRadial.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/gradientRadial.png -------------------------------------------------------------------------------- /tests/paths/paintImageTiled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/paintImageTiled.png -------------------------------------------------------------------------------- /tests/paths/pathRotatedArc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/pathRotatedArc.png -------------------------------------------------------------------------------- /tests/paths/pathStroke1Big.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/pathStroke1Big.png -------------------------------------------------------------------------------- /tests/paths/rectExcludeMask.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/rectExcludeMask.png -------------------------------------------------------------------------------- /tests/paths/rectMaskStroke.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/rectMaskStroke.png -------------------------------------------------------------------------------- /examples/data/Roboto-Regular_1.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/examples/data/Roboto-Regular_1.ttf -------------------------------------------------------------------------------- /examples/data/Ubuntu-Regular_1.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/examples/data/Ubuntu-Regular_1.ttf -------------------------------------------------------------------------------- /experiments/trapezoids/heart.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/experiments/trapezoids/heart.png -------------------------------------------------------------------------------- /experiments/trapezoids/rhombus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/experiments/trapezoids/rhombus.png -------------------------------------------------------------------------------- /tests/contexts/bezierCurveTo_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/bezierCurveTo_1.png -------------------------------------------------------------------------------- /tests/contexts/bezierCurveTo_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/bezierCurveTo_2.png -------------------------------------------------------------------------------- /tests/contexts/globalAlpha_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/globalAlpha_1.png -------------------------------------------------------------------------------- /tests/contexts/setLineDash_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/setLineDash_1.png -------------------------------------------------------------------------------- /tests/contexts/setTransform_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/setTransform_1.png -------------------------------------------------------------------------------- /tests/contexts/textBaseline_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/textBaseline_1.png -------------------------------------------------------------------------------- /tests/fileformats/bmp/rgb.24.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/rgb.24.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/test4x2.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/test4x2.bmp -------------------------------------------------------------------------------- /tests/fileformats/gif/audrey.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/gif/audrey.gif -------------------------------------------------------------------------------- /tests/fileformats/gif/audrey.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/gif/audrey.png -------------------------------------------------------------------------------- /tests/fileformats/jpeg/itu-t81.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/itu-t81.pdf -------------------------------------------------------------------------------- /tests/fileformats/png/mandrill.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/mandrill.png -------------------------------------------------------------------------------- /tests/fileformats/ppm/feep.p3.ppm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/ppm/feep.p3.ppm -------------------------------------------------------------------------------- /tests/fileformats/ppm/feep.p6.ppm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/ppm/feep.p6.ppm -------------------------------------------------------------------------------- /tests/fileformats/qoi/testcard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/qoi/testcard.png -------------------------------------------------------------------------------- /tests/fileformats/qoi/testcard.qoi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/qoi/testcard.qoi -------------------------------------------------------------------------------- /tests/fileformats/svg/emojitwo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/svg/emojitwo.png -------------------------------------------------------------------------------- /tests/fileformats/svg/ionicons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/svg/ionicons.png -------------------------------------------------------------------------------- /tests/fileformats/svg/openmoji.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/svg/openmoji.png -------------------------------------------------------------------------------- /tests/fileformats/svg/twemoji.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/svg/twemoji.png -------------------------------------------------------------------------------- /tests/fonts/Aclonica-Regular_1.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/Aclonica-Regular_1.ttf -------------------------------------------------------------------------------- /tests/fonts/NotoSans-Regular_4.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/NotoSans-Regular_4.ttf -------------------------------------------------------------------------------- /tests/fonts/NotoSansJP-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/NotoSansJP-Regular.ttf -------------------------------------------------------------------------------- /tests/fonts/Pacifico-Regular_4.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/Pacifico-Regular_4.ttf -------------------------------------------------------------------------------- /tests/fonts/Roboto-Regular_1.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/Roboto-Regular_1.ttf -------------------------------------------------------------------------------- /tests/fonts/Ubuntu-Regular_1.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/Ubuntu-Regular_1.ttf -------------------------------------------------------------------------------- /tests/fonts/masters/alignments.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/alignments.png -------------------------------------------------------------------------------- /tests/fonts/masters/fallback.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/fallback.png -------------------------------------------------------------------------------- /tests/fonts/masters/fallback2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/fallback2.png -------------------------------------------------------------------------------- /tests/fonts/masters/image_fill.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/image_fill.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph1.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph2.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph3.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph4.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph5.png -------------------------------------------------------------------------------- /tests/fonts/masters/underline1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/underline1.png -------------------------------------------------------------------------------- /tests/fonts/masters/underline2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/underline2.png -------------------------------------------------------------------------------- /tests/fonts/masters/underline3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/underline3.png -------------------------------------------------------------------------------- /tests/images/drawRoundedRect.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/drawRoundedRect.png -------------------------------------------------------------------------------- /tests/images/fillOptimization.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/fillOptimization.png -------------------------------------------------------------------------------- /tests/images/fillOptimization2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/fillOptimization2.png -------------------------------------------------------------------------------- /tests/images/maskClearsOnDraw0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/maskClearsOnDraw0.png -------------------------------------------------------------------------------- /tests/images/maskClearsOnDraw1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/maskClearsOnDraw1.png -------------------------------------------------------------------------------- /tests/images/maskClearsOnDraw2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/maskClearsOnDraw2.png -------------------------------------------------------------------------------- /tests/images/maskClearsOnDraw3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/maskClearsOnDraw3.png -------------------------------------------------------------------------------- /tests/images/maskClearsOnDraw4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/maskClearsOnDraw4.png -------------------------------------------------------------------------------- /tests/images/masters/smooth1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/masters/smooth1.png -------------------------------------------------------------------------------- /tests/images/masters/smooth10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/masters/smooth10.png -------------------------------------------------------------------------------- /tests/images/masters/smooth11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/masters/smooth11.png -------------------------------------------------------------------------------- /tests/images/masters/smooth12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/masters/smooth12.png -------------------------------------------------------------------------------- /tests/images/masters/smooth2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/masters/smooth2.png -------------------------------------------------------------------------------- /tests/images/masters/smooth3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/masters/smooth3.png -------------------------------------------------------------------------------- /tests/images/masters/smooth4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/masters/smooth4.png -------------------------------------------------------------------------------- /tests/images/masters/smooth5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/masters/smooth5.png -------------------------------------------------------------------------------- /tests/images/masters/smooth6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/masters/smooth6.png -------------------------------------------------------------------------------- /tests/images/masters/smooth7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/masters/smooth7.png -------------------------------------------------------------------------------- /tests/images/masters/smooth8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/masters/smooth8.png -------------------------------------------------------------------------------- /tests/images/masters/smooth9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/masters/smooth9.png -------------------------------------------------------------------------------- /tests/images/minifiedMandrill.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/minifiedMandrill.png -------------------------------------------------------------------------------- /tests/images/strokeRoundedRect.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/strokeRoundedRect.png -------------------------------------------------------------------------------- /tests/paths/paintImageOpacity.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/paintImageOpacity.png -------------------------------------------------------------------------------- /tests/paths/pathBlackRectangle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/pathBlackRectangle.png -------------------------------------------------------------------------------- /tests/paths/pathRedRectangle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/pathRedRectangle.png -------------------------------------------------------------------------------- /tests/paths/rectExcludeMaskAA.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/rectExcludeMaskAA.png -------------------------------------------------------------------------------- /tests/contexts/draw_image_rhino.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/draw_image_rhino.png -------------------------------------------------------------------------------- /tests/contexts/draw_image_rhino2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/draw_image_rhino2.png -------------------------------------------------------------------------------- /tests/contexts/draw_image_scaled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/draw_image_scaled.png -------------------------------------------------------------------------------- /tests/contexts/paintSaveRestore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/paintSaveRestore.png -------------------------------------------------------------------------------- /tests/contexts/resetTransform_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/resetTransform_1.png -------------------------------------------------------------------------------- /tests/contexts/resetTransform_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/resetTransform_2.png -------------------------------------------------------------------------------- /tests/fileformats/bmp/knight.24.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/knight.24.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/knight.32.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/knight.32.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/test16x16.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/test16x16.bmp -------------------------------------------------------------------------------- /tests/fileformats/gif/sunflower.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/gif/sunflower.gif -------------------------------------------------------------------------------- /tests/fileformats/gif/sunflower.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/gif/sunflower.png -------------------------------------------------------------------------------- /tests/fileformats/svg/noto-emoji.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/svg/noto-emoji.png -------------------------------------------------------------------------------- /tests/fileformats/svg/twbs-icons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/svg/twbs-icons.png -------------------------------------------------------------------------------- /tests/fileformats/tiff/pc260001.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/tiff/pc260001.tif -------------------------------------------------------------------------------- /tests/fonts/masters/cff_wrapping.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/cff_wrapping.png -------------------------------------------------------------------------------- /tests/fonts/masters/huge1_nokern.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/huge1_nokern.png -------------------------------------------------------------------------------- /tests/fonts/masters/huge2_nokern.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/huge2_nokern.png -------------------------------------------------------------------------------- /tests/fonts/masters/huge3_nokern.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/huge3_nokern.png -------------------------------------------------------------------------------- /tests/fonts/masters/image_stroke.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/image_stroke.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph1_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph1_2.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph1_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph1_3.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph2_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph2_2.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph2_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph2_3.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph3_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph3_2.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph3_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph3_3.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph4_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph4_2.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph4_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph4_3.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph5_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph5_2.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph5_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph5_3.png -------------------------------------------------------------------------------- /tests/fonts/masters/tofu_advance.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/tofu_advance.png -------------------------------------------------------------------------------- /tests/images/masters/minify_odd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/masters/minify_odd.png -------------------------------------------------------------------------------- /tests/paths/fillTiledImagePaint.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/fillTiledImagePaint.png -------------------------------------------------------------------------------- /tests/paths/pathBlackRectangleZ.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/pathBlackRectangleZ.png -------------------------------------------------------------------------------- /tests/paths/pathYellowRectangle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/pathYellowRectangle.png -------------------------------------------------------------------------------- /experiments/trapezoids/output_diff.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/experiments/trapezoids/output_diff.png -------------------------------------------------------------------------------- /experiments/trapezoids/output_sweep.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/experiments/trapezoids/output_sweep.png -------------------------------------------------------------------------------- /tests/contexts/quadracticCurveTo_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/quadracticCurveTo_1.png -------------------------------------------------------------------------------- /tests/contexts/quadracticCurveTo_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/quadracticCurveTo_2.png -------------------------------------------------------------------------------- /tests/fileformats/bmp/rgb.24.master.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/rgb.24.master.bmp -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/8x8.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/8x8.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/8x8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/8x8.png -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/blue.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/blue.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/cat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/cat.png -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/red.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/red.jpg -------------------------------------------------------------------------------- /tests/fileformats/png/trailing_data.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/trailing_data.png -------------------------------------------------------------------------------- /tests/fileformats/qoi/testcard_rgba.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/qoi/testcard_rgba.png -------------------------------------------------------------------------------- /tests/fileformats/qoi/testcard_rgba.qoi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/qoi/testcard_rgba.qoi -------------------------------------------------------------------------------- /tests/fileformats/svg/masters/scale.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/svg/masters/scale.png -------------------------------------------------------------------------------- /tests/fileformats/svg/simple-icons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/svg/simple-icons.png -------------------------------------------------------------------------------- /tests/fileformats/svg/tabler-icons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/svg/tabler-icons.png -------------------------------------------------------------------------------- /tests/fonts/IBMPlexSans-Regular_2.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/IBMPlexSans-Regular_2.ttf -------------------------------------------------------------------------------- /tests/fonts/masters/cff_underline.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/cff_underline.png -------------------------------------------------------------------------------- /tests/fonts/masters/strikethrough1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/strikethrough1.png -------------------------------------------------------------------------------- /tests/fonts/masters/strikethrough2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/strikethrough2.png -------------------------------------------------------------------------------- /tests/fonts/masters/strikethrough3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/strikethrough3.png -------------------------------------------------------------------------------- /tests/images/masters/rock_minified.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/masters/rock_minified.png -------------------------------------------------------------------------------- /tests/images/masters/rock_minified2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/images/masters/rock_minified2.png -------------------------------------------------------------------------------- /tests/paths/gradientAngularOpacity.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/gradientAngularOpacity.png -------------------------------------------------------------------------------- /tests/paths/paintImageTiledOpacity.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/paintImageTiledOpacity.png -------------------------------------------------------------------------------- /tests/paths/pathInvertedCornerArc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/pathInvertedCornerArc.png -------------------------------------------------------------------------------- /tests/contexts/draw_image_self_scaled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/draw_image_self_scaled.png -------------------------------------------------------------------------------- /tests/contexts/draw_image_translated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/contexts/draw_image_translated.png -------------------------------------------------------------------------------- /tests/fileformats/gif/newtons_cradle.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/gif/newtons_cradle.gif -------------------------------------------------------------------------------- /tests/fileformats/gif/newtons_cradle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/gif/newtons_cradle.png -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/16x16.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/16x16.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/16x16.png -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/black.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/black.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/green.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/green.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/white.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/white.jpg -------------------------------------------------------------------------------- /tests/fileformats/ppm/feep.p3.hidepth.ppm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/ppm/feep.p3.hidepth.ppm -------------------------------------------------------------------------------- /tests/fileformats/ppm/feep.p6.master.ppm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/ppm/feep.p6.master.ppm -------------------------------------------------------------------------------- /tests/fileformats/svg/masters/dashes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/svg/masters/dashes.png -------------------------------------------------------------------------------- /tests/fileformats/svg/masters/dragon2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/svg/masters/dragon2.png -------------------------------------------------------------------------------- /tests/fileformats/svg/masters/line01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/svg/masters/line01.png -------------------------------------------------------------------------------- /tests/fileformats/svg/masters/quad01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/svg/masters/quad01.png -------------------------------------------------------------------------------- /tests/fileformats/svg/masters/rect01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/svg/masters/rect01.png -------------------------------------------------------------------------------- /tests/fileformats/svg/masters/rect02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/svg/masters/rect02.png -------------------------------------------------------------------------------- /tests/fonts/masters/cff_strikethrough.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/cff_strikethrough.png -------------------------------------------------------------------------------- /tests/fonts/masters/customlineheight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/customlineheight.png -------------------------------------------------------------------------------- /tests/fonts/masters/image_paint_fill.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/image_paint_fill.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph1_nokern.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph1_nokern.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph2_nokern.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph2_nokern.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph3_nokern.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph3_nokern.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph4_nokern.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph4_nokern.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph5_nokern.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph5_nokern.png -------------------------------------------------------------------------------- /tests/fonts/masters/selection_rects1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/selection_rects1.png -------------------------------------------------------------------------------- /tests/fonts/masters/selection_rects2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/selection_rects2.png -------------------------------------------------------------------------------- /tests/fonts/masters/selection_rects3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/selection_rects3.png -------------------------------------------------------------------------------- /tests/paths/miterLimit_10deg_2.00num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/miterLimit_10deg_2.00num.png -------------------------------------------------------------------------------- /tests/paths/miterLimit_145deg_2.00num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/miterLimit_145deg_2.00num.png -------------------------------------------------------------------------------- /tests/paths/miterLimit_145deg_3.32num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/miterLimit_145deg_3.32num.png -------------------------------------------------------------------------------- /tests/paths/miterLimit_145deg_3.33num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/miterLimit_145deg_3.33num.png -------------------------------------------------------------------------------- /tests/paths/miterLimit_155deg_2.00num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/miterLimit_155deg_2.00num.png -------------------------------------------------------------------------------- /tests/paths/miterLimit_165deg_2.00num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/miterLimit_165deg_2.00num.png -------------------------------------------------------------------------------- /experiments/trapezoids/output_scanline.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/experiments/trapezoids/output_scanline.png -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/1bpp-1x1.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/1bpp-1x1.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/24bpp-1x1.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/24bpp-1x1.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/32bpp-1x1.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/32bpp-1x1.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/4bpp-1x1.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/4bpp-1x1.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/8bpp-1x1.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/8bpp-1x1.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/knight.24.master.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/knight.24.master.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/knight.32.master.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/knight.32.master.bmp -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/cat_4_1_1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/cat_4_1_1.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/cat_4_2_0.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/cat_4_2_0.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/cat_4_2_2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/cat_4_2_2.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/cat_4_4_4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/cat_4_4_4.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/f1-exif.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/f1-exif.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/f2-exif.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/f2-exif.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/f3-exif.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/f3-exif.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/f4-exif.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/f4-exif.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/f5-exif.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/f5-exif.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/f6-exif.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/f6-exif.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/f7-exif.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/f7-exif.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/f8-exif.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/f8-exif.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/mandrill.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/mandrill.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/testimg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/testimg.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/testimgp.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/testimgp.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/testorig.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/testorig.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/testprog.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/testprog.jpg -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/PngSuite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/PngSuite.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basi0g01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basi0g01.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basi0g02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basi0g02.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basi0g04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basi0g04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basi0g08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basi0g08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basi0g16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basi0g16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basi2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basi2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basi2c16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basi2c16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basi3p01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basi3p01.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basi3p02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basi3p02.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basi3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basi3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basi3p08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basi3p08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basi4a08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basi4a08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basi4a16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basi4a16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basi6a08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basi6a08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basi6a16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basi6a16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basn0g01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basn0g01.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basn0g02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basn0g02.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basn0g04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basn0g04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basn0g08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basn0g08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basn0g16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basn0g16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basn2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basn2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basn2c16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basn2c16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basn3p01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basn3p01.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basn3p02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basn3p02.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basn3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basn3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basn3p08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basn3p08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basn4a08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basn4a08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basn4a16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basn4a16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basn6a08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basn6a08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/basn6a16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/basn6a16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/bgai4a08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/bgai4a08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/bgai4a16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/bgai4a16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/bgan6a08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/bgan6a08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/bgan6a16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/bgan6a16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/bgbn4a08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/bgbn4a08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/bggn4a16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/bggn4a16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/bgwn6a08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/bgwn6a08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/bgyn6a16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/bgyn6a16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/ccwn2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/ccwn2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/ccwn3p08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/ccwn3p08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/cdfn2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/cdfn2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/cdhn2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/cdhn2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/cdsn2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/cdsn2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/cdun2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/cdun2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/ch1n3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/ch1n3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/ch2n3p08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/ch2n3p08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/cm0n0g04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/cm0n0g04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/cm7n0g04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/cm7n0g04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/cm9n0g04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/cm9n0g04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/cs3n2c16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/cs3n2c16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/cs3n3p08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/cs3n3p08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/cs5n2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/cs5n2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/cs5n3p08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/cs5n3p08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/cs8n2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/cs8n2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/cs8n3p08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/cs8n3p08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/ct0n0g04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/ct0n0g04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/ct1n0g04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/ct1n0g04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/cten0g04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/cten0g04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/ctfn0g04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/ctfn0g04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/ctgn0g04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/ctgn0g04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/cthn0g04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/cthn0g04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/ctjn0g04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/ctjn0g04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/ctzn0g04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/ctzn0g04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/exif2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/exif2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/f00n0g08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/f00n0g08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/f00n2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/f00n2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/f01n0g08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/f01n0g08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/f01n2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/f01n2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/f02n0g08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/f02n0g08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/f02n2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/f02n2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/f03n0g08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/f03n0g08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/f03n2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/f03n2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/f04n0g08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/f04n0g08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/f04n2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/f04n2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/f99n0g04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/f99n0g04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/g03n0g16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/g03n0g16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/g03n2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/g03n2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/g03n3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/g03n3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/g04n0g16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/g04n0g16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/g04n2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/g04n2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/g04n3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/g04n3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/g05n0g16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/g05n0g16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/g05n2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/g05n2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/g05n3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/g05n3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/g07n0g16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/g07n0g16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/g07n2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/g07n2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/g07n3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/g07n3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/g10n0g16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/g10n0g16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/g10n2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/g10n2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/g10n3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/g10n3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/g25n0g16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/g25n0g16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/g25n2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/g25n2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/g25n3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/g25n3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/oi1n0g16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/oi1n0g16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/oi1n2c16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/oi1n2c16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/oi2n0g16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/oi2n0g16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/oi2n2c16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/oi2n2c16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/oi4n0g16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/oi4n0g16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/oi4n2c16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/oi4n2c16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/oi9n0g16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/oi9n0g16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/oi9n2c16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/oi9n2c16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/pp0n2c16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/pp0n2c16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/pp0n6a08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/pp0n6a08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/ps1n0g08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/ps1n0g08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/ps1n2c16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/ps1n2c16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/ps2n0g08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/ps2n0g08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/ps2n2c16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/ps2n2c16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s01i3p01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s01i3p01.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s01n3p01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s01n3p01.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s02i3p01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s02i3p01.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s02n3p01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s02n3p01.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s03i3p01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s03i3p01.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s03n3p01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s03n3p01.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s04i3p01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s04i3p01.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s04n3p01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s04n3p01.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s05i3p02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s05i3p02.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s05n3p02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s05n3p02.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s06i3p02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s06i3p02.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s06n3p02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s06n3p02.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s07i3p02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s07i3p02.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s07n3p02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s07n3p02.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s08i3p02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s08i3p02.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s08n3p02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s08n3p02.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s09i3p02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s09i3p02.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s09n3p02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s09n3p02.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s32i3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s32i3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s32n3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s32n3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s33i3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s33i3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s33n3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s33n3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s34i3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s34i3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s34n3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s34n3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s35i3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s35i3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s35n3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s35n3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s36i3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s36i3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s36n3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s36n3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s37i3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s37i3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s37n3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s37n3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s38i3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s38i3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s38n3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s38n3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s39i3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s39i3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s39n3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s39n3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s40i3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s40i3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/s40n3p04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/s40n3p04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/tbbn0g04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/tbbn0g04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/tbbn2c16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/tbbn2c16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/tbbn3p08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/tbbn3p08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/tbgn2c16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/tbgn2c16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/tbgn3p08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/tbgn3p08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/tbrn2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/tbrn2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/tbwn0g16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/tbwn0g16.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/tbwn3p08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/tbwn3p08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/tbyn3p08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/tbyn3p08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/tm3n3p02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/tm3n3p02.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/tp0n0g08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/tp0n0g08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/tp0n2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/tp0n2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/tp0n3p08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/tp0n3p08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/tp1n3p08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/tp1n3p08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/xc1n0g08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/xc1n0g08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/xc9n2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/xc9n2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/xcrn0g04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/xcrn0g04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/xcsn0g01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/xcsn0g01.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/xd0n2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/xd0n2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/xd3n2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/xd3n2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/xd9n2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/xd9n2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/xdtn0g01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/xdtn0g01.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/xhdn0g08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/xhdn0g08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/xlfn0g04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/xlfn0g04.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/xs1n0g01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/xs1n0g01.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/xs2n0g01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/xs2n0g01.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/xs4n0g01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/xs4n0g01.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/xs7n0g01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/xs7n0g01.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/z00n2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/z00n2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/z03n2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/z03n2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/z06n2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/z06n2c08.png -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/z09n2c08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/png/pngsuite/z09n2c08.png -------------------------------------------------------------------------------- /tests/fileformats/svg/flat-color-icons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/svg/flat-color-icons.png -------------------------------------------------------------------------------- /tests/fileformats/svg/masters/circle01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/svg/masters/circle01.png -------------------------------------------------------------------------------- /tests/fileformats/svg/masters/ellipse01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/svg/masters/ellipse01.png -------------------------------------------------------------------------------- /tests/fileformats/svg/masters/miterlimit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/svg/masters/miterlimit.png -------------------------------------------------------------------------------- /tests/fileformats/svg/masters/polygon01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/svg/masters/polygon01.png -------------------------------------------------------------------------------- /tests/fileformats/svg/masters/polyline01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/svg/masters/polyline01.png -------------------------------------------------------------------------------- /tests/fileformats/svg/masters/triangle01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/svg/masters/triangle01.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph1_nokern_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph1_nokern_2.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph1_nokern_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph1_nokern_3.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph2_nokern_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph2_nokern_2.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph2_nokern_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph2_nokern_3.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph3_nokern_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph3_nokern_2.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph3_nokern_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph3_nokern_3.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph4_nokern_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph4_nokern_2.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph4_nokern_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph4_nokern_3.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph5_nokern_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph5_nokern_2.png -------------------------------------------------------------------------------- /tests/fonts/masters/paragraph5_nokern_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fonts/masters/paragraph5_nokern_3.png -------------------------------------------------------------------------------- /tests/paths/miterLimit_165deg_10.00num.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/paths/miterLimit_165deg_10.00num.png -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/progressive.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/progressive.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/quality_01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/quality_01.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/quality_10.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/quality_10.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/quality_100.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/quality_100.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/quality_25.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/quality_25.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/quality_50.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/quality_50.jpg -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/1bpp-320x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/1bpp-320x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/1bpp-321x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/1bpp-321x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/1bpp-322x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/1bpp-322x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/1bpp-323x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/1bpp-323x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/1bpp-324x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/1bpp-324x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/1bpp-325x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/1bpp-325x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/1bpp-326x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/1bpp-326x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/1bpp-327x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/1bpp-327x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/1bpp-328x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/1bpp-328x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/1bpp-329x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/1bpp-329x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/1bpp-330x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/1bpp-330x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/1bpp-331x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/1bpp-331x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/1bpp-332x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/1bpp-332x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/1bpp-333x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/1bpp-333x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/1bpp-334x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/1bpp-334x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/1bpp-335x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/1bpp-335x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/24bpp-320x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/24bpp-320x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/24bpp-321x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/24bpp-321x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/24bpp-322x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/24bpp-322x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/24bpp-323x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/24bpp-323x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/32bpp-320x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/32bpp-320x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/4bpp-320x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/4bpp-320x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/4bpp-321x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/4bpp-321x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/4bpp-322x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/4bpp-322x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/4bpp-323x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/4bpp-323x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/4bpp-324x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/4bpp-324x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/4bpp-325x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/4bpp-325x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/4bpp-326x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/4bpp-326x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/4bpp-327x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/4bpp-327x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/8bpp-1x64000.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/8bpp-1x64000.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/8bpp-320x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/8bpp-320x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/8bpp-321x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/8bpp-321x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/8bpp-322x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/8bpp-322x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/8bpp-323x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/8bpp-323x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/exif_overrun.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/exif_overrun.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/grayscale_test.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/grayscale_test.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/restartmarker.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/restartmarker.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/8x8_progressive.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/8x8_progressive.jpg -------------------------------------------------------------------------------- /tests/fileformats/svg/masters/Ghostscript_Tiger.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/svg/masters/Ghostscript_Tiger.png -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/1bpp-320x240-color.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/1bpp-320x240-color.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/misleadingextension.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/misleadingextension.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/16x16_progressive.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/16x16_progressive.jpg -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/ spaces in filename.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/ spaces in filename.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/1bpp-topdown-320x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/1bpp-topdown-320x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/24bpp-imagesize-zero.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/24bpp-imagesize-zero.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/24bpp-topdown-320x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/24bpp-topdown-320x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/32bpp-101110-320x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/32bpp-101110-320x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/32bpp-topdown-320x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/32bpp-topdown-320x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/4bpp-topdown-320x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/4bpp-topdown-320x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/8bpp-colorsused-zero.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/8bpp-colorsused-zero.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/8bpp-topdown-320x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/8bpp-topdown-320x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/cat_4_2_0_progressive.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/cat_4_2_0_progressive.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/cat_4_4_4_progressive.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/cat_4_4_4_progressive.jpg -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/cat_restart_markers_5.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/cat_restart_markers_5.jpg -------------------------------------------------------------------------------- /tests/fileformats/svg/masters/accessibility-outline.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/svg/masters/accessibility-outline.png -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/8bpp-colorsimportant-two.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/8bpp-colorsimportant-two.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/1bpp-320x240-overlappingcolor.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/1bpp-320x240-overlappingcolor.bmp -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/32bpp-optimalpalette-320x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/32bpp-optimalpalette-320x240.bmp -------------------------------------------------------------------------------- /tests/bench_gif.nim: -------------------------------------------------------------------------------- 1 | import benchy, pixie/fileformats/gif 2 | 3 | let data = readFile("tests/fileformats/gif/audrey.gif") 4 | 5 | timeIt "gif decode": 6 | discard decodeGif(data) 7 | -------------------------------------------------------------------------------- /tests/fileformats/bmp/bmpsuite/32bpp-888-optimalpalette-320x240.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/bmp/bmpsuite/32bpp-888-optimalpalette-320x240.bmp -------------------------------------------------------------------------------- /tests/fileformats/jpeg/masters/cat_restart_markers_5_progressive.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/treeform/pixie/HEAD/tests/fileformats/jpeg/masters/cat_restart_markers_5_progressive.jpg -------------------------------------------------------------------------------- /tests/bench_qoi.nim: -------------------------------------------------------------------------------- 1 | import benchy, pixie/fileformats/qoi 2 | 3 | let data = readFile("tests/fileformats/qoi/testcard_rgba.qoi") 4 | 5 | timeIt "pixie decode": 6 | discard decodeQoi(data) 7 | -------------------------------------------------------------------------------- /tests/bench_svg.nim: -------------------------------------------------------------------------------- 1 | import benchy, pixie/fileformats/svg 2 | 3 | let 4 | data = readFile("tests/fileformats/svg/Ghostscript_Tiger.svg") 5 | parsed = parseSvg(data) 6 | 7 | timeIt "svg render": 8 | discard newImage(parsed) 9 | -------------------------------------------------------------------------------- /tests/test_tiff.nim: -------------------------------------------------------------------------------- 1 | import pixie, pixie/fileformats/tiff 2 | 3 | let 4 | t = decodeTiff(readFile("tests/fileformats/tiff/pc260001.tif")) 5 | image = newImage(t) 6 | # image.writeFile("tests/fileformats/tiff/pc260001.png") 7 | -------------------------------------------------------------------------------- /tests/common.nim: -------------------------------------------------------------------------------- 1 | import algorithm, os 2 | 3 | proc findAllFonts*(rootPath: string): seq[string] = 4 | for fontPath in walkDirRec(rootPath): 5 | if splitFile(fontPath).ext in [".ttf", ".otf"]: 6 | result.add(fontPath) 7 | result.sort() 8 | -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/PngSuite.LICENSE: -------------------------------------------------------------------------------- 1 | PngSuite 2 | -------- 3 | 4 | Permission to use, copy, modify and distribute these images for any 5 | purpose and without fee is hereby granted. 6 | 7 | 8 | (c) Willem van Schaik, 1996, 2011 9 | 10 | -------------------------------------------------------------------------------- /tests/fileformats/ppm/feep.p3.master.ppm: -------------------------------------------------------------------------------- 1 | P3 2 | # feep.p3.master.ppm 3 | 4 4 4 | 15 5 | 0 0 0 0 0 0 0 0 0 15 0 15 6 | 0 0 0 0 15 7 0 0 0 0 0 0 7 | 0 0 0 0 0 0 0 15 7 0 0 0 8 | 15 0 15 0 0 0 0 0 0 0 0 0 9 | -------------------------------------------------------------------------------- /tests/test_jpeg.nim: -------------------------------------------------------------------------------- 1 | import jpegsuite, pixie, pixie/fileformats/jpeg 2 | 3 | for file in jpegSuiteFiles: 4 | let 5 | image = readImage(file) 6 | dimensions = decodeJpegDimensions(readFile(file)) 7 | doAssert image.width == dimensions.width 8 | doAssert image.height == dimensions.height 9 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # ignore files with no extention: 2 | * 3 | !*/ 4 | !*.* 5 | 6 | # normal ignores: 7 | *.exe 8 | nimcache 9 | *.pdb 10 | *.ilk 11 | .* 12 | *.dll 13 | __pycache__ 14 | bindings/generated 15 | *.dSYM 16 | dump.txt 17 | tests/fileformats/jpeg/generated 18 | tests/fileformats/jpeg/diffs 19 | *.dylib 20 | tmp 21 | -------------------------------------------------------------------------------- /tests/megatest_fonts.nim: -------------------------------------------------------------------------------- 1 | import common, pixie 2 | 3 | # Clone https://github.com/treeform/fidgetfonts 4 | 5 | let fontPaths = findAllFonts("../fidgetfonts") 6 | 7 | for fontPath in fontPaths: 8 | echo fontPath 9 | try: 10 | var font = readFont(fontPath) 11 | except PixieError: 12 | echo "ERROR: ", getCurrentExceptionMsg() 13 | -------------------------------------------------------------------------------- /examples/square.nim: -------------------------------------------------------------------------------- 1 | import pixie 2 | 3 | let image = newImage(200, 200) 4 | image.fill(rgba(255, 255, 255, 255)) 5 | 6 | let ctx = newContext(image) 7 | ctx.fillStyle = rgba(255, 0, 0, 255) 8 | 9 | let 10 | pos = vec2(50, 50) 11 | wh = vec2(100, 100) 12 | 13 | ctx.fillRect(rect(pos, wh)) 14 | 15 | image.writeFile("examples/square.png") 16 | -------------------------------------------------------------------------------- /tests/fileformats/ppm/feep.p3.hidepth.master.ppm: -------------------------------------------------------------------------------- 1 | P3 2 | # feep.p3.hidepth.master.ppm 3 | 4 4 4 | 7919 # prime number chosen for test purposes 5 | 0 0 0 0 0 0 0 0 0 7919 0 7919 6 | 0 0 0 0 7919 3695 0 0 0 0 0 0 7 | 0 0 0 0 0 0 0 7919 3695 0 0 0 8 | 7919 0 7919 0 0 0 0 0 0 0 0 0 9 | -------------------------------------------------------------------------------- /examples/tiger.nim: -------------------------------------------------------------------------------- 1 | import pixie 2 | 3 | let image = newImage(200, 200) 4 | image.fill(rgba(255, 255, 255, 255)) 5 | 6 | let tiger = readImage("examples/data/tiger.svg") 7 | 8 | image.draw( 9 | tiger, 10 | translate(vec2(100, 100)) * 11 | scale(vec2(0.2, 0.2)) * 12 | translate(vec2(-450, -450)) 13 | ) 14 | 15 | image.writeFile("examples/tiger.png") 16 | -------------------------------------------------------------------------------- /examples/line.nim: -------------------------------------------------------------------------------- 1 | import pixie 2 | 3 | let image = newImage(200, 200) 4 | image.fill(rgba(255, 255, 255, 255)) 5 | 6 | let ctx = newContext(image) 7 | ctx.strokeStyle = "#FF5C00" 8 | ctx.lineWidth = 10 9 | 10 | let 11 | start = vec2(25, 25) 12 | stop = vec2(175, 175) 13 | 14 | ctx.strokeSegment(segment(start, stop)) 15 | 16 | image.writeFile("examples/line.png") 17 | -------------------------------------------------------------------------------- /examples/heart.nim: -------------------------------------------------------------------------------- 1 | import pixie 2 | 3 | let image = newImage(200, 200) 4 | image.fill(rgba(255, 255, 255, 255)) 5 | 6 | image.fillPath( 7 | """ 8 | M 20 60 9 | A 40 40 90 0 1 100 60 10 | A 40 40 90 0 1 180 60 11 | Q 180 120 100 180 12 | Q 20 120 20 60 13 | z 14 | """, 15 | parseHtmlColor("#FC427B").rgba 16 | ) 17 | 18 | image.writeFile("examples/heart.png") 19 | -------------------------------------------------------------------------------- /examples/rounded_rectangle.nim: -------------------------------------------------------------------------------- 1 | import pixie 2 | 3 | let image = newImage(200, 200) 4 | image.fill(rgba(255, 255, 255, 255)) 5 | 6 | let ctx = newContext(image) 7 | ctx.fillStyle = rgba(0, 255, 0, 255) 8 | 9 | let 10 | pos = vec2(50, 50) 11 | wh = vec2(100, 100) 12 | r = 25.0 13 | 14 | ctx.fillRoundedRect(rect(pos, wh), r) 15 | 16 | image.writeFile("examples/rounded_rectangle.png") 17 | -------------------------------------------------------------------------------- /tests/fuzz_leaks3.nim: -------------------------------------------------------------------------------- 1 | import pixie, pixie/fileformats/svg, random 2 | 3 | when not defined(pixieLeakCheck): 4 | quit("Requires -d:pixieLeakCheck") 5 | 6 | randomize() 7 | 8 | let data = readFile("tests/fileformats/svg/Ghostscript_Tiger.svg") 9 | 10 | for i in 0 ..< 100_000: 11 | var image = decodeSvg(data, rand(300 .. 1800), rand(30 .. 1800)) 12 | 13 | # image.writeFile("tests/fuzz_leaks3.png") 14 | # break 15 | -------------------------------------------------------------------------------- /tests/fuzz_svg.nim: -------------------------------------------------------------------------------- 1 | import pixie/common, pixie/fileformats/svg, random, strformat 2 | 3 | randomize() 4 | 5 | let original = readFile("tests/fileformats/svg/Ghostscript_Tiger.svg") 6 | 7 | for i in 0 ..< 10_000: 8 | var data = original 9 | let 10 | pos = rand(data.len) 11 | value = rand(255).char 12 | data[pos] = value 13 | echo &"{i} {pos} {value}" 14 | try: 15 | discard decodeSvg(data) 16 | except PixieError: 17 | discard 18 | -------------------------------------------------------------------------------- /examples/image_tiled.nim: -------------------------------------------------------------------------------- 1 | import pixie 2 | 3 | let image = newImage(200, 200) 4 | image.fill(rgba(255, 255, 255, 255)) 5 | 6 | let path = newPath() 7 | path.polygon( 8 | vec2(100, 100), 9 | 70, 10 | sides = 8 11 | ) 12 | 13 | let paint = newPaint(TiledImagePaint) 14 | paint.image = readImage("examples/data/mandrill.png") 15 | paint.imageMat = scale(vec2(0.08, 0.08)) 16 | 17 | image.fillPath(path, paint) 18 | image.writeFile("examples/image_tiled.png") 19 | -------------------------------------------------------------------------------- /tests/fileformats/svg/triangle01.svg: -------------------------------------------------------------------------------- 1 | 2 | 4 | Example triangle01- simple example of a 'path' 5 | A path that draws a triangle 6 | 8 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /examples/text.nim: -------------------------------------------------------------------------------- 1 | import pixie 2 | 3 | let image = newImage(200, 200) 4 | image.fill(rgba(255, 255, 255, 255)) 5 | 6 | var font = readFont("examples/data/Roboto-Regular_1.ttf") 7 | font.size = 20 8 | font.paint.color = color(1, 0, 0) 9 | 10 | let text = "Typesetting is the arrangement and composition of text in graphic design and publishing in both digital and traditional medias." 11 | 12 | image.fillText(font.typeset(text, vec2(180, 180)), translate(vec2(10, 10))) 13 | image.writeFile("examples/text.png") 14 | -------------------------------------------------------------------------------- /tests/xrays.nim: -------------------------------------------------------------------------------- 1 | import os, pixie, strformat, strutils 2 | 3 | proc xray*(image: Image, masterPath: string) = 4 | let 5 | generatedPath = "tmp/generated/" & masterPath 6 | xrayPath = "tmp/xray/" & masterPath 7 | createDir(generatedPath.splitPath.head) 8 | createDir(xrayPath.splitPath.head) 9 | image.writeFile(generatedPath) 10 | let 11 | master = readImage(masterPath) 12 | (score, xRay) = diff(image, master) 13 | xRay.writeFile(xrayPath) 14 | echo &"xray {masterPath} -> {score:0.6f}" 15 | -------------------------------------------------------------------------------- /examples/blur.nim: -------------------------------------------------------------------------------- 1 | import pixie 2 | 3 | let 4 | trees = readImage("examples/data/trees.png") 5 | blur = trees.copy() 6 | image = newImage(200, 200) 7 | 8 | image.fill(rgba(255, 255, 255, 255)) 9 | 10 | let path = newPath() 11 | path.polygon(vec2(100, 100), 70, sides = 6) 12 | 13 | let mask = newImage(200, 200) 14 | mask.fillPath(path, color(1, 1, 1, 1)) 15 | 16 | blur.blur(20) 17 | blur.draw(mask, blendMode = MaskBlend) 18 | 19 | image.draw(trees) 20 | image.draw(blur) 21 | 22 | image.writeFile("examples/blur.png") 23 | -------------------------------------------------------------------------------- /tests/fileformats/svg/rect01.svg: -------------------------------------------------------------------------------- 1 | 2 | 4 | Example rect01 - rectangle with sharp corners 5 | 6 | 7 | 9 | 10 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /tests/fileformats/svg/circle01.svg: -------------------------------------------------------------------------------- 1 | 2 | 4 | Example circle01 - circle filled with red and stroked with blue 5 | 6 | 7 | 9 | 10 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /examples/shadow.nim: -------------------------------------------------------------------------------- 1 | import pixie 2 | 3 | let image = newImage(200, 200) 4 | image.fill(rgba(255, 255, 255, 255)) 5 | 6 | let path = newPath() 7 | path.polygon(vec2(100, 100), 70, sides = 8) 8 | 9 | let polygonImage = newImage(200, 200) 10 | polygonImage.fillPath(path, rgba(255, 255, 255, 255)) 11 | 12 | let shadow = polygonImage.shadow( 13 | offset = vec2(2, 2), 14 | spread = 2, 15 | blur = 10, 16 | color = rgba(0, 0, 0, 200) 17 | ) 18 | 19 | image.draw(shadow) 20 | image.draw(polygonImage) 21 | 22 | image.writeFile("examples/shadow.png") 23 | -------------------------------------------------------------------------------- /tests/fileformats/svg/scale.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 7 | 9 | 10 | 11 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /tests/all.nim: -------------------------------------------------------------------------------- 1 | import 2 | test_bmp, 3 | test_contexts, 4 | test_fonts, 5 | test_gif, 6 | test_images, 7 | test_images_draw, 8 | test_jpeg, 9 | test_paints, 10 | test_paths, 11 | test_png, 12 | test_ppm, 13 | test_qoi, 14 | test_svg, 15 | ../examples/text, 16 | ../examples/text_spans, 17 | ../examples/square, 18 | ../examples/line, 19 | ../examples/rounded_rectangle, 20 | ../examples/heart, 21 | ../examples/masking, 22 | ../examples/gradient, 23 | ../examples/image_tiled, 24 | ../examples/shadow, 25 | ../examples/blur, 26 | ../examples/tiger 27 | -------------------------------------------------------------------------------- /tests/fuzz_jpeg.nim: -------------------------------------------------------------------------------- 1 | import jpegsuite, pixie/common, pixie/fileformats/jpeg, random, strformat 2 | 3 | randomize() 4 | 5 | for i in 0 ..< 10_000: 6 | let file = sample(jpegSuiteFiles) 7 | var data = readFile(file) 8 | let 9 | pos = rand(0 ..< data.len) 10 | value = rand(255).uint8 11 | data[pos] = value.char 12 | echo &"{i} {file} {pos} {value}" 13 | 14 | try: 15 | let img = decodeJpeg(data) 16 | doAssert img.height > 0 and img.width > 0 17 | except PixieError: 18 | discard 19 | data = data[0 ..< pos] 20 | try: 21 | let img = decodeJpeg(data) 22 | doAssert img.height > 0 and img.width > 0 23 | except PixieError: 24 | discard 25 | -------------------------------------------------------------------------------- /tests/fileformats/svg/rect02.svg: -------------------------------------------------------------------------------- 1 | 2 | 4 | Example rect02 - rounded rectangles 5 | 6 | 7 | 9 | 10 | 12 | 13 | 14 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /tests/fuzz_qoi.nim: -------------------------------------------------------------------------------- 1 | import pixie/common, pixie/fileformats/qoi, std/random, strformat 2 | 3 | randomize() 4 | 5 | let original = readFile("tests/fileformats/qoi/testcard_rgba.qoi") 6 | 7 | for i in 0 ..< 10_000: 8 | var data = original 9 | let 10 | pos = rand(data.len) 11 | value = rand(255).uint8 12 | data[pos] = value.char 13 | echo &"{i} {pos} {value}" 14 | try: 15 | let img = decodeQoi(data) 16 | doAssert img.height > 0 and img.width > 0 17 | except PixieError: 18 | discard 19 | 20 | data = data[0 ..< pos] 21 | try: 22 | let img = decodeQoi(data) 23 | doAssert img.height > 0 and img.width > 0 24 | except PixieError: 25 | discard 26 | -------------------------------------------------------------------------------- /examples/gradient.nim: -------------------------------------------------------------------------------- 1 | import pixie 2 | 3 | let image = newImage(200, 200) 4 | image.fill(rgba(255, 255, 255, 255)) 5 | 6 | let paint = newPaint(RadialGradientPaint) 7 | paint.gradientHandlePositions = @[ 8 | vec2(100, 100), 9 | vec2(200, 100), 10 | vec2(100, 200) 11 | ] 12 | paint.gradientStops = @[ 13 | ColorStop(color: color(1, 0, 0, 1), position: 0), 14 | ColorStop(color: color(1, 0, 0, 0.15625), position: 1.0), 15 | ] 16 | 17 | image.fillPath( 18 | """ 19 | M 20 60 20 | A 40 40 90 0 1 100 60 21 | A 40 40 90 0 1 180 60 22 | Q 180 120 100 180 23 | Q 20 120 20 60 24 | z 25 | """, 26 | paint 27 | ) 28 | 29 | image.writeFile("examples/gradient.png") 30 | -------------------------------------------------------------------------------- /tests/fileformats/svg/ellipse01.svg: -------------------------------------------------------------------------------- 1 | 2 | 4 | Example ellipse01 - examples of ellipses 5 | 6 | 7 | 9 | 10 | 11 | 13 | 14 | 15 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /src/pixie/simd.nim: -------------------------------------------------------------------------------- 1 | import nimsimd/hassimd 2 | 3 | export hassimd 4 | 5 | const allowSimd* = not defined(pixieNoSimd) and not defined(tcc) 6 | 7 | when allowSimd: 8 | when defined(amd64): 9 | import simd/sse2 10 | export sse2 11 | 12 | when not defined(pixieNoAvx): 13 | import nimsimd/runtimecheck, simd/avx, simd/avx2 14 | export avx, avx2 15 | 16 | let 17 | cpuHasAvx* = checkInstructionSets({AVX}) 18 | cpuHasAvx2* = checkInstructionSets({AVX, AVX2}) 19 | 20 | import nimsimd/sse2 as nimsimdsse2 21 | export nimsimdsse2 22 | 23 | elif defined(arm64): 24 | import simd/neon 25 | export neon 26 | 27 | import nimsimd/neon as nimsimdneon 28 | export nimsimdneon 29 | -------------------------------------------------------------------------------- /tests/fuzz_gif.nim: -------------------------------------------------------------------------------- 1 | import pixie/common, pixie/fileformats/gif, random, strformat 2 | 3 | randomize() 4 | 5 | let original = readFile("tests/fileformats/gif/sunflower.gif") 6 | 7 | for i in 0 ..< 10_000: 8 | var data = original 9 | let 10 | pos = rand(data.len) 11 | value = rand(255).char 12 | # pos = 27355 13 | # value = '&' 14 | data[pos] = value 15 | echo &"{i} {pos} {value}" 16 | try: 17 | let img = newImage(decodeGif(data)) 18 | doAssert img.height > 0 and img.width > 0 19 | except PixieError: 20 | discard 21 | 22 | data = data[0 ..< pos] 23 | try: 24 | let img = newImage(decodeGif(data)) 25 | doAssert img.height > 0 and img.width > 0 26 | except PixieError: 27 | discard 28 | -------------------------------------------------------------------------------- /tests/fuzz_png.nim: -------------------------------------------------------------------------------- 1 | import pixie/common, pixie/fileformats/png, pngsuite, random, strformat 2 | 3 | randomize() 4 | 5 | for i in 0 ..< 10_000: 6 | let file = pngSuiteFiles[rand(pngSuiteFiles.len - 1)] 7 | var data = readFile(&"tests/fileformats/png/pngsuite/{file}.png") 8 | let 9 | pos = 29 + rand(data.len - 30) 10 | value = rand(255).uint8 11 | data[pos] = value.char 12 | echo &"{i} {file} {pos} {value}" 13 | try: 14 | let img = decodePng(data) 15 | doAssert img.height > 0 and img.width > 0 16 | except PixieError: 17 | discard 18 | 19 | data = data[0 ..< pos] 20 | try: 21 | let img = decodePng(data) 22 | doAssert img.height > 0 and img.width > 0 23 | except PixieError: 24 | discard 25 | -------------------------------------------------------------------------------- /.github/workflows/build.yml: -------------------------------------------------------------------------------- 1 | name: Github Actions 2 | on: [push, pull_request] 3 | jobs: 4 | build: 5 | strategy: 6 | fail-fast: false 7 | matrix: 8 | os: [ubuntu-latest, windows-latest] 9 | nim-version: ['1.4.x', 'stable'] 10 | 11 | runs-on: ${{ matrix.os }} 12 | 13 | steps: 14 | - uses: actions/checkout@v3 15 | - uses: jiro4989/setup-nim-action@v2 16 | with: 17 | nim-version: ${{ matrix.nim-version }} 18 | repo-token: ${{ secrets.GITHUB_TOKEN }} 19 | - run: nimble test --gc:arc -d:release -y 20 | - run: nimble test --gc:arc -d:release -d:pixieNoSimd -y 21 | - run: nimble test --gc:orc -d:release -y 22 | - run: nim cpp --gc:orc -d:release -r tests/all.nim 23 | -------------------------------------------------------------------------------- /tests/validate_jpeg.nim: -------------------------------------------------------------------------------- 1 | import jpegsuite, os, pixie, strformat, strutils 2 | 3 | createDir("tests/fileformats/jpeg/generated") 4 | createDir("tests/fileformats/jpeg/diffs") 5 | 6 | for file in jpegSuiteFiles: 7 | let img = readImage(file) 8 | 9 | let genFile = file.replace("masters", "generated").replace(".jpg", ".png") 10 | img.writeFile(genFile) 11 | 12 | if execShellCmd(&"magick {file} -auto-orient {genFile}") != 0: 13 | echo "fail" 14 | 15 | var img2 = readImage(genFile) 16 | let (score, diff) = img2.diff(img) 17 | 18 | let diffFile = file.replace("master", "diff").replace(".jpg", ".png") 19 | diff.writeFile(diffFile) 20 | 21 | if score > 1: 22 | echo "!!!!!!!!!!!!!! FAIL !!!!!!!!!!!!!" 23 | echo &"{score:2.3f}% ... {file}" 24 | -------------------------------------------------------------------------------- /tests/fileformats/svg/accessibility-outline.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /examples/masking.nim: -------------------------------------------------------------------------------- 1 | import pixie 2 | 3 | let 4 | image = newImage(200, 200) 5 | lines = newImage(200, 200) 6 | mask = newImage(200, 200) 7 | 8 | lines.fill(parseHtmlColor("#FC427B").rgba) 9 | image.fill(rgba(255, 255, 255, 255)) 10 | 11 | let ctx = newContext(lines) 12 | ctx.strokeStyle = "#F8D1DD" 13 | ctx.lineWidth = 30 14 | 15 | ctx.strokeSegment(segment(vec2(25, 25), vec2(175, 175))) 16 | ctx.strokeSegment(segment(vec2(25, 175), vec2(175, 25))) 17 | 18 | mask.fillPath( 19 | """ 20 | M 20 60 21 | A 40 40 90 0 1 100 60 22 | A 40 40 90 0 1 180 60 23 | Q 180 120 100 180 24 | Q 20 120 20 60 25 | z 26 | """, 27 | color(1, 1, 1, 1) 28 | ) 29 | lines.draw(mask, blendMode = MaskBlend) 30 | image.draw(lines) 31 | 32 | image.writeFile("examples/masking.png") 33 | -------------------------------------------------------------------------------- /tests/fileformats/svg/polygon01.svg: -------------------------------------------------------------------------------- 1 | 2 | 4 | Example polygon01 - star and hexagon 5 | 6 | 7 | 9 | 10 | 14 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /tests/fileformats/svg/polyline01.svg: -------------------------------------------------------------------------------- 1 | 2 | 4 | Example polyline01 - increasingly larger bars 5 | 6 | 7 | 9 | 10 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /tests/test_qoi.nim: -------------------------------------------------------------------------------- 1 | import pixie, pixie/fileformats/qoi 2 | 3 | const tests = ["testcard", "testcard_rgba"] 4 | 5 | for name in tests: 6 | let 7 | path = "tests/fileformats/qoi/" & name & ".qoi" 8 | input = readImage(path) 9 | control = readImage("tests/fileformats/qoi/" & name & ".png") 10 | dimensions = decodeQoiDimensions(readFile(path)) 11 | doAssert input.data == control.data, "input mismatch of " & name 12 | doAssert input.width == dimensions.width 13 | doAssert input.height == dimensions.height 14 | discard encodeQoi(control) 15 | 16 | for name in tests: 17 | let 18 | path = "tests/fileformats/qoi/" & name & ".qoi" 19 | input = decodeQoi(readFile(path)) 20 | output = decodeQoi(encodeQoi(input)) 21 | doAssert output.data.len == input.data.len 22 | doAssert output.data == input.data 23 | -------------------------------------------------------------------------------- /tests/fileformats/png/pngsuite/PngSuite.README: -------------------------------------------------------------------------------- 1 | PNGSUITE 2 | ---------------- 3 | 4 | testset for PNG-(de)coders 5 | created by Willem van Schaik 6 | ------------------------------------ 7 | 8 | This is a collection of graphics images created to test the png applications 9 | like viewers, converters and editors. All (as far as that is possible) 10 | formats supported by the PNG standard are represented. 11 | 12 | The suite consists of the following files: 13 | 14 | - PngSuite.README - this file 15 | - PngSuite.LICENSE - the PngSuite is freeware 16 | - PngSuite.png - image with PngSuite logo 17 | - PngSuite.tgz - archive of all PNG testfiles 18 | - PngSuite.zip - same in .zip format for PCs 19 | 20 | 21 | -------- 22 | (c) Willem van Schaik 23 | willem@schaik.com 24 | Calgary, April 2011 25 | 26 | -------------------------------------------------------------------------------- /tests/fuzz_opentype.nim: -------------------------------------------------------------------------------- 1 | import common, pixie, random, strformat, unicode 2 | 3 | randomize() 4 | 5 | let fontPaths = findAllFonts("tests/fonts") 6 | 7 | doAssert fontPaths.len > 0 8 | 9 | for i in 0 ..< 10000: 10 | var 11 | file = fontPaths[rand(fontPaths.len - 1)] 12 | data = readFile(file) 13 | pos = rand(data.len) 14 | value = rand(255).char 15 | data[pos] = value 16 | echo &"{i} {file} {pos} {value.uint8}" 17 | try: 18 | let font = parseOtf(data) 19 | doAssert font != nil 20 | for i in 0.uint16 ..< uint16.high: 21 | discard font.getGlyphPath(Rune(i.int)) 22 | except PixieError: 23 | discard 24 | 25 | data = data[0 ..< pos] 26 | try: 27 | let font = parseOtf(data) 28 | doAssert font != nil 29 | for i in 0.uint16 ..< uint16.high: 30 | discard font.getGlyphPath(Rune(i.int)) 31 | except PixieError: 32 | discard 33 | -------------------------------------------------------------------------------- /tests/fileformats/svg/line01.svg: -------------------------------------------------------------------------------- 1 | 2 | 4 | Example line01 - lines expressed in user coordinates 5 | 6 | 7 | 9 | 10 | 11 | 13 | 15 | 17 | 19 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /src/pixie/simd/avx.nim: -------------------------------------------------------------------------------- 1 | import chroma, nimsimd/hassimd, nimsimd/avx 2 | 3 | when defined(gcc) or defined(clang): 4 | {.localPassC: "-mavx".} 5 | 6 | when defined(release): 7 | {.push checks: off.} 8 | 9 | proc fillUnsafeAvx*( 10 | data: var seq[ColorRGBX], 11 | color: SomeColor, 12 | start, len: int 13 | ) {.simd.} = 14 | let rgbx = color.asRgbx() 15 | 16 | var 17 | i = start 18 | p = cast[uint](data[i].addr) 19 | # Align to 32 bytes 20 | while i < (start + len) and (p and 31) != 0: 21 | data[i] = rgbx 22 | inc i 23 | p += 4 24 | 25 | let 26 | colorVec = mm256_set1_epi32(cast[int32](rgbx)) 27 | iterations = (start + len - i) div 8 28 | for _ in 0 ..< iterations: 29 | mm256_store_si256(cast[pointer](p), colorVec) 30 | p += 32 31 | i += 8 * iterations 32 | 33 | for i in i ..< start + len: 34 | data[i] = rgbx 35 | 36 | when defined(release): 37 | {.pop.} 38 | -------------------------------------------------------------------------------- /tests/fuzz_leaks.nim: -------------------------------------------------------------------------------- 1 | import pixie, random 2 | 3 | when not defined(pixieLeakCheck): 4 | quit("Requires -d:pixieLeakCheck") 5 | 6 | randomize() 7 | 8 | for i in 0 ..< 100_000: 9 | 10 | let image = newImage(400, 400) 11 | image.fill(rgba(255, 255, 255, 255)) 12 | 13 | let ctx = newContext(image) 14 | ctx.translate(200, 200) 15 | ctx.scale(vec2(rand(0.1 .. 1.2), rand(0.1 .. 1.2))) 16 | ctx.rotate(rand(0.0 .. 2*PI)) 17 | 18 | ctx.strokeStyle = "#000000" 19 | ctx.lineCap = sample([RoundCap, ButtCap, SquareCap]) 20 | ctx.lineJoin = sample([MiterJoin, RoundJoin, BevelJoin]) 21 | ctx.miterLimit = 2 22 | ctx.lineWidth = rand(0.1 .. 20.0) 23 | 24 | ctx.moveTo(rand(-100 .. 100).float32, rand(-100 .. 100).float32) 25 | for i in 0 ..< rand(0 .. 100): 26 | ctx.lineTo(rand(-100 .. 100).float32, rand(-100 .. 100).float32) 27 | ctx.stroke() 28 | 29 | # image.writeFile("tests/fuzz_leaks.png") 30 | # break 31 | -------------------------------------------------------------------------------- /tests/bench_jpeg.nim: -------------------------------------------------------------------------------- 1 | import benchy, os, pixie/fileformats/jpeg 2 | 3 | const 4 | jpegFiles* = [ 5 | "tests/fileformats/jpeg/masters/mandrill.jpg", 6 | "tests/fileformats/jpeg/masters/exif_overrun.jpg", 7 | "tests/fileformats/jpeg/masters/grayscale_test.jpg", 8 | "tests/fileformats/jpeg/masters/progressive.jpg" 9 | ] 10 | 11 | for file in jpegFiles: 12 | let data = readFile(file) 13 | timeIt "pixie " & file.splitPath.tail & " decode": 14 | discard decodeJpeg(data) 15 | 16 | # import stb_image/read as stbi 17 | # block: 18 | # for file in jpegFiles: 19 | # let data = readFile(file) 20 | # var name = file.splitPath.tail 21 | 22 | # timeIt "stb " & file.splitPath.tail & " decode": 23 | # var width, height, channels: int 24 | # discard loadFromMemory( 25 | # cast[seq[byte]](data), 26 | # width, 27 | # height, 28 | # channels, 29 | # stbi.RGBA 30 | # ) 31 | -------------------------------------------------------------------------------- /tests/validate_png.nim: -------------------------------------------------------------------------------- 1 | import chroma, pixie/fileformats/png, pngsuite, stb_image/read as stbi, strformat 2 | 3 | for file in pngSuiteFiles: 4 | let 5 | data = readFile(&"tests/fileformats/png/pngsuite/{file}.png") 6 | pixieLoaded = decodePng(data) 7 | 8 | var 9 | width, height, channels: int 10 | stbiLoadedData = loadFromMemory( 11 | cast[seq[byte]](data), 12 | width, 13 | height, 14 | channels, 15 | stbi.RGBA 16 | ) 17 | stbiLoadedRGBA: seq[ColorRGBA] 18 | 19 | var i: int 20 | while i < stbiLoadedData.len: 21 | stbiLoadedRGBA.add(ColorRGBA( 22 | r: stbiLoadedData[i + 0], 23 | g: stbiLoadedData[i + 1], 24 | b: stbiLoadedData[i + 2], 25 | a: stbiLoadedData[i + 3] 26 | )) 27 | i += 4 28 | 29 | doAssert pixieLoaded.width == width 30 | doAssert pixieLoaded.height == height 31 | doAssert pixieLoaded.data.len == stbiLoadedRGBA.len 32 | doAssert pixieLoaded.data == stbiLoadedRGBA 33 | -------------------------------------------------------------------------------- /examples/text_spans.nim: -------------------------------------------------------------------------------- 1 | import pixie 2 | 3 | let image = newImage(200, 200) 4 | image.fill(rgba(255, 255, 255, 255)) 5 | 6 | let typeface = readTypeface("examples/data/Ubuntu-Regular_1.ttf") 7 | 8 | proc newFont(typeface: Typeface, size: float32, color: Color): Font = 9 | result = newFont(typeface) 10 | result.size = size 11 | result.paint.color = color 12 | 13 | let spans = @[ 14 | newSpan("verb [with object] ", 15 | newFont(typeface, 12, color(0.78125, 0.78125, 0.78125, 1))), 16 | newSpan("strallow\n", newFont(typeface, 36, color(0, 0, 0, 1))), 17 | newSpan("\nstral·low\n", newFont(typeface, 13, color(0, 0.5, 0.953125, 1))), 18 | newSpan("\n1. free (something) from restrictive restrictions \"the regulations are intended to strallow changes in public policy\" ", 19 | newFont(typeface, 14, color(0.3125, 0.3125, 0.3125, 1))) 20 | ] 21 | 22 | image.fillText(typeset(spans, vec2(180, 180)), translate(vec2(10, 10))) 23 | image.writeFile("examples/text_spans.png") 24 | -------------------------------------------------------------------------------- /.github/workflows/docs.yml: -------------------------------------------------------------------------------- 1 | name: docs 2 | on: 3 | push: 4 | branches: 5 | - master 6 | env: 7 | nim-version: 'stable' 8 | nim-src: src/${{ github.event.repository.name }}.nim 9 | deploy-dir: .gh-pages 10 | jobs: 11 | docs: 12 | runs-on: ubuntu-latest 13 | steps: 14 | - uses: actions/checkout@v3 15 | - uses: jiro4989/setup-nim-action@v1 16 | with: 17 | nim-version: ${{ env.nim-version }} 18 | - run: nimble install -Y 19 | - run: nimble doc --index:on --project --git.url:https://github.com/${{ github.repository }} --git.commit:master --out:${{ env.deploy-dir }} ${{ env.nim-src }} 20 | - name: "Copy to index.html" 21 | run: cp ${{ env.deploy-dir }}/${{ github.event.repository.name }}.html ${{ env.deploy-dir }}/index.html 22 | - name: Deploy documents 23 | uses: peaceiris/actions-gh-pages@v3 24 | with: 25 | github_token: ${{ secrets.GITHUB_TOKEN }} 26 | publish_dir: ${{ env.deploy-dir }} 27 | -------------------------------------------------------------------------------- /tests/fuzz_leaks2.nim: -------------------------------------------------------------------------------- 1 | import os, pixie, random 2 | 3 | when not defined(pixieLeakCheck): 4 | quit("Requires -d:pixieLeakCheck") 5 | 6 | randomize() 7 | 8 | for i in 0 ..< 100_000: 9 | let image = newImage(400, 400) 10 | image.fill(rgba(255, 255, 255, 255)) 11 | 12 | let ctx = newContext(image) 13 | 14 | ctx.translate(200, 200) 15 | ctx.scale(vec2(rand(0.1 .. 1.7), rand(0.1 .. 1.7))) 16 | ctx.rotate(rand(0.0 .. 2*PI)) 17 | 18 | ctx.strokeStyle = "#000000" 19 | ctx.lineCap = sample([RoundCap, ButtCap, SquareCap]) 20 | ctx.lineJoin = sample([MiterJoin, RoundJoin, BevelJoin]) 21 | ctx.lineWidth = rand(0.1 .. 1.0) 22 | 23 | var first = true 24 | var number = rand(2 .. 100) 25 | for a in 0 .. number: 26 | let th = a.float32 / number.float32 * PI 27 | let pos = vec2(sin(th) * 100, cos(th) * 100) 28 | if first: 29 | ctx.moveTo(pos) 30 | first = false 31 | else: 32 | ctx.lineTo(pos) 33 | ctx.stroke() 34 | 35 | # image.writeFile("tests/fuzz_leaks2.png") 36 | # break 37 | -------------------------------------------------------------------------------- /tests/fileformats/svg/dashes.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 10 | 11 | 12 | 14 | 15 | 16 | 18 | 19 | 20 | 22 | 23 | -------------------------------------------------------------------------------- /tests/test_svg.nim: -------------------------------------------------------------------------------- 1 | import pixie, pixie/fileformats/svg, strformat, xrays, xmlparser, xmltree 2 | 3 | const files = [ 4 | "line01", 5 | "polyline01", 6 | "polygon01", 7 | "rect01", 8 | "rect02", 9 | "circle01", 10 | "ellipse01", 11 | "triangle01", 12 | "quad01", 13 | "Ghostscript_Tiger", 14 | "scale", 15 | "miterlimit", 16 | "dashes", 17 | "dragon2" 18 | ] 19 | 20 | for file in files: 21 | let image = readImage(&"tests/fileformats/svg/{file}.svg") 22 | image.xray(&"tests/fileformats/svg/masters/{file}.png") 23 | 24 | block: 25 | let 26 | svg = parseSvg( 27 | readFile("tests/fileformats/svg/accessibility-outline.svg"), 28 | 512, 512 29 | ) 30 | image = newImage(svg) 31 | image.xray(&"tests/fileformats/svg/masters/accessibility-outline.png") 32 | 33 | block: 34 | # Test using XML node by itself, see: https://github.com/treeform/pixie/pull/533 35 | let 36 | xmlNode = parseXml(readFile("tests/fileformats/svg/accessibility-outline.svg")) 37 | svg = parseSvg( 38 | xmlNode, 39 | 512, 512 40 | ) 41 | -------------------------------------------------------------------------------- /tests/fuzz_bmp.nim: -------------------------------------------------------------------------------- 1 | import flatty/binny, os, pixie/common, pixie/fileformats/bmp, random, strformat 2 | 3 | randomize() 4 | 5 | var originals = @["tests/fileformats/bmp/knight.32.bmp"] 6 | for file in walkFiles("tests/fileformats/bmp/bmpsuite/*"): 7 | originals.add(file) 8 | 9 | for i in 0 ..< 1000: 10 | let file = originals[rand(originals.len-1)] 11 | var data = readFile(file) 12 | let 13 | pos = rand(data.len-1) 14 | value = rand(255).char 15 | # pos = 27355 16 | # value = '&' 17 | data[pos] = value 18 | 19 | let 20 | width = data.readInt32(18).int 21 | height = data.readInt32(22).int 22 | if abs(width) > 1000 or abs(height) > 1000: 23 | echo "too big" 24 | continue 25 | 26 | echo &"{i} {file} {pos} {repr(value)}" 27 | try: 28 | let img = decodeBmp(data) 29 | doAssert img.height > 0 and img.width > 0 30 | except PixieError: 31 | discard 32 | 33 | data = data[0 ..< pos] 34 | try: 35 | let img = decodeBmp(data) 36 | doAssert img.height > 0 and img.width > 0 37 | except PixieError: 38 | discard 39 | -------------------------------------------------------------------------------- /tests/test_ppm.nim: -------------------------------------------------------------------------------- 1 | import pixie/fileformats/ppm 2 | 3 | block: 4 | for format in @["p3", "p6"]: 5 | let 6 | path = "tests/fileformats/ppm/feep." & $format & ".master.ppm" 7 | image = decodePpm(readFile(path)) 8 | dimensions = decodePpmDimensions(readFile(path)) 9 | writeFile("tests/fileformats/ppm/feep." & $format & ".ppm", encodePpm(image)) 10 | doAssert image.width == dimensions.width 11 | doAssert image.height == dimensions.height 12 | 13 | block: 14 | let 15 | path = "tests/fileformats/ppm/feep.p3.hidepth.master.ppm" 16 | image = decodePpm(readFile(path)) 17 | dimensions = decodePpmDimensions(readFile(path)) 18 | writeFile("tests/fileformats/ppm/feep.p3.hidepth.ppm", encodePpm(image)) 19 | doAssert image.width == dimensions.width 20 | doAssert image.height == dimensions.height 21 | 22 | # produced output should be identical to P6 master 23 | let p6Master = readFile("tests/fileformats/ppm/feep.p6.master.ppm") 24 | for image in @["p3", "p6", "p3.hidepth"]: 25 | doAssert readFile("tests/fileformats/ppm/feep." & $image & ".ppm") == p6Master 26 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2020 Andre von Houck and Ryan Oldenburg 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 6 | 7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 10 | -------------------------------------------------------------------------------- /tests/bench_fonts.nim: -------------------------------------------------------------------------------- 1 | import benchy, pixie 2 | 3 | const text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis in quam in nulla bibendum luctus. Integer dui lectus, ultricies commodo enim quis, laoreet lacinia erat. Vivamus ultrices maximus risus, non aliquam quam sagittis quis. Ut nec diam vitae tortor interdum ullamcorper in aliquet velit. Ut sed lobortis mi. Nulla venenatis lectus varius justo lacinia, quis sollicitudin nunc ultrices. Donec a suscipit arcu, id egestas neque. Nullam commodo pharetra est. Nullam gravida nibh eget quam venenatis lacinia. Vestibulum et libero arcu. Sed dignissim enim eros. Nullam eleifend luctus erat sed luctus. Nunc tincidunt, mi nec tincidunt tristique, ex nulla lobortis sem, sit amet finibus purus justo non massa." 4 | 5 | var font = readFont("tests/fonts/Roboto-Regular_1.ttf") 6 | font.size = 16 7 | 8 | let image = newImage(500, 300) 9 | 10 | timeIt "typeset": 11 | discard font.typeset(text, bounds = vec2(image.width.float32, 0)) 12 | 13 | timeIt "fill text": 14 | image.fill(rgba(255, 255, 255, 255)) 15 | image.fillText(font, text, bounds = vec2(image.width.float32, 0)) 16 | -------------------------------------------------------------------------------- /tests/test_png.nim: -------------------------------------------------------------------------------- 1 | import pixie, pixie/fileformats/png, pngsuite, strformat 2 | 3 | for file in pngSuiteFiles: 4 | let 5 | original = readFile(&"tests/fileformats/png/pngsuite/{file}.png") 6 | decoded = decodePng(original) 7 | encoded = encodePng(decoded) 8 | 9 | block: 10 | for channels in 1 .. 4: 11 | var data: seq[uint8] 12 | for x in 0 ..< 16: 13 | for y in 0 ..< 16: 14 | var components = newSeq[uint8](channels) 15 | for i in 0 ..< channels: 16 | components[i] = (x * 16).uint8 17 | data.add(components) 18 | let encoded = encodePng(16, 16, channels, data[0].addr, data.len) 19 | 20 | for file in pngSuiteCorruptedFiles: 21 | try: 22 | discard decodePng(readFile(&"tests/fileformats/png/pngsuite/{file}.png")) 23 | doAssert false 24 | except PixieError: 25 | discard 26 | 27 | block: 28 | discard readImage("tests/fileformats/png/trailing_data.png") 29 | 30 | block: 31 | let dimensions = 32 | decodeImageDimensions(readFile("tests/fileformats/png/mandrill.png")) 33 | doAssert dimensions.width == 512 34 | doAssert dimensions.height == 512 35 | -------------------------------------------------------------------------------- /tests/fileformats/svg/quad01.svg: -------------------------------------------------------------------------------- 1 | 2 | 4 | Example quad01 - quadratic Bézier commands in path data 5 | Picture showing a "Q" a "T" command, 6 | along with annotations showing the control points 7 | and end points 8 | 10 | 11 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /tests/fileformats/svg/miterlimit.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 10 | 11 | 12 | 17 | 18 | 19 | 24 | 25 | -------------------------------------------------------------------------------- /pixie.nimble: -------------------------------------------------------------------------------- 1 | version = "5.1.0" 2 | author = "Andre von Houck and Ryan Oldenburg" 3 | description = "Full-featured 2d graphics library for Nim." 4 | license = "MIT" 5 | 6 | srcDir = "src" 7 | 8 | requires "nim >= 1.4.8" 9 | requires "vmath >= 1.1.4" 10 | requires "chroma >= 0.2.6" 11 | requires "zippy >= 0.10.3" 12 | requires "flatty >= 0.3.4" 13 | requires "nimsimd >= 1.2.4" 14 | requires "bumpy >= 1.1.3" 15 | requires "crunchy >= 0.1.0" 16 | 17 | task bindings, "Generate bindings": 18 | 19 | proc compile(libName: string, flags = "") = 20 | exec "nim c -f " & flags & " -d:release --app:lib --gc:arc --tlsEmulation:off --out:" & libName & " --outdir:bindings/generated bindings/bindings.nim" 21 | 22 | when defined(windows): 23 | compile "pixie.dll" 24 | 25 | elif defined(macosx): 26 | compile "libpixie.dylib.arm", "--cpu:arm64 -l:'-target arm64-apple-macos11' -t:'-target arm64-apple-macos11'" 27 | compile "libpixie.dylib.x64", "--cpu:amd64 -l:'-target x86_64-apple-macos10.12' -t:'-target x86_64-apple-macos10.12'" 28 | exec "lipo bindings/generated/libpixie.dylib.arm bindings/generated/libpixie.dylib.x64 -output bindings/generated/libpixie.dylib -create" 29 | 30 | else: 31 | compile "libpixie.so" 32 | -------------------------------------------------------------------------------- /tests/bench_paints.nim: -------------------------------------------------------------------------------- 1 | import benchy, pixie 2 | 3 | let image = newImage(1000, 1000) 4 | 5 | timeIt "GradientLinear vertical": 6 | let paint = newPaint(LinearGradientPaint) 7 | paint.gradientHandlePositions = @[ 8 | vec2(50, 0), 9 | vec2(50, 1000), 10 | ] 11 | paint.gradientStops = @[ 12 | ColorStop(color: color(1, 0, 0, 1), position: 0), 13 | ColorStop(color: color(1, 0, 0, 0.15625), position: 1.0), 14 | ] 15 | image.fillGradient(paint) 16 | 17 | timeIt "GradientLinear horizontal": 18 | let paint = newPaint(LinearGradientPaint) 19 | paint.gradientHandlePositions = @[ 20 | vec2(0, 50), 21 | vec2(1000, 50), 22 | ] 23 | paint.gradientStops = @[ 24 | ColorStop(color: color(1, 0, 0, 1), position: 0), 25 | ColorStop(color: color(1, 0, 0, 0.15625), position: 1.0), 26 | ] 27 | image.fillGradient(paint) 28 | 29 | # timeIt "GradientLinear radial": 30 | # discard 31 | 32 | let image100 = newImage(100, 100) 33 | 34 | timeIt "GradientLinear angular": 35 | let paint = newPaint(AngularGradientPaint) 36 | paint.gradientHandlePositions = @[ 37 | vec2(500, 500), 38 | vec2(1000, 500), 39 | vec2(500, 1000) 40 | ] 41 | paint.gradientStops = @[ 42 | ColorStop(color: color(1, 0, 0, 1), position: 0), 43 | ColorStop(color: color(1, 0, 0, 0.15625), position: 1.0), 44 | ] 45 | image100.fillGradient(paint) 46 | -------------------------------------------------------------------------------- /tests/validate_fonts.nim: -------------------------------------------------------------------------------- 1 | import pixie, stb_truetype, unicode 2 | 3 | let fontFiles = [ 4 | # "tests/fonts/Roboto-Regular_1.ttf" 5 | # "tests/fonts/Aclonica-Regular_1.ttf" 6 | # "tests/fonts/Ubuntu-Regular_1.ttf" 7 | # "tests/fonts/IBMPlexSans-Regular_2.ttf" 8 | # "tests/fonts/NotoSans-Regular_4.ttf" 9 | "tests/fonts/Pacifico-Regular_4.ttf" 10 | ] 11 | 12 | for fontFile in fontFiles: 13 | let stbtt = initFont(readFile(fontFile)) 14 | var font = readFont(fontFile) 15 | 16 | var ascent, descent, lineGap: cint 17 | stbtt.getFontVMetrics(ascent, descent, lineGap) 18 | 19 | doAssert font.typeface.ascent == ascent.float32 20 | doAssert font.typeface.descent == descent.float32 21 | doAssert font.typeface.lineGap == lineGap.float32 22 | 23 | for i in 32 .. 126: 24 | var advanceWidth, leftSideBearing: cint 25 | stbtt.getCodepointHMetrics(Rune(i), advanceWidth, leftSideBearing) 26 | 27 | doAssert font.typeface.getAdvance(Rune(i)) == advanceWidth.float32 28 | 29 | for i in 32 .. 126: 30 | for j in 32 .. 126: 31 | # echo i, ": ", $Rune(i), " ", j, ": ", $Rune(j) 32 | let 33 | a = stbtt.getCodepointKernAdvance(Rune(i), Rune(j)).float32 34 | b = font.typeface.getKerningAdjustment(Rune(i), Rune(j)) 35 | if a != b: 36 | # echo fontFile 37 | echo i, ": ", $Rune(i), " ", j, ": ", $Rune(j) 38 | echo "DISAGREE: ", a, " != ", b, " <<<<<<<<<<<<<<<<<<<<<<<<<<<" 39 | # quit() 40 | 41 | # echo stbtt.getCodepointKernAdvance(Rune('r'), Rune('s')).float32 42 | # echo font.typeface.getKerningAdjustment(Rune('r'), Rune('s')) 43 | -------------------------------------------------------------------------------- /tools/gen_readme.nim: -------------------------------------------------------------------------------- 1 | import os, osproc, strutils 2 | 3 | proc cutBetween(str, a, b: string): string = 4 | let 5 | cutA = str.find(a) 6 | cutB = str.find(b) 7 | if cutA == -1 or cutB == -1: 8 | return "" 9 | return str[cutA + a.len..