Example #1
0
 public function build()
 {
     $jpegdata = file_get_contents($this->image_file);
     $swf_jpeg = new IO_SWF_JPEG();
     $swf_jpeg->input($jpegdata);
     $jpeg_table = $swf_jpeg->getEncodingTables();
     $jpeg_image = $swf_jpeg->getImageData();
     // アルファには対応しません
     $this->code = 21;
     $this->content = $jpeg_table . $jpeg_image;
 }
Example #2
0
<?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;
Example #3
0
File: Tag.php Project: yoya/IO_SWF
 function getJpegData($jpegTables)
 {
     $tag_code = $this->code;
     if ($tag_code != 6 && $tag_code != 21 && $tag_code != 35) {
         // DefineBitsJPEG3
         return false;
     }
     if (!$this->parseTagContent()) {
         return false;
     }
     $jpegData = $this->tag->_JPEGData;
     if ($tag_code == 6 && $jpegTables !== false) {
         // DefineBits
         $jpegData .= $jpegTables;
     }
     $jpeg = new IO_SWF_JPEG();
     $jpeg->input($jpegData);
     $ret = $jpeg->getStdJpegData();
     return $ret;
 }
Example #4
0
<?php

require_once 'IO/SWF/JPEG.php';
function usage()
{
    echo "Usage: php jpeg_dump.php <dump|jpegtables|imagedata>" . PHP_EOL;
}
if ($argc != 3) {
    usage();
    exit(1);
}
$jpegdata = file_get_contents($argv[2]);
$jpeg = new IO_SWF_JPEG();
$jpeg->input($jpegdata);
switch ($argv[1]) {
    case 'dump':
        $jpeg->dumpChunk();
        break;
    case 'jpegtables':
        echo $jpeg->getEncodingTables();
        break;
    case 'imagedata':
        echo $jpeg->getImageData();
        break;
    default:
        usage();
        exit(1);
}
exit(0);
Example #5
0
 // 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