/raw/src/scratch/TestBitmapSizes.as

https://github.com/yellcorp/Yellib
ActionScript | 103 lines | 86 code | 17 blank | 0 comment | 1 complexity | c087ccb728b5e62560db26af56313598 MD5 | raw file
  1. package scratch
  2. {
  3. import flash.display.Loader;
  4. import flash.display.LoaderInfo;
  5. import flash.display.Sprite;
  6. import flash.events.Event;
  7. import flash.events.IOErrorEvent;
  8. import flash.events.MouseEvent;
  9. import flash.net.URLRequest;
  10. public class TestBitmapSizes extends Sprite
  11. {
  12. private var path:String;
  13. private var files:Array;
  14. public function TestBitmapSizes()
  15. {
  16. super();
  17. path = "img_size_test/";
  18. files = [
  19. "2880x2880.jpg",
  20. "6000x6000.jpg",
  21. "8192x2048.jpg",
  22. "8191x2048.jpg",
  23. "4095x4095.jpg",
  24. "4096x4096.jpg",
  25. "4096x4097.jpg",
  26. ];
  27. loadNextImage();
  28. }
  29. private function loadNextImage():void
  30. {
  31. var loader:Loader;
  32. var file:String = files.shift();
  33. if (file)
  34. {
  35. loader = new Loader();
  36. listen(loader.contentLoaderInfo);
  37. loader.load(new URLRequest(path + file));
  38. trace('---');
  39. trace('Loading ' + path + file);
  40. }
  41. else
  42. {
  43. trace('===');
  44. trace('End of images');
  45. }
  46. }
  47. private function listen(cli:LoaderInfo):void
  48. {
  49. cli.addEventListener(Event.COMPLETE, onImageLoad);
  50. cli.addEventListener(IOErrorEvent.IO_ERROR, onImageError);
  51. }
  52. private function unlisten(cli:LoaderInfo):void
  53. {
  54. cli.addEventListener(Event.COMPLETE, onImageLoad);
  55. cli.addEventListener(IOErrorEvent.IO_ERROR, onImageError);
  56. }
  57. private function onImageLoad(event:Event):void
  58. {
  59. var cli:LoaderInfo = LoaderInfo(event.target);
  60. var loader:Loader = cli.loader;
  61. unlisten(loader.contentLoaderInfo);
  62. loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, onImageLoad);
  63. addChild(loader);
  64. stage.addEventListener(MouseEvent.CLICK, onClick);
  65. trace('---');
  66. trace('cli.width: ' + (cli.width));
  67. trace('cli.height: ' + (cli.height));
  68. trace('area: ' + (cli.height * cli.width));
  69. trace('cli.bytesTotal: ' + (cli.bytesTotal));
  70. trace('cli.content: ' + (cli.content));
  71. trace('loader.width: ' + (loader.width));
  72. trace('loader.height: ' + (loader.height));
  73. }
  74. private function onImageError(event:IOErrorEvent):void
  75. {
  76. trace(event);
  77. stage.addEventListener(MouseEvent.CLICK, onClick);
  78. }
  79. private function onClick(event:MouseEvent):void
  80. {
  81. stage.removeEventListener(MouseEvent.CLICK, onClick);
  82. removeChild(getChildAt(0));
  83. loadNextImage();
  84. }
  85. }
  86. }