コード例 #1
0
ファイル: BUTTONRECORD.php プロジェクト: yoya/IO_SWF
 static function string($buttonrecord, $opts = array())
 {
     $text = '';
     $buttonHasBlendMode = $buttonrecord['ButtonHasBlandMode'];
     $buttonHasFilterList = $buttonrecord['ButtonHasFilterList'];
     $text .= "HasBlandMode:" . $buttonrecord['ButtonHasBlandMode'] . ' HasFilterList:' . $buttonrecord['ButtonHasFilterList'] . "\n\t\t";
     foreach (array('StateHitTest', 'StateDown', 'StateOver', 'StateUp') as $label) {
         $text .= $label . ':' . $buttonrecord['Button' . $label] . ' ';
     }
     $text .= "\n\t\t";
     $text .= "CharacterID:{$buttonrecord['CharacterID']} PlaceDepth:{$buttonrecord['PlaceDepth']}";
     $text .= "\n";
     $opts['indent']++;
     $text .= IO_SWF_Type_MATRIX::string($buttonrecord['PlaceMatrix'], $opts) . "\n";
     if ($opts['tagCode'] == 34) {
         // DefineButton2
         $text .= "\t\tColorTransform:" . IO_SWF_Type_CXFORMWITHALPHA::string($buttonrecord['ColorTransform']) . ' ';
     } else {
         $text .= 'ColorTransform:' . IO_SWF_Type_CXFORM::string($buttonrecord['ColorTransform']) . ' ';
     }
     if ($opts['tagCode'] == 34 && $opts['Version'] >= 8) {
         // DefineButton2 & SWF8 later
         if ($buttonHasFilterList == 1) {
             $text .= 'FilterList:' . IO_SWF_Type_FILTERLIST::string($buttonrecord['FilterList']) . "\n";
         }
         if ($buttonHasBlendMode == 1) {
             $text .= 'BlendMode:' . $buttonrecord['BlendMode'] . "\n";
         }
     }
     return $text;
 }
コード例 #2
0
ファイル: Place.php プロジェクト: yoya/IO_SWF
 function buildContent($tagCode, $opts = array())
 {
     $writer = new IO_Bit();
     switch ($tagCode) {
         case 4:
             // PlaceObject
             $this->_characterId = $writer->getUI16LE();
             $this->_depth = $writer->getUI16LE();
             $this->_matrix = IO_SWF_Type_MATRIX::parse($writer);
             if ($writer->hasNextData()) {
                 // optional
                 $this->_colorTransform = IO_SWF_Type_CXFORM::parse($writer);
             }
             break;
         case 26:
             // PlaceObject2
             //
             if (is_null($this->_characterId) === false) {
                 $this->_placeFlagHasCharacter = 1;
             } else {
                 $this->_placeFlagHasCharacter = 0;
             }
             if (is_null($this->_matrix) === false) {
                 $this->_placeFlagHasMatrix = 1;
             } else {
                 $this->_placeFlagHasMatrix = 0;
             }
             if (is_null($this->_colorTransform) === false) {
                 $this->_placeFlagHasColorTransform = 1;
             } else {
                 $this->_placeFlagHasColorTransform = 0;
             }
             if (is_null($this->_ratio) === false) {
                 $this->_placeFlagHasRatio = 1;
             } else {
                 $this->_placeFlagHasRatio = 0;
             }
             if (is_null($this->_name) === false) {
                 $this->_placeFlagHasName = 1;
             } else {
                 $this->_placeFlagHasName = 0;
             }
             if (is_null($this->_clipDepth) === false) {
                 $this->_placeFlagHasClipDepth = 1;
             } else {
                 $this->_placeFlagHasClipDepth = 0;
             }
             if (is_null($this->_clipActions) === false) {
                 $this->_placeFlagHasClipActions = 1;
             } else {
                 $this->_placeFlagHasClipActions = 0;
             }
             // placeFlag
             $writer->putUIBit($this->_placeFlagHasClipActions);
             $writer->putUIBit($this->_placeFlagHasClipDepth);
             $writer->putUIBit($this->_placeFlagHasName);
             $writer->putUIBit($this->_placeFlagHasRatio);
             $writer->putUIBit($this->_placeFlagHasColorTransform);
             $writer->putUIBit($this->_placeFlagHasMatrix);
             $writer->putUIBit($this->_placeFlagHasCharacter);
             $writer->putUIBit($this->_placeFlagMove);
             //
             $writer->putUI16LE($this->_depth);
             if ($this->_placeFlagHasCharacter) {
                 $writer->putUI16LE($this->_characterId);
             }
             if ($this->_placeFlagHasMatrix) {
                 IO_SWF_Type_MATRIX::build($writer, $this->_matrix);
             }
             if ($this->_placeFlagHasColorTransform) {
                 IO_SWF_Type_CXFORMWITHALPHA::build($writer, $this->_colorTransform);
             }
             if ($this->_placeFlagHasRatio) {
                 $writer->putUI16LE($this->_ratio);
             }
             if ($this->_placeFlagHasName) {
                 IO_SWF_Type_String::build($writer, $this->_name);
             }
             if ($this->_placeFlagHasClipDepth) {
                 $writer->putUI16LE($this->_clipDepth);
             }
             if ($this->_placeFlagHasClipActions) {
                 IO_SWF_Type_CLIPACTIONS::build($writer, $this->_clipActions, $opts);
             }
             break;
     }
     return $writer->output();
 }