<?php require_once 'IO/SWF/JPEG.php'; $options = getopt("f:a:"); if (isset($options['f']) === false || is_readable($options['f']) === false) { echo "Usage: php bitmapalpha2png.php -f <jpeg_file> -a <alpha_file>\n"; echo "ex) php bitmapalpha2png.php -f test.jpg -a test.alpha > test.png\n"; exit(1); } $jpegfile = $options["f"]; $alphafile = $options["a"]; $jpegdata = file_get_contents($jpegfile); $alphadata = file_get_contents($alphafile); $pngdata = IO_SWF_JPEG::bitmapAlpha2PNG($jpegdata, $alphadata); echo $pngdata;
// DefineBits case 21: // DefineBitsJPEG2 // DefineBitsJPEG2 case 35: // DefineBitsJEPG3 $tag->parseTagContent(); $cid = $tag->tag->_CharacterID; $data = $tag->getJpegData($jpegTables); $ext = "jpg"; if ($code >= 35) { // DefineBitsJPEG3 $zlibalpha = $tag->tag->_ZlibBitmapAlphaData; $data2 = gzuncompress($zlibalpha); $ext2 = "alpha"; $data3 = IO_SWF_JPEG::bitmapAlpha2PNG($data, $data2); $ext3 = "png"; } break; case 20: // DefineLossless // DefineLossless case 36: // DefineLossless2 $tag->parseTagContent(); $cid = $tag->tag->_CharacterID; $data = $tag->getPNGData(); $ext = "png"; break; case 14: // DefineSound