使用php创建图像

使用php创建图像,php,Php,我正在尝试使用.jpg图像和ffmpeg创建视频剪辑,我正在创建.jpg图像,如下所示: $str=$_REQUEST['data_array'];//gets the base64 encoded image data; $count =$_REQUEST['count'];//gets number of images i've to create; $edited_str=substr($str,23,strlen($str)-1);// $edited_str=ba

我正在尝试使用.jpg图像和ffmpeg创建视频剪辑,我正在创建.jpg图像,如下所示:

  $str=$_REQUEST['data_array'];//gets the base64 encoded image data;  
  $count =$_REQUEST['count'];//gets number of images i've to create;
  $edited_str=substr($str,23,strlen($str)-1);// 
  $edited_str=base64_decode($edited_str);  
  $f=fopen("Images/temp".$count.".jpg","w");//am creating temp.jpg file
  fwrite($f,$edited_str);//placing my decoded data into file
  fclose($f); 
我在上面创建的图像与正常的.jpg图像不同吗

这一行:

$edited_str=substr($str,23,strlen($str)-1);
让它与众不同。如果这是文件的完整base64标记,则会将其切碎并损坏。也许你在前面加了些东西

如果您只是从前面添加的内容中删除内容,那么它应该与使用base64编码的原始文件相同

如果您想通过这种方式从另一个页面获取信息,我建议使用$\u POST而不是$\u REQUEST,原因有很多

编辑:我不会说php中的视频操作是不可能的。我认为甚至有一个工具箱。。。这里有一个:

其中指出:

它可以执行视频格式转换,将视频帧提取到单独的图像文件中,并从一组单独的视频图像中组合视频流

还没有测试过,但计划有一天尝试一下

EDIT2:在php站点上,有一些问题您可以尝试,但是为了提供更多帮助,需要提供更多信息。直接检查文件以确保正确发送和解密该文件

我还没有测试过这些

对于大型文件的使用,有一条建议:

$decodedstring=base64_decode(chunk_split($encodedstring));
另一个问题是,如果使用javascript canvas.toDataURL,则需要将空格转换回加号:

$encodedData = str_replace(' ','+',$encodedData);
$decocedData = base64_decode($encodedData);

你的意思是,你正在将多个JPG文件缝合在一起,并希望它们能产生动画效果?我怀疑那会起作用。你能用ImageMagick吗?@Pekka-你怀疑吗?不会的-@奇怪的是,这是我唯一的怀疑,而不是一个明确的表达,你疯了吗不要使用$_请求…我正在使用ffmpeg和php创建一个视频,现在的问题是如果我使用.jpg图像,而这些图像不是从这个脚本创建的,那么我就能够包装视频,但是如果我使用上述php代码中的图像,那么它就不工作了;base64,'使用上面的行对其进行解码,否则它不会创建图像。我的问题是,上面php代码中的图像与普通图像不同吗?当数据编码/解码base64时,应该是相同的,我从来没有遇到过问题,包括jpeg。问题可能是别的。另外,正如NB所说,要么是我在用英语,要么是我在用英语。am可能会让人困惑。