cari
Rumahphp教程php手册php读取flash文件高宽帧数背景颜色的方法

php读取flash文件高宽帧数背景颜色的方法

   本文实例讲述了php读取flash文件高宽帧数背景颜色的方法。分享给大家供大家参考。

  具体实现方法如下:

  代码如下:

  /*

  示例:

  $file = '/data/ad_files/5/5.swf';

  $flash = new flash();

  $flash = $flash->getswfinfo($file);

  echo "

  文件的宽高是:".$flash["width"].":".$info["height"];

  echo "

  文件版本是".$flash["version"];

  echo "

  文件帧数量是".$flash["framecount"];

  echo "

  文件帧速率是".$flash["framerate"];

  echo "

  文件背景颜色是".$flash["bgcolor"];

  */

  class flash

  {

  //是否返回背景色

  public $need_back_color = false ;

  //是否返回版本

  public $need_version = false ;

  //是否返回帧速率

  public $need_framerate = false ;

  //是否返回帧数量

  public $need_framecount = false ;

  public function __construct()

  {

  }

  public function getswfinfo( $filename )

  {

  if ( file_exists($filename) ) {

  //echo "文件的修改时间:".date("m d y h:i:s.", filemtime($filename))."

  ";

  } else {

  //echo "目标文件不存在!";

  return array( "error" => $filename ) ;

  }

  //打开文件

  $rs = fopen($filename,"r");

  //读取文件的数据

  $str = fread( $rs , filesize( $filename ) ) ;

  ///

  if($str[0] == "f")

  {

  //echo "

  文件已是解压缩的文件:";

  } else {

  $first = substr($str,0,8);

  $last = substr($str,8);

  //

  $last = gzuncompress($last);

  //

  $str = $first . $last ;

  $str[0] = "f";

  //echo "

  解压缩后的文件信息:";

  }

  $info = $this->getinfo( $str );

  fclose ( $rs ) ;

  return $info;

  }

  private function mydecbin($str,$index)

  {

  $fbin = decbin(ord($str[$index]));

  while(strlen($fbin)

  return $fbin;

  }

  private function colorhex($data)

  {

  $tmp = dechex($data);

  if ( strlen($tmp)

  $tmp='0' . $tmp ;

  }

  return $tmp;

  }

  private function getinfo( $str )

  {

  //换算成二进制

  $fbin = $this->mydecbin( $str , 8 ) ;

  //计算rec的单位长度

  $slen = bindec( substr( $fbin , 0 , 5 ) );

  //计算rec所在的字节

  $recsize = $slen * 4 + 5 ;

  $recsize = ceil( $recsize / 8 ) ;

  //rec的二进制

  $recbin = $fbin ;

  for( $i = 9 ; $i

  {

  $recbin .= $this->mydecbin( $str ,$i );

  }

  //rec数据

  $rec = array();

  for( $i = 0 ; $i

  {

  $rec[] = bindec( substr( $recbin , 5 + $i * $slen , $slen ) ) / 20;

  }

  if ( $this->need_back_color ) {

  //背景颜色

  for( $i = $recsize + 12 ; $i

  {

  if ( ord( $str[$i] ) == 67 && ord( $str[$i+1] ) == 2 )

  {

  $bgcolor = $this->colorhex(ord($str[$i+2])).$this->colorhex(ord($str[$i+3])).$this->colorhex(ord($str[$i+4]));

  break;

  }

  }

  }

  if ( $this->need_version ) {

  //版本

  $version = ord( $str[3] );

  }

  if ( $this->need_framerate ) {

  //帧速率

  $framerate = ord( $str[$recsize + 8] ) / 256 + ord( $str[$recsize + 9] ) ;

  }

  if ( $this->need_framecount ) {

  //帧数量

  $framecount = ord( $str[$recsize + 11] ) * 256 + ord( $str[$recsize + 10] );

  }

  return array ( "bgcolor" => $bgcolor ,

  "version" => $version ,

  "framerate" => $framerate ,

  "framecount" => $framecount ,

  'width'=>$rec[1],

  'height'=>$rec[3]

  );

  }

  }

  ?>

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
4 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌

Alat panas

Versi Mac WebStorm

Versi Mac WebStorm

Alat pembangunan JavaScript yang berguna

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Dreamweaver Mac版

Dreamweaver Mac版

Alat pembangunan web visual

mPDF

mPDF

mPDF ialah perpustakaan PHP yang boleh menjana fail PDF daripada HTML yang dikodkan UTF-8. Pengarang asal, Ian Back, menulis mPDF untuk mengeluarkan fail PDF "dengan cepat" dari tapak webnya dan mengendalikan bahasa yang berbeza. Ia lebih perlahan dan menghasilkan fail yang lebih besar apabila menggunakan fon Unicode daripada skrip asal seperti HTML2FPDF, tetapi menyokong gaya CSS dsb. dan mempunyai banyak peningkatan. Menyokong hampir semua bahasa, termasuk RTL (Arab dan Ibrani) dan CJK (Cina, Jepun dan Korea). Menyokong elemen peringkat blok bersarang (seperti P, DIV),

Muat turun versi mac editor Atom

Muat turun versi mac editor Atom

Editor sumber terbuka yang paling popular