Imlib2-Ruby 0.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/AUTHORS +41 -0
- data/COPYING +20 -0
- data/ChangeLog +280 -0
- data/MANIFEST +25 -0
- data/README +65 -0
- data/TODO +12 -0
- data/depend +1 -0
- data/doc/classes/Imlib2.html +151 -0
- data/doc/classes/Imlib2/Border.html +526 -0
- data/doc/classes/Imlib2/Border.src/M000094.html +34 -0
- data/doc/classes/Imlib2/Border.src/M000095.html +21 -0
- data/doc/classes/Imlib2/Border.src/M000098.html +23 -0
- data/doc/classes/Imlib2/Border.src/M000099.html +23 -0
- data/doc/classes/Imlib2/Border.src/M000100.html +23 -0
- data/doc/classes/Imlib2/Border.src/M000101.html +23 -0
- data/doc/classes/Imlib2/Border.src/M000102.html +23 -0
- data/doc/classes/Imlib2/Border.src/M000103.html +23 -0
- data/doc/classes/Imlib2/Border.src/M000104.html +23 -0
- data/doc/classes/Imlib2/Border.src/M000105.html +23 -0
- data/doc/classes/Imlib2/Cache.html +475 -0
- data/doc/classes/Imlib2/Cache.src/M000081.html +24 -0
- data/doc/classes/Imlib2/Cache.src/M000082.html +29 -0
- data/doc/classes/Imlib2/Cache.src/M000083.html +24 -0
- data/doc/classes/Imlib2/Cache.src/M000084.html +29 -0
- data/doc/classes/Imlib2/Cache.src/M000085.html +24 -0
- data/doc/classes/Imlib2/Cache.src/M000086.html +29 -0
- data/doc/classes/Imlib2/Cache.src/M000087.html +24 -0
- data/doc/classes/Imlib2/Cache.src/M000088.html +28 -0
- data/doc/classes/Imlib2/Cache.src/M000089.html +24 -0
- data/doc/classes/Imlib2/Cache.src/M000090.html +28 -0
- data/doc/classes/Imlib2/Cache.src/M000091.html +24 -0
- data/doc/classes/Imlib2/Cache.src/M000092.html +28 -0
- data/doc/classes/Imlib2/Cache.src/M000093.html +23 -0
- data/doc/classes/Imlib2/Color.html +115 -0
- data/doc/classes/Imlib2/Color/CmyaColor.html +598 -0
- data/doc/classes/Imlib2/Color/CmyaColor.src/M000001.html +27 -0
- data/doc/classes/Imlib2/Color/CmyaColor.src/M000002.html +21 -0
- data/doc/classes/Imlib2/Color/CmyaColor.src/M000005.html +23 -0
- data/doc/classes/Imlib2/Color/CmyaColor.src/M000006.html +23 -0
- data/doc/classes/Imlib2/Color/CmyaColor.src/M000007.html +23 -0
- data/doc/classes/Imlib2/Color/CmyaColor.src/M000008.html +23 -0
- data/doc/classes/Imlib2/Color/CmyaColor.src/M000009.html +23 -0
- data/doc/classes/Imlib2/Color/CmyaColor.src/M000010.html +23 -0
- data/doc/classes/Imlib2/Color/CmyaColor.src/M000011.html +23 -0
- data/doc/classes/Imlib2/Color/CmyaColor.src/M000012.html +23 -0
- data/doc/classes/Imlib2/Color/CmyaColor.src/M000013.html +23 -0
- data/doc/classes/Imlib2/Color/CmyaColor.src/M000014.html +23 -0
- data/doc/classes/Imlib2/Color/CmyaColor.src/M000015.html +23 -0
- data/doc/classes/Imlib2/Color/CmyaColor.src/M000016.html +23 -0
- data/doc/classes/Imlib2/Color/CmyaColor.src/M000017.html +23 -0
- data/doc/classes/Imlib2/Color/CmyaColor.src/M000018.html +23 -0
- data/doc/classes/Imlib2/Color/CmyaColor.src/M000019.html +23 -0
- data/doc/classes/Imlib2/Color/CmyaColor.src/M000020.html +23 -0
- data/doc/classes/Imlib2/Color/HlsaColor.html +606 -0
- data/doc/classes/Imlib2/Color/HlsaColor.src/M000061.html +27 -0
- data/doc/classes/Imlib2/Color/HlsaColor.src/M000062.html +21 -0
- data/doc/classes/Imlib2/Color/HlsaColor.src/M000065.html +23 -0
- data/doc/classes/Imlib2/Color/HlsaColor.src/M000066.html +23 -0
- data/doc/classes/Imlib2/Color/HlsaColor.src/M000067.html +23 -0
- data/doc/classes/Imlib2/Color/HlsaColor.src/M000068.html +23 -0
- data/doc/classes/Imlib2/Color/HlsaColor.src/M000069.html +23 -0
- data/doc/classes/Imlib2/Color/HlsaColor.src/M000070.html +23 -0
- data/doc/classes/Imlib2/Color/HlsaColor.src/M000071.html +23 -0
- data/doc/classes/Imlib2/Color/HlsaColor.src/M000072.html +23 -0
- data/doc/classes/Imlib2/Color/HlsaColor.src/M000073.html +23 -0
- data/doc/classes/Imlib2/Color/HlsaColor.src/M000074.html +23 -0
- data/doc/classes/Imlib2/Color/HlsaColor.src/M000075.html +23 -0
- data/doc/classes/Imlib2/Color/HlsaColor.src/M000076.html +23 -0
- data/doc/classes/Imlib2/Color/HlsaColor.src/M000077.html +23 -0
- data/doc/classes/Imlib2/Color/HlsaColor.src/M000078.html +23 -0
- data/doc/classes/Imlib2/Color/HlsaColor.src/M000079.html +23 -0
- data/doc/classes/Imlib2/Color/HlsaColor.src/M000080.html +23 -0
- data/doc/classes/Imlib2/Color/HsvaColor.html +602 -0
- data/doc/classes/Imlib2/Color/HsvaColor.src/M000021.html +27 -0
- data/doc/classes/Imlib2/Color/HsvaColor.src/M000022.html +21 -0
- data/doc/classes/Imlib2/Color/HsvaColor.src/M000025.html +23 -0
- data/doc/classes/Imlib2/Color/HsvaColor.src/M000026.html +23 -0
- data/doc/classes/Imlib2/Color/HsvaColor.src/M000027.html +23 -0
- data/doc/classes/Imlib2/Color/HsvaColor.src/M000028.html +23 -0
- data/doc/classes/Imlib2/Color/HsvaColor.src/M000029.html +23 -0
- data/doc/classes/Imlib2/Color/HsvaColor.src/M000030.html +23 -0
- data/doc/classes/Imlib2/Color/HsvaColor.src/M000031.html +23 -0
- data/doc/classes/Imlib2/Color/HsvaColor.src/M000032.html +23 -0
- data/doc/classes/Imlib2/Color/HsvaColor.src/M000033.html +23 -0
- data/doc/classes/Imlib2/Color/HsvaColor.src/M000034.html +23 -0
- data/doc/classes/Imlib2/Color/HsvaColor.src/M000035.html +23 -0
- data/doc/classes/Imlib2/Color/HsvaColor.src/M000036.html +23 -0
- data/doc/classes/Imlib2/Color/HsvaColor.src/M000037.html +23 -0
- data/doc/classes/Imlib2/Color/HsvaColor.src/M000038.html +23 -0
- data/doc/classes/Imlib2/Color/HsvaColor.src/M000039.html +23 -0
- data/doc/classes/Imlib2/Color/HsvaColor.src/M000040.html +23 -0
- data/doc/classes/Imlib2/Color/RgbaColor.html +598 -0
- data/doc/classes/Imlib2/Color/RgbaColor.src/M000041.html +27 -0
- data/doc/classes/Imlib2/Color/RgbaColor.src/M000042.html +21 -0
- data/doc/classes/Imlib2/Color/RgbaColor.src/M000045.html +23 -0
- data/doc/classes/Imlib2/Color/RgbaColor.src/M000046.html +23 -0
- data/doc/classes/Imlib2/Color/RgbaColor.src/M000047.html +23 -0
- data/doc/classes/Imlib2/Color/RgbaColor.src/M000048.html +23 -0
- data/doc/classes/Imlib2/Color/RgbaColor.src/M000049.html +23 -0
- data/doc/classes/Imlib2/Color/RgbaColor.src/M000050.html +23 -0
- data/doc/classes/Imlib2/Color/RgbaColor.src/M000051.html +23 -0
- data/doc/classes/Imlib2/Color/RgbaColor.src/M000052.html +23 -0
- data/doc/classes/Imlib2/Color/RgbaColor.src/M000053.html +23 -0
- data/doc/classes/Imlib2/Color/RgbaColor.src/M000054.html +23 -0
- data/doc/classes/Imlib2/Color/RgbaColor.src/M000055.html +23 -0
- data/doc/classes/Imlib2/Color/RgbaColor.src/M000056.html +23 -0
- data/doc/classes/Imlib2/Color/RgbaColor.src/M000057.html +23 -0
- data/doc/classes/Imlib2/Color/RgbaColor.src/M000058.html +23 -0
- data/doc/classes/Imlib2/Color/RgbaColor.src/M000059.html +23 -0
- data/doc/classes/Imlib2/Color/RgbaColor.src/M000060.html +23 -0
- data/doc/classes/Imlib2/ColorModifier.html +266 -0
- data/doc/classes/Imlib2/ColorModifier.src/M000414.html +23 -0
- data/doc/classes/Imlib2/ColorModifier.src/M000415.html +22 -0
- data/doc/classes/Imlib2/ColorModifier.src/M000416.html +23 -0
- data/doc/classes/Imlib2/ColorModifier.src/M000417.html +23 -0
- data/doc/classes/Imlib2/ColorModifier.src/M000418.html +23 -0
- data/doc/classes/Imlib2/ColorModifier.src/M000419.html +23 -0
- data/doc/classes/Imlib2/Context.html +2764 -0
- data/doc/classes/Imlib2/Context.src/M000121.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000122.html +22 -0
- data/doc/classes/Imlib2/Context.src/M000123.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000124.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000125.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000126.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000127.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000128.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000129.html +25 -0
- data/doc/classes/Imlib2/Context.src/M000130.html +25 -0
- data/doc/classes/Imlib2/Context.src/M000131.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000132.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000133.html +25 -0
- data/doc/classes/Imlib2/Context.src/M000134.html +25 -0
- data/doc/classes/Imlib2/Context.src/M000135.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000136.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000137.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000138.html +25 -0
- data/doc/classes/Imlib2/Context.src/M000139.html +25 -0
- data/doc/classes/Imlib2/Context.src/M000140.html +25 -0
- data/doc/classes/Imlib2/Context.src/M000141.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000142.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000143.html +25 -0
- data/doc/classes/Imlib2/Context.src/M000144.html +25 -0
- data/doc/classes/Imlib2/Context.src/M000145.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000146.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000147.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000148.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000149.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000150.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000151.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000152.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000153.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000154.html +25 -0
- data/doc/classes/Imlib2/Context.src/M000155.html +25 -0
- data/doc/classes/Imlib2/Context.src/M000156.html +25 -0
- data/doc/classes/Imlib2/Context.src/M000157.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000158.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000159.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000160.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000161.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000162.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000163.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000164.html +25 -0
- data/doc/classes/Imlib2/Context.src/M000165.html +25 -0
- data/doc/classes/Imlib2/Context.src/M000166.html +25 -0
- data/doc/classes/Imlib2/Context.src/M000167.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000168.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000169.html +25 -0
- data/doc/classes/Imlib2/Context.src/M000170.html +25 -0
- data/doc/classes/Imlib2/Context.src/M000171.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000172.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000173.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000174.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000175.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000176.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000177.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000178.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000179.html +26 -0
- data/doc/classes/Imlib2/Context.src/M000180.html +26 -0
- data/doc/classes/Imlib2/Context.src/M000181.html +26 -0
- data/doc/classes/Imlib2/Context.src/M000182.html +26 -0
- data/doc/classes/Imlib2/Context.src/M000183.html +27 -0
- data/doc/classes/Imlib2/Context.src/M000184.html +27 -0
- data/doc/classes/Imlib2/Context.src/M000185.html +27 -0
- data/doc/classes/Imlib2/Context.src/M000186.html +27 -0
- data/doc/classes/Imlib2/Context.src/M000187.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000188.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000189.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000190.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000191.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000192.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000193.html +23 -0
- data/doc/classes/Imlib2/Context.src/M000194.html +25 -0
- data/doc/classes/Imlib2/Context.src/M000195.html +25 -0
- data/doc/classes/Imlib2/Context.src/M000196.html +25 -0
- data/doc/classes/Imlib2/Context.src/M000197.html +28 -0
- data/doc/classes/Imlib2/Context.src/M000198.html +28 -0
- data/doc/classes/Imlib2/Context.src/M000199.html +28 -0
- data/doc/classes/Imlib2/Context.src/M000200.html +28 -0
- data/doc/classes/Imlib2/Context.src/M000201.html +28 -0
- data/doc/classes/Imlib2/Context.src/M000202.html +28 -0
- data/doc/classes/Imlib2/Context.src/M000203.html +28 -0
- data/doc/classes/Imlib2/Context.src/M000204.html +28 -0
- data/doc/classes/Imlib2/Context.src/M000213.html +28 -0
- data/doc/classes/Imlib2/Context.src/M000214.html +28 -0
- data/doc/classes/Imlib2/Context.src/M000215.html +28 -0
- data/doc/classes/Imlib2/Context.src/M000216.html +28 -0
- data/doc/classes/Imlib2/Context.src/M000217.html +28 -0
- data/doc/classes/Imlib2/Context.src/M000218.html +28 -0
- data/doc/classes/Imlib2/Context.src/M000219.html +28 -0
- data/doc/classes/Imlib2/Context.src/M000220.html +28 -0
- data/doc/classes/Imlib2/Context.src/M000221.html +28 -0
- data/doc/classes/Imlib2/Context.src/M000222.html +28 -0
- data/doc/classes/Imlib2/Context.src/M000223.html +28 -0
- data/doc/classes/Imlib2/Context.src/M000224.html +28 -0
- data/doc/classes/Imlib2/Dir.html +106 -0
- data/doc/classes/Imlib2/Direction.html +164 -0
- data/doc/classes/Imlib2/Encoding.html +139 -0
- data/doc/classes/Imlib2/Error.html +112 -0
- data/doc/classes/Imlib2/Error/DeletedError.html +112 -0
- data/doc/classes/Imlib2/FileError.html +112 -0
- data/doc/classes/Imlib2/Filter.html +410 -0
- data/doc/classes/Imlib2/Filter.src/M000366.html +23 -0
- data/doc/classes/Imlib2/Filter.src/M000367.html +22 -0
- data/doc/classes/Imlib2/Filter.src/M000368.html +23 -0
- data/doc/classes/Imlib2/Filter.src/M000371.html +23 -0
- data/doc/classes/Imlib2/Filter.src/M000372.html +23 -0
- data/doc/classes/Imlib2/Filter.src/M000373.html +23 -0
- data/doc/classes/Imlib2/Filter.src/M000374.html +23 -0
- data/doc/classes/Imlib2/Filter.src/M000375.html +23 -0
- data/doc/classes/Imlib2/Filter.src/M000376.html +23 -0
- data/doc/classes/Imlib2/Filter.src/M000377.html +23 -0
- data/doc/classes/Imlib2/Filter.src/M000378.html +23 -0
- data/doc/classes/Imlib2/Font.html +1008 -0
- data/doc/classes/Imlib2/Font.src/M000379.html +28 -0
- data/doc/classes/Imlib2/Font.src/M000380.html +28 -0
- data/doc/classes/Imlib2/Font.src/M000381.html +22 -0
- data/doc/classes/Imlib2/Font.src/M000382.html +27 -0
- data/doc/classes/Imlib2/Font.src/M000383.html +27 -0
- data/doc/classes/Imlib2/Font.src/M000384.html +27 -0
- data/doc/classes/Imlib2/Font.src/M000385.html +28 -0
- data/doc/classes/Imlib2/Font.src/M000386.html +28 -0
- data/doc/classes/Imlib2/Font.src/M000387.html +28 -0
- data/doc/classes/Imlib2/Font.src/M000388.html +24 -0
- data/doc/classes/Imlib2/Font.src/M000389.html +24 -0
- data/doc/classes/Imlib2/Font.src/M000390.html +24 -0
- data/doc/classes/Imlib2/Font.src/M000391.html +24 -0
- data/doc/classes/Imlib2/Font.src/M000392.html +24 -0
- data/doc/classes/Imlib2/Font.src/M000393.html +24 -0
- data/doc/classes/Imlib2/Font.src/M000394.html +24 -0
- data/doc/classes/Imlib2/Font.src/M000395.html +23 -0
- data/doc/classes/Imlib2/Font.src/M000396.html +23 -0
- data/doc/classes/Imlib2/Font.src/M000397.html +23 -0
- data/doc/classes/Imlib2/Font.src/M000398.html +23 -0
- data/doc/classes/Imlib2/Font.src/M000399.html +23 -0
- data/doc/classes/Imlib2/Font.src/M000400.html +23 -0
- data/doc/classes/Imlib2/Font.src/M000401.html +23 -0
- data/doc/classes/Imlib2/Font.src/M000402.html +23 -0
- data/doc/classes/Imlib2/Font.src/M000403.html +23 -0
- data/doc/classes/Imlib2/Font.src/M000404.html +23 -0
- data/doc/classes/Imlib2/Font.src/M000405.html +23 -0
- data/doc/classes/Imlib2/Font.src/M000406.html +23 -0
- data/doc/classes/Imlib2/Font.src/M000407.html +23 -0
- data/doc/classes/Imlib2/Font.src/M000408.html +23 -0
- data/doc/classes/Imlib2/Font.src/M000409.html +23 -0
- data/doc/classes/Imlib2/Font.src/M000410.html +23 -0
- data/doc/classes/Imlib2/Font.src/M000411.html +23 -0
- data/doc/classes/Imlib2/Font.src/M000412.html +23 -0
- data/doc/classes/Imlib2/Font.src/M000413.html +23 -0
- data/doc/classes/Imlib2/Gradient.html +208 -0
- data/doc/classes/Imlib2/Gradient.src/M000420.html +32 -0
- data/doc/classes/Imlib2/Gradient.src/M000421.html +23 -0
- data/doc/classes/Imlib2/Gradient.src/M000422.html +27 -0
- data/doc/classes/Imlib2/Image.html +4005 -0
- data/doc/classes/Imlib2/Image.src/M000225.html +26 -0
- data/doc/classes/Imlib2/Image.src/M000226.html +20 -0
- data/doc/classes/Imlib2/Image.src/M000227.html +29 -0
- data/doc/classes/Imlib2/Image.src/M000228.html +29 -0
- data/doc/classes/Imlib2/Image.src/M000229.html +29 -0
- data/doc/classes/Imlib2/Image.src/M000230.html +29 -0
- data/doc/classes/Imlib2/Image.src/M000231.html +26 -0
- data/doc/classes/Imlib2/Image.src/M000232.html +26 -0
- data/doc/classes/Imlib2/Image.src/M000233.html +26 -0
- data/doc/classes/Imlib2/Image.src/M000234.html +29 -0
- data/doc/classes/Imlib2/Image.src/M000235.html +27 -0
- data/doc/classes/Imlib2/Image.src/M000236.html +27 -0
- data/doc/classes/Imlib2/Image.src/M000237.html +27 -0
- data/doc/classes/Imlib2/Image.src/M000238.html +28 -0
- data/doc/classes/Imlib2/Image.src/M000239.html +31 -0
- data/doc/classes/Imlib2/Image.src/M000240.html +30 -0
- data/doc/classes/Imlib2/Image.src/M000241.html +26 -0
- data/doc/classes/Imlib2/Image.src/M000242.html +27 -0
- data/doc/classes/Imlib2/Image.src/M000243.html +29 -0
- data/doc/classes/Imlib2/Image.src/M000244.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000245.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000246.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000247.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000248.html +23 -0
- data/doc/classes/Imlib2/Image.src/M000249.html +23 -0
- data/doc/classes/Imlib2/Image.src/M000250.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000251.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000252.html +30 -0
- data/doc/classes/Imlib2/Image.src/M000253.html +30 -0
- data/doc/classes/Imlib2/Image.src/M000254.html +25 -0
- data/doc/classes/Imlib2/Image.src/M000255.html +25 -0
- data/doc/classes/Imlib2/Image.src/M000256.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000257.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000258.html +23 -0
- data/doc/classes/Imlib2/Image.src/M000259.html +23 -0
- data/doc/classes/Imlib2/Image.src/M000260.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000261.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000262.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000263.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000264.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000265.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000266.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000267.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000268.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000269.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000270.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000271.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000272.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000273.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000274.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000275.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000276.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000277.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000278.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000279.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000280.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000281.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000282.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000283.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000284.html +33 -0
- data/doc/classes/Imlib2/Image.src/M000285.html +33 -0
- data/doc/classes/Imlib2/Image.src/M000286.html +33 -0
- data/doc/classes/Imlib2/Image.src/M000287.html +33 -0
- data/doc/classes/Imlib2/Image.src/M000288.html +41 -0
- data/doc/classes/Imlib2/Image.src/M000289.html +41 -0
- data/doc/classes/Imlib2/Image.src/M000290.html +41 -0
- data/doc/classes/Imlib2/Image.src/M000291.html +41 -0
- data/doc/classes/Imlib2/Image.src/M000292.html +23 -0
- data/doc/classes/Imlib2/Image.src/M000293.html +23 -0
- data/doc/classes/Imlib2/Image.src/M000294.html +23 -0
- data/doc/classes/Imlib2/Image.src/M000295.html +23 -0
- data/doc/classes/Imlib2/Image.src/M000296.html +23 -0
- data/doc/classes/Imlib2/Image.src/M000297.html +23 -0
- data/doc/classes/Imlib2/Image.src/M000298.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000299.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000300.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000301.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000302.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000303.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000304.html +23 -0
- data/doc/classes/Imlib2/Image.src/M000305.html +23 -0
- data/doc/classes/Imlib2/Image.src/M000306.html +23 -0
- data/doc/classes/Imlib2/Image.src/M000307.html +23 -0
- data/doc/classes/Imlib2/Image.src/M000308.html +23 -0
- data/doc/classes/Imlib2/Image.src/M000309.html +23 -0
- data/doc/classes/Imlib2/Image.src/M000310.html +30 -0
- data/doc/classes/Imlib2/Image.src/M000311.html +34 -0
- data/doc/classes/Imlib2/Image.src/M000313.html +32 -0
- data/doc/classes/Imlib2/Image.src/M000314.html +32 -0
- data/doc/classes/Imlib2/Image.src/M000315.html +32 -0
- data/doc/classes/Imlib2/Image.src/M000316.html +32 -0
- data/doc/classes/Imlib2/Image.src/M000317.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000318.html +33 -0
- data/doc/classes/Imlib2/Image.src/M000319.html +32 -0
- data/doc/classes/Imlib2/Image.src/M000320.html +32 -0
- data/doc/classes/Imlib2/Image.src/M000321.html +30 -0
- data/doc/classes/Imlib2/Image.src/M000322.html +30 -0
- data/doc/classes/Imlib2/Image.src/M000323.html +30 -0
- data/doc/classes/Imlib2/Image.src/M000324.html +30 -0
- data/doc/classes/Imlib2/Image.src/M000325.html +48 -0
- data/doc/classes/Imlib2/Image.src/M000326.html +28 -0
- data/doc/classes/Imlib2/Image.src/M000327.html +28 -0
- data/doc/classes/Imlib2/Image.src/M000328.html +28 -0
- data/doc/classes/Imlib2/Image.src/M000329.html +28 -0
- data/doc/classes/Imlib2/Image.src/M000330.html +29 -0
- data/doc/classes/Imlib2/Image.src/M000331.html +29 -0
- data/doc/classes/Imlib2/Image.src/M000332.html +25 -0
- data/doc/classes/Imlib2/Image.src/M000333.html +25 -0
- data/doc/classes/Imlib2/Image.src/M000334.html +43 -0
- data/doc/classes/Imlib2/Image.src/M000335.html +43 -0
- data/doc/classes/Imlib2/Image.src/M000336.html +44 -0
- data/doc/classes/Imlib2/Image.src/M000337.html +44 -0
- data/doc/classes/Imlib2/Image.src/M000338.html +23 -0
- data/doc/classes/Imlib2/Image.src/M000339.html +23 -0
- data/doc/classes/Imlib2/Image.src/M000340.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000341.html +24 -0
- data/doc/classes/Imlib2/Image.src/M000342.html +23 -0
- data/doc/classes/Imlib2/Image.src/M000343.html +21 -0
- data/doc/classes/Imlib2/Image.src/M000344.html +21 -0
- data/doc/classes/Imlib2/Image.src/M000345.html +31 -0
- data/doc/classes/Imlib2/Image.src/M000346.html +31 -0
- data/doc/classes/Imlib2/Image.src/M000347.html +28 -0
- data/doc/classes/Imlib2/Image.src/M000348.html +28 -0
- data/doc/classes/Imlib2/Image.src/M000349.html +32 -0
- data/doc/classes/Imlib2/Image.src/M000350.html +32 -0
- data/doc/classes/Imlib2/Image.src/M000351.html +32 -0
- data/doc/classes/Imlib2/Image.src/M000352.html +23 -0
- data/doc/classes/Imlib2/Image.src/M000353.html +23 -0
- data/doc/classes/Imlib2/Image.src/M000354.html +22 -0
- data/doc/classes/Imlib2/Image.src/M000355.html +23 -0
- data/doc/classes/Imlib2/Image.src/M000356.html +23 -0
- data/doc/classes/Imlib2/Op.html +134 -0
- data/doc/classes/Imlib2/Operation.html +134 -0
- data/doc/classes/Imlib2/Polygon.html +304 -0
- data/doc/classes/Imlib2/Polygon.src/M000114.html +26 -0
- data/doc/classes/Imlib2/Polygon.src/M000115.html +22 -0
- data/doc/classes/Imlib2/Polygon.src/M000116.html +23 -0
- data/doc/classes/Imlib2/Polygon.src/M000117.html +24 -0
- data/doc/classes/Imlib2/Polygon.src/M000118.html +24 -0
- data/doc/classes/Imlib2/Polygon.src/M000119.html +27 -0
- data/doc/classes/Imlib2/Polygon.src/M000120.html +27 -0
- data/doc/created.rid +1 -0
- data/doc/files/AUTHORS.html +213 -0
- data/doc/files/COPYING.html +132 -0
- data/doc/files/ChangeLog.html +844 -0
- data/doc/files/README.html +201 -0
- data/doc/files/TODO.html +141 -0
- data/doc/files/imlib2_c.html +102 -0
- data/doc/fr_class_index.html +49 -0
- data/doc/fr_file_index.html +32 -0
- data/doc/fr_method_index.html +448 -0
- data/doc/index.html +24 -0
- data/doc/rdoc-style.css +208 -0
- data/examples/checkerboard.rb +66 -0
- data/examples/fonts/yudit.ttf +0 -0
- data/examples/images/bill_gates.jpg +0 -0
- data/examples/images/clown.jpg +0 -0
- data/examples/oo-board.rb +90 -0
- data/examples/test_attach.rb +23 -0
- data/examples/test_font.rb +77 -0
- data/examples/test_imlib2.rb +121 -0
- data/examples/test_poly.rb +29 -0
- data/extconf.rb +22 -0
- data/imlib2.c +8183 -0
- data/imlib2.gemspec +39 -0
- metadata +494 -0
data/doc/index.html
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
+
<!DOCTYPE html
|
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
|
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
|
|
5
|
+
|
|
6
|
+
<!--
|
|
7
|
+
|
|
8
|
+
Imlib2-Ruby API Documentation
|
|
9
|
+
|
|
10
|
+
-->
|
|
11
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
|
12
|
+
<head>
|
|
13
|
+
<title>Imlib2-Ruby API Documentation</title>
|
|
14
|
+
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
15
|
+
</head>
|
|
16
|
+
<frameset rows="20%, 80%">
|
|
17
|
+
<frameset cols="25%,35%,45%">
|
|
18
|
+
<frame src="fr_file_index.html" title="Files" name="Files" />
|
|
19
|
+
<frame src="fr_class_index.html" name="Classes" />
|
|
20
|
+
<frame src="fr_method_index.html" name="Methods" />
|
|
21
|
+
</frameset>
|
|
22
|
+
<frame src="files/imlib2_c.html" name="docwin" />
|
|
23
|
+
</frameset>
|
|
24
|
+
</html>
|
data/doc/rdoc-style.css
ADDED
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
|
|
2
|
+
body {
|
|
3
|
+
font-family: Verdana,Arial,Helvetica,sans-serif;
|
|
4
|
+
font-size: 90%;
|
|
5
|
+
margin: 0;
|
|
6
|
+
margin-left: 40px;
|
|
7
|
+
padding: 0;
|
|
8
|
+
background: white;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
h1,h2,h3,h4 { margin: 0; color: #efefef; background: transparent; }
|
|
12
|
+
h1 { font-size: 150%; }
|
|
13
|
+
h2,h3,h4 { margin-top: 1em; }
|
|
14
|
+
|
|
15
|
+
a { background: #eef; color: #039; text-decoration: none; }
|
|
16
|
+
a:hover { background: #039; color: #eef; }
|
|
17
|
+
|
|
18
|
+
/* Override the base stylesheet's Anchor inside a table cell */
|
|
19
|
+
td > a {
|
|
20
|
+
background: transparent;
|
|
21
|
+
color: #039;
|
|
22
|
+
text-decoration: none;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
/* and inside a section title */
|
|
26
|
+
.section-title > a {
|
|
27
|
+
background: transparent;
|
|
28
|
+
color: #eee;
|
|
29
|
+
text-decoration: none;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
/* === Structural elements =================================== */
|
|
33
|
+
|
|
34
|
+
div#index {
|
|
35
|
+
margin: 0;
|
|
36
|
+
margin-left: -40px;
|
|
37
|
+
padding: 0;
|
|
38
|
+
font-size: 90%;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
div#index a {
|
|
43
|
+
margin-left: 0.7em;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
div#index .section-bar {
|
|
47
|
+
margin-left: 0px;
|
|
48
|
+
padding-left: 0.7em;
|
|
49
|
+
background: #ccc;
|
|
50
|
+
font-size: small;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
div#classHeader, div#fileHeader {
|
|
55
|
+
width: auto;
|
|
56
|
+
color: white;
|
|
57
|
+
padding: 0.5em 1.5em 0.5em 1.5em;
|
|
58
|
+
margin: 0;
|
|
59
|
+
margin-left: -40px;
|
|
60
|
+
border-bottom: 3px solid #006;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
div#classHeader a, div#fileHeader a {
|
|
64
|
+
background: inherit;
|
|
65
|
+
color: white;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
div#classHeader td, div#fileHeader td {
|
|
69
|
+
background: inherit;
|
|
70
|
+
color: white;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
div#fileHeader {
|
|
75
|
+
background: #057;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
div#classHeader {
|
|
79
|
+
background: #048;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
.class-name-in-header {
|
|
84
|
+
font-size: 180%;
|
|
85
|
+
font-weight: bold;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
div#bodyContent {
|
|
90
|
+
padding: 0 1.5em 0 1.5em;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
div#description {
|
|
94
|
+
padding: 0.5em 1.5em;
|
|
95
|
+
background: #efefef;
|
|
96
|
+
border: 1px dotted #999;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
div#description h1,h2,h3,h4,h5,h6 {
|
|
100
|
+
color: #125;;
|
|
101
|
+
background: transparent;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
div#validator-badges {
|
|
105
|
+
text-align: center;
|
|
106
|
+
}
|
|
107
|
+
div#validator-badges img { border: 0; }
|
|
108
|
+
|
|
109
|
+
div#copyright {
|
|
110
|
+
color: #333;
|
|
111
|
+
background: #efefef;
|
|
112
|
+
font: 0.75em sans-serif;
|
|
113
|
+
margin-top: 5em;
|
|
114
|
+
margin-bottom: 0;
|
|
115
|
+
padding: 0.5em 2em;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
|
|
119
|
+
/* === Classes =================================== */
|
|
120
|
+
|
|
121
|
+
table.header-table {
|
|
122
|
+
color: white;
|
|
123
|
+
font-size: small;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
.type-note {
|
|
127
|
+
font-size: small;
|
|
128
|
+
color: #DEDEDE;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
.xxsection-bar {
|
|
132
|
+
background: #eee;
|
|
133
|
+
color: #333;
|
|
134
|
+
padding: 3px;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
.section-bar {
|
|
138
|
+
color: #333;
|
|
139
|
+
border-bottom: 1px solid #999;
|
|
140
|
+
margin-left: -20px;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
|
|
144
|
+
.section-title {
|
|
145
|
+
background: #79a;
|
|
146
|
+
color: #eee;
|
|
147
|
+
padding: 3px;
|
|
148
|
+
margin-top: 2em;
|
|
149
|
+
margin-left: -30px;
|
|
150
|
+
border: 1px solid #999;
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
.top-aligned-row { vertical-align: top }
|
|
154
|
+
.bottom-aligned-row { vertical-align: bottom }
|
|
155
|
+
|
|
156
|
+
/* --- Context section classes ----------------------- */
|
|
157
|
+
|
|
158
|
+
.context-row { }
|
|
159
|
+
.context-item-name { font-family: monospace; font-weight: bold; color: black; }
|
|
160
|
+
.context-item-value { font-size: small; color: #448; }
|
|
161
|
+
.context-item-desc { color: #333; padding-left: 2em; }
|
|
162
|
+
|
|
163
|
+
/* --- Method classes -------------------------- */
|
|
164
|
+
.method-detail {
|
|
165
|
+
background: #efefef;
|
|
166
|
+
padding: 0;
|
|
167
|
+
margin-top: 0.5em;
|
|
168
|
+
margin-bottom: 1em;
|
|
169
|
+
border: 1px dotted #ccc;
|
|
170
|
+
}
|
|
171
|
+
.method-heading {
|
|
172
|
+
color: black;
|
|
173
|
+
background: #ccc;
|
|
174
|
+
border-bottom: 1px solid #666;
|
|
175
|
+
padding: 0.2em 0.5em 0 0.5em;
|
|
176
|
+
}
|
|
177
|
+
.method-signature { color: black; background: inherit; }
|
|
178
|
+
.method-name { font-weight: bold; }
|
|
179
|
+
.method-args { font-style: italic; }
|
|
180
|
+
.method-description { padding: 0 0.5em 0 0.5em; }
|
|
181
|
+
|
|
182
|
+
/* --- Source code sections -------------------- */
|
|
183
|
+
|
|
184
|
+
a.source-toggle { font-size: 90%; }
|
|
185
|
+
div.method-source-code {
|
|
186
|
+
background: #262626;
|
|
187
|
+
color: #ffdead;
|
|
188
|
+
margin: 1em;
|
|
189
|
+
padding: 0.5em;
|
|
190
|
+
border: 1px dashed #999;
|
|
191
|
+
overflow: hidden;
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
div.method-source-code pre { color: #ffdead; overflow: hidden; }
|
|
195
|
+
|
|
196
|
+
/* --- Ruby keyword styles --------------------- */
|
|
197
|
+
|
|
198
|
+
.standalone-code { background: #221111; color: #ffdead; overflow: hidden; }
|
|
199
|
+
|
|
200
|
+
.ruby-constant { color: #7fffd4; background: transparent; }
|
|
201
|
+
.ruby-keyword { color: #00ffff; background: transparent; }
|
|
202
|
+
.ruby-ivar { color: #eedd82; background: transparent; }
|
|
203
|
+
.ruby-operator { color: #00ffee; background: transparent; }
|
|
204
|
+
.ruby-identifier { color: #ffdead; background: transparent; }
|
|
205
|
+
.ruby-node { color: #ffa07a; background: transparent; }
|
|
206
|
+
.ruby-comment { color: #b22222; font-weight: bold; background: transparent; }
|
|
207
|
+
.ruby-regexp { color: #ffa07a; background: transparent; }
|
|
208
|
+
.ruby-value { color: #7fffd4; background: transparent; }
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
#!/usr/bin/ruby
|
|
2
|
+
|
|
3
|
+
########################################################################
|
|
4
|
+
# checkerboard.rb - draw a checkerboard #
|
|
5
|
+
# (c) 2002 Paul Duncan <pabs@pablotron.org> #
|
|
6
|
+
# #
|
|
7
|
+
# - test Imlib2::Image#fill_rect, Imlib2::Image#save, and color #
|
|
8
|
+
# constants (Imlib2::Color::BLACK, Imlib2::Color::WHITE, etc) #
|
|
9
|
+
########################################################################
|
|
10
|
+
|
|
11
|
+
# load imlib2 bindings
|
|
12
|
+
require "imlib2"
|
|
13
|
+
|
|
14
|
+
# number, width, and height of boxes
|
|
15
|
+
w, h, bw, bh = 10, 10, 48, 48
|
|
16
|
+
|
|
17
|
+
# foreground (gradient), background, top piece, and bottom piece colors
|
|
18
|
+
fg = [Imlib2::Color::DARKGREY, Imlib2::Color::LIGHTGREY]
|
|
19
|
+
bg = Imlib2::Color::BLACK
|
|
20
|
+
tc, bc = Imlib2::Color::RED, Imlib2::Color::BLUE
|
|
21
|
+
|
|
22
|
+
# set output filename (use command-line argument if specified)
|
|
23
|
+
filename = "checkerboard.png"
|
|
24
|
+
filename = ARGV.pop if ARGV.length > 0
|
|
25
|
+
|
|
26
|
+
# allocate the new image and fill it with the background color
|
|
27
|
+
im = Imlib2::Image.new w * bw, h * bh
|
|
28
|
+
im.fill_rect [0, 0], [w * bw, h * bh], bg
|
|
29
|
+
|
|
30
|
+
# create foreground gradient
|
|
31
|
+
gradient = Imlib2::Gradient.new [0, fg[0]], [1, fg[1]]
|
|
32
|
+
|
|
33
|
+
# fill squares with foreground gradient
|
|
34
|
+
puts "Generating checkerboard..."
|
|
35
|
+
0.upto(w / 2) { |x|
|
|
36
|
+
0.upto(h / 2) { |y|
|
|
37
|
+
(0..1).each { |i|
|
|
38
|
+
rect = [x * bw * 2 + bw * i, y * bh * 2 + bh * i, bw, bh]
|
|
39
|
+
im.fill_gradient gradient, rect, 135.0
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
# draw checker pieces
|
|
45
|
+
puts "Generating pieces..."
|
|
46
|
+
0.upto(w - 1) { |x|
|
|
47
|
+
0.upto(2) { |y|
|
|
48
|
+
# draw top piece
|
|
49
|
+
rect = [x * bw + bw/2, y * bh + bh/2, bw * 2/5, bh * 2/5]
|
|
50
|
+
# Imlib2 bug (works properly w/ draw_ellipse, but not w/ fill_ellipse)
|
|
51
|
+
im.fill_ellipse rect, tc if (x - (y % 2)) % 2 == 1
|
|
52
|
+
|
|
53
|
+
# draw bottom piece
|
|
54
|
+
rect[1] = h * bh - rect[1]
|
|
55
|
+
# Imlib2 bug (works properly w/ draw_ellipse, but not w/ fill_ellipse)
|
|
56
|
+
im.fill_ellipse rect, bc if (x - (y % 2)) % 2 == 0
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
# save image (with error checking)
|
|
61
|
+
puts "Saving to \"#{filename}\"."
|
|
62
|
+
begin
|
|
63
|
+
im.save filename
|
|
64
|
+
rescue Imlib2::FileError
|
|
65
|
+
$stderr.puts "Couldn't save \"#{filename}\": " + $!
|
|
66
|
+
end
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
#!/usr/bin/ruby
|
|
2
|
+
|
|
3
|
+
########################################################################
|
|
4
|
+
# oo-board.rb - draw a checkerboard (object-oriented version) #
|
|
5
|
+
# (c) 2002 Paul Duncan <pabs@pablotron.org> #
|
|
6
|
+
# #
|
|
7
|
+
# - test Imlib2::Image#fill_rect, Imlib2::Image#save, and color #
|
|
8
|
+
# constants (Imlib2::Color::BLACK, Imlib2::Color::WHITE, etc) #
|
|
9
|
+
########################################################################
|
|
10
|
+
|
|
11
|
+
# load imlib2 bindings
|
|
12
|
+
require "imlib2"
|
|
13
|
+
|
|
14
|
+
class CheckerBoard
|
|
15
|
+
attr_accessor :w, :h, :bw, :bh, :fg, :bg, :tc, :bc
|
|
16
|
+
|
|
17
|
+
def initialize(*args)
|
|
18
|
+
# number, width, and height of boxes
|
|
19
|
+
@w, @h, @bw, @bh = args
|
|
20
|
+
|
|
21
|
+
# foreground, background, top piece, and bottom piece colors
|
|
22
|
+
@fg, @bg = Imlib2::Color::WHITE, Imlib2::Color::BLACK
|
|
23
|
+
@tc, @bc = Imlib2::Color::RED, Imlib2::Color::BLUE
|
|
24
|
+
|
|
25
|
+
# allocate the new image and fill it with the background color
|
|
26
|
+
@im = Imlib2::Image.new @w * @bw, @h * @bh
|
|
27
|
+
@im.fill_rect [0, 0], [@w * @bw, @h * @bh], @bg
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
# fill squares with foreground color
|
|
31
|
+
def draw_squares()
|
|
32
|
+
0.upto(@w / 2) { |x|
|
|
33
|
+
0.upto(@h / 2) { |y|
|
|
34
|
+
(0..1).each { |i|
|
|
35
|
+
rect = [x * @bw * 2 + @bw * i, y * @bh * 2 + @bh * i, @bw, @bh]
|
|
36
|
+
@im.fill_rect rect, @fg
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
# draw checker pieces
|
|
43
|
+
def draw_pieces()
|
|
44
|
+
0.upto(@w - 1) { |x|
|
|
45
|
+
0.upto(2) { |y|
|
|
46
|
+
# draw top piece
|
|
47
|
+
rect = [x * @bw + @bw / 2, y * @bh + @bh / 2, @bw * 0.4, @bh * 0.4]
|
|
48
|
+
# Imlib2 bug (works w/ draw_ellipse, but not w/ fill_ellipse)
|
|
49
|
+
@im.fill_ellipse rect, @tc if (x - (y % 2)) % 2 == 1
|
|
50
|
+
|
|
51
|
+
# draw bottom piece
|
|
52
|
+
rect[1] = h * @bh - rect[1]
|
|
53
|
+
# Imlib2 bug (works w/ draw_ellipse, but not w/ fill_ellipse)
|
|
54
|
+
@im.fill_ellipse rect, @bc if (x - (y % 2)) % 2 == 0
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
# save image
|
|
60
|
+
def save(filename)
|
|
61
|
+
@im.save filename
|
|
62
|
+
end
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
# if this file is the executable, then test out our member functions by
|
|
66
|
+
# creating a CheckerBoard instance and saving it as 'checkerboard.png'
|
|
67
|
+
# (unless a filename was passed on the command line)
|
|
68
|
+
if $0 == __FILE__
|
|
69
|
+
# set output filename (use argument if specified)
|
|
70
|
+
filename = "checkerboard.png"
|
|
71
|
+
filename = ARGV.pop if ARGV.length > 0
|
|
72
|
+
|
|
73
|
+
board = CheckerBoard.new 10, 10, 48, 48
|
|
74
|
+
|
|
75
|
+
puts "Generating checkerboard..."
|
|
76
|
+
board.draw_squares
|
|
77
|
+
|
|
78
|
+
puts "Generating pieces..."
|
|
79
|
+
board.draw_pieces
|
|
80
|
+
|
|
81
|
+
# save image (with error checking)
|
|
82
|
+
puts "Saving image to \"#{filename}\"..."
|
|
83
|
+
begin
|
|
84
|
+
board.save filename
|
|
85
|
+
rescue Imlib2::FileError
|
|
86
|
+
$stderr.puts "Couldn't save \"#{filename}\": " + $!
|
|
87
|
+
end
|
|
88
|
+
|
|
89
|
+
puts "Done."
|
|
90
|
+
end
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
|
|
3
|
+
OUT_PATH = 'attach.jpg'
|
|
4
|
+
|
|
5
|
+
require 'imlib2'
|
|
6
|
+
|
|
7
|
+
# load image
|
|
8
|
+
im_path = ARGV.shift || (File::dirname($0) << '/images/bill_gates.jpg')
|
|
9
|
+
puts "Loading input image \"#{im_path}\"..."
|
|
10
|
+
im = Imlib2::Image.load(im_path)
|
|
11
|
+
|
|
12
|
+
# assign key, generate random number
|
|
13
|
+
key, val = (ARGV.shift || 'asdf'), (ARGV.shift || rand(10000)).to_i
|
|
14
|
+
|
|
15
|
+
puts "random number: #{val}"
|
|
16
|
+
puts "key: #{key}"
|
|
17
|
+
im[key] = val
|
|
18
|
+
|
|
19
|
+
puts "testing get_attach_value: #{im[key]}"
|
|
20
|
+
|
|
21
|
+
# save output image
|
|
22
|
+
puts 'Saving output image...'
|
|
23
|
+
im.save(OUT_PATH)
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
#!/usr/bin/ruby
|
|
2
|
+
|
|
3
|
+
########################################################################
|
|
4
|
+
# test_font.rb - draw translucent text on an image #
|
|
5
|
+
# (c) 2002 Paul Duncan <pabs@pablotron.org> #
|
|
6
|
+
# #
|
|
7
|
+
# - test Imlib2::Font methods and Imlib2::Color methods #
|
|
8
|
+
########################################################################
|
|
9
|
+
|
|
10
|
+
# load imlib2 binding
|
|
11
|
+
require 'imlib2'
|
|
12
|
+
|
|
13
|
+
# text to draw
|
|
14
|
+
text = 'Bill Gates is a criminal!'
|
|
15
|
+
|
|
16
|
+
# filename variables
|
|
17
|
+
filename = 'images/bill_gates.jpg'
|
|
18
|
+
output_filename = 'test_font_1.png'
|
|
19
|
+
output_filename = ARGV.shift if ARGV.length != 0
|
|
20
|
+
|
|
21
|
+
# font variables
|
|
22
|
+
fontpath = 'fonts'
|
|
23
|
+
# these fonts were removed due to licensing issues
|
|
24
|
+
#fontname = 'quadapto/32'
|
|
25
|
+
#fontname = '20thcent/32'
|
|
26
|
+
fontname = 'yudit/32'
|
|
27
|
+
|
|
28
|
+
# font colors
|
|
29
|
+
colors = [
|
|
30
|
+
Imlib2::Color::RED,
|
|
31
|
+
Imlib2::Color::YELLOW,
|
|
32
|
+
Imlib2::Color::GREEN,
|
|
33
|
+
Imlib2::Color::AQUA,
|
|
34
|
+
Imlib2::Color::BLUE,
|
|
35
|
+
Imlib2::Color::VIOLET,
|
|
36
|
+
].each { |color| color.a = 128 }
|
|
37
|
+
|
|
38
|
+
# text drop-shadow x offset, y offset, and color
|
|
39
|
+
sh = {
|
|
40
|
+
'x' => 2,
|
|
41
|
+
'y' => 2,
|
|
42
|
+
'color' => Imlib2::Color::RgbaColor.new(0, 0, 0, 64),
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
# load filename
|
|
46
|
+
begin
|
|
47
|
+
im = Imlib2::Image::load filename
|
|
48
|
+
rescue Imlib2::FileError
|
|
49
|
+
die "Couldn't load \"#{filename}\": " + $!
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
# add specified font path and load font
|
|
53
|
+
Imlib2::Font::add_path fontpath
|
|
54
|
+
font = Imlib2::Font.new fontname
|
|
55
|
+
|
|
56
|
+
# get the height and width of the specified text with our font, and use that
|
|
57
|
+
# to calculate the x and y offset so the text will be centered
|
|
58
|
+
fw, fh = font.size text
|
|
59
|
+
fx, fy = (im.width - fw) / 2, (im.height / 2 - fh) / 2;
|
|
60
|
+
|
|
61
|
+
# draw text on image with specified font and color
|
|
62
|
+
c_i = -1
|
|
63
|
+
0.upto(im.height / fh) { |offset|
|
|
64
|
+
# draw drop-shadow
|
|
65
|
+
im.draw_text font, text, fx + sh['x'], fh * offset + sh['y'], sh['color']
|
|
66
|
+
|
|
67
|
+
# draw text (in specified color)
|
|
68
|
+
color = colors[c_i = (c_i + 1) % colors.length]
|
|
69
|
+
im.draw_text font, text, fx, fh * offset, color
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
# save image to output filename
|
|
73
|
+
begin
|
|
74
|
+
im.save output_filename
|
|
75
|
+
rescue Imlib2::FileError
|
|
76
|
+
$stderr.puts "Couldn't save \"#{output_filename}\": " + $!
|
|
77
|
+
end
|