Example #1
0
 public function getComment()
 {
     $pos = 0;
     $len = BinStringStatic::_strlen($this->dataSubBlocks);
     $comment = "";
     while ($pos < $len && ord($this->dataSubBlocks[$pos]) > 0) {
         $comment .= BinStringStatic::_substr($this->dataSubBlocks, $pos + 1, ord($this->dataSubBlocks[$pos]));
         $pos += 1 + ord($this->dataSubBlocks[$pos]);
     }
     return $comment;
 }
Example #2
0
 /**
  * @param $doc
  *
  * @return string
  */
 public static function removeComments($doc)
 {
     $doc = preg_replace('~--\\s+>~', '-->', $doc);
     $doc = preg_replace('~<\\s*!\\s*--~', '<!--', $doc);
     $cPos = BinStringStatic::_strpos($doc, "<!--");
     if ($cPos !== false) {
         $startCount = substr_count($doc, "<!--");
         $endCount = substr_count($doc, "-->");
         $lastCPos = -1;
         while ($cPos !== false && $lastCPos != $cPos) {
             $lastCPos = $cPos;
             $lastEPos = $cPos;
             $ePos = $cPos;
             do {
                 $ePos = BinStringStatic::_strpos($doc, "-->", $ePos + 1);
                 if ($ePos !== false) {
                     $lastEPos = $ePos;
                     $comment = BinStringStatic::_substr($doc, $cPos, $lastEPos + 3 - $cPos);
                     $startCount = substr_count($comment, "<!--");
                     $endCount = substr_count($comment, "-->");
                 } elseif ($lastEPos == $cPos) {
                     $lastEPos = BinStringStatic::_strlen($doc) - 3;
                 }
             } while ($startCount != $endCount && $ePos !== false);
             $doc = substr_replace($doc, "", $cPos, $lastEPos + 3 - $cPos);
             $cPos = BinStringStatic::_strpos($doc, "<!--");
         }
     }
     // print "<pre>\n" . htmlentities($doc) . "\n</pre>\n";
     return $doc;
 }
Example #3
0
 /**
  * @param LogicalScreenDescriptor $lsd
  */
 public static function dumpLogicalScreenDescriptor($lsd)
 {
     echo "lsdScreenWidth......................: " . $lsd->screenWidth . "\n";
     echo "lsdScreenHeight.....................: " . $lsd->screenHeight . "\n";
     echo "lsdPackedFields.....................: \n";
     echo "  - lsdGlobalColorTable.............: " . self::echoYN($lsd->colorTableFlag) . "\n";
     echo "  - lsdColorResolution..............: " . $lsd->colorResolution . "\n";
     echo "  - lsdSortFlag.....................: " . self::echoYN($lsd->sortFlag) . "\n";
     echo "  - lsdGlobalColorTableSize.........: " . $lsd->colorTableSize . "\n";
     echo "lsdBGColorIndex.....................: " . $lsd->bgColorIndex;
     echo " (0x";
     echo bin2hex(BinStringStatic::_substr($lsd->colorTable, $lsd->bgColorIndex * 3, 3));
     echo " (rrggbb))\n";
     echo "lsdPixelAspectRatio.................: " . $lsd->pixelAspectRatio . "\n";
     echo "\n";
     echo "Global Color Table..................: ";
     if ($lsd->colorTableFlag && $lsd->colorTableSize > 0) {
         echo "GCT present.\n";
         if ($lsd->colorTableSize < 16) {
             echo "Global Color Table content..........: ";
             echo bin2hex($lsd->colorTable) . "\n";
         }
     } else {
         echo "No GCT.\n";
     }
 }