{"id":322,"date":"2013-07-30T18:08:35","date_gmt":"2013-07-30T09:08:35","guid":{"rendered":"http:\/\/morishige.jp\/blog\/?p=322"},"modified":"2013-07-30T18:29:05","modified_gmt":"2013-07-30T09:29:05","slug":"actionscript3-bitmapdata%e3%82%92jpeg%e3%82%84png%e3%81%ab%e5%a4%89%e6%8f%9b%e3%81%99%e3%82%8b","status":"publish","type":"post","link":"https:\/\/morishige.jp\/blog\/archives\/322","title":{"rendered":"ActionScript3 BitmapData\u3092Jpeg\u3084PNG\u306b\u5909\u63db\u3059\u308b"},"content":{"rendered":"<p>Flash Player 11.3 \u4ee5\u964d\u3001BitmapData\u306bencode\u30e1\u30bd\u30c3\u30c9\u304c\u8ffd\u52a0\u3055\u308c\u307e\u3057\u305f\u3002<br \/>\n\u3053\u308c\u3092\u5229\u7528\u3057\u305fBitmapData\u306eJpeg\u3084PNG\u3078\u306e\u5909\u63db\u65b9\u6cd5\u3092\u30e1\u30e2\u3002<\/p>\n<pre>\r\nvar bitmapData:BitmapData = new BitmapData(100, 100, false, 0xED1A3D);\r\nvar byteArray:ByteArray = new ByteArray();\r\nbitmapData.encode(bitmapData.rect, new flash.display.PNGEncoderOptions(), byteArray);\r\n<\/pre>\n<p>\u3053\u308c\u3067\u3001byteArray\u306b\u5909\u63db\u5f8c\u306e\u30c7\u30fc\u30bf\u304c\u5165\u308a\u307e\u3059\u3002<\/p>\n<p>bitmapData.encode()\u306e\u7b2c2\u5f15\u6570\u3092\u5909\u3048\u308b\u3053\u3068\u306b\u3088\u3063\u3066\u3001JPEG\u3084JPEGXR\u306b\u3082\u3067\u304d\u307e\u3059\u3002<br \/>\n\u4ee5\u4e0b\u306e\uff13\u7a2e\u985e<\/p>\n<ul>\n<li>PNGEncoderOptions<\/li>\n<li>JPEGEncoderOptions<\/li>\n<li>JPEGXREncoderOptions<\/li>\n<\/ul>\n<p>\u4ee5\u4e0b\u3001wonderfl\u306bFlash Player 11.3\u4ee5\u524d\u306e\u3084\u308a\u65b9\u306e\u30b5\u30f3\u30d7\u30eb\u304c\u3042\u3063\u305f\u306e\u3067\u3001fork\u3057\u3066\u8ffd\u52a0\u3057\u3066\u307f\u307e\u3057\u305f\u3002<\/p>\n<p><script type=\"text\/javascript\" src=\"http:\/\/wonderfl.net\/blogparts\/k4MV\/js\"><\/script><\/p>\n<p class=\"ttlBpWonderfl\" style=\"width: 465px; margin: 0; text-align: right; font-size: 11px;\"><a href=\"http:\/\/wonderfl.net\/c\/k4MV\" title=\"BitmapData\u306ePNG, Jpeg, JpegXR\u3078\u306e\u5909\u63db\">BitmapData\u306ePNG, Jpeg, JpegXR\u3078\u306e\u5909\u63db &#8211; wonderfl build flash online<\/a><\/p>\n<pre>\r\n\/\/ forked from kihon's flash on 2010-4-24\r\npackage\r\n{\r\n    import flash.display.Bitmap;\r\n    import flash.display.BitmapData;\r\n    import flash.display.Sprite;\r\n    import flash.events.Event;\r\n    import flash.net.FileReference;\r\n    import flash.utils.ByteArray;\r\n    import mx.graphics.codec.PNGEncoder;\r\n    import mx.graphics.codec.JPEGEncoder;\r\n    import com.bit101.components.PushButton;\r\n    \r\n    public class Main extends Sprite\r\n    {    \r\n        private var canvas:BitmapData;\r\n\r\n        public function Main()\r\n        {\r\n            canvas = new BitmapData(100, 100, false, 0xED1A3D);\r\n            var bitmap:Bitmap = new Bitmap(canvas);\r\n            addChild(bitmap);\r\n            bitmap.x = 182;\r\n            bitmap.y = 182;\r\n            \r\n            new PushButton(this, 182, 282, \"\u65e7\u65b9\u5f0f save(PNG)\", onMouseClick);\r\n            new PushButton(this, 182, 302, \"\u65e7\u65b9\u5f0f save(JPEG)\", onMouseClick2);\r\n            new PushButton(this, 182, 322, \"FP11.3\u4ee5\u964d save(PNG)\", onMouseClick3);\r\n            new PushButton(this, 182, 342, \"FP11.3\u4ee5\u964d save(JPEG)\", onMouseClick4);\r\n            new PushButton(this, 182, 362, \"FP11.3\u4ee5\u964d save(JPEGXR)\", onMouseClick5);\r\n        }\r\n\r\n        private function onMouseClick(event:Event):void \r\n        {\r\n            var ba:ByteArray = new PNGEncoder().encode(canvas);\r\n            new FileReference().save(ba, \"t.png\");\r\n        }\r\n        \r\n        private function onMouseClick2(event:Event):void \r\n        {\r\n            var ba:ByteArray = new JPEGEncoder().encode(canvas);\r\n            new FileReference().save(ba, \"t.jpeg\");\r\n        }\r\n        \r\n        private function onMouseClick3(event:Event):void {\r\n            var ba:ByteArray = new ByteArray();\r\n            <strong>canvas.encode(canvas.rect, new flash.display.PNGEncoderOptions(), ba);<\/strong>\r\n            new FileReference().save(ba, \"t2.png\");\r\n        }\r\n        private function onMouseClick4(event:Event):void {\r\n            var ba:ByteArray = new ByteArray();\r\n            <strong>canvas.encode(canvas.rect, new flash.display.JPEGEncoderOptions(), ba);<\/strong>\r\n            new FileReference().save(ba, \"t2.jpeg\");\r\n        }\r\n        private function onMouseClick5(event:Event):void {\r\n            var ba:ByteArray = new ByteArray();\r\n            <strong>canvas.encode(canvas.rect, new flash.display.JPEGXREncoderOptions(), ba);<\/strong>\r\n            new FileReference().save(ba, \"t2.jxr\");\r\n        }\r\n    }\r\n}\r\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Flash Player 11.3 \u4ee5\u964d\u3001BitmapData\u306bencode\u30e1\u30bd\u30c3\u30c9\u304c\u8ffd\u52a0\u3055\u308c\u307e\u3057\u305f\u3002 \u3053\u308c\u3092\u5229\u7528\u3057\u305fBitmapData\u306eJpeg\u3084PNG\u3078\u306e\u5909\u63db\u65b9\u6cd5\u3092\u30e1\u30e2\u3002 var bitmapData:Bitmap [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"class_list":["post-322","post","type-post","status-publish","format-standard","hentry","category-actionscript"],"_links":{"self":[{"href":"https:\/\/morishige.jp\/blog\/wp-json\/wp\/v2\/posts\/322","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/morishige.jp\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/morishige.jp\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/morishige.jp\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/morishige.jp\/blog\/wp-json\/wp\/v2\/comments?post=322"}],"version-history":[{"count":6,"href":"https:\/\/morishige.jp\/blog\/wp-json\/wp\/v2\/posts\/322\/revisions"}],"predecessor-version":[{"id":328,"href":"https:\/\/morishige.jp\/blog\/wp-json\/wp\/v2\/posts\/322\/revisions\/328"}],"wp:attachment":[{"href":"https:\/\/morishige.jp\/blog\/wp-json\/wp\/v2\/media?parent=322"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/morishige.jp\/blog\/wp-json\/wp\/v2\/categories?post=322"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/morishige.jp\/blog\/wp-json\/wp\/v2\/tags?post=322"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}