我目前正在开发一个API,它将视频作为参数,然后从中生成缩略图。当它后来出现缩略图缩略图以错误的方式旋转时,我知道这与方向有关,但我似乎无法找到0x0112(274)或0x5029(20521) PropertyIdList。我得到的唯一的是771,769,37510,20753,20753,20754。据我所知,这些都没有关注图像的方向。我用Nreco生成缩略图,如果它与它有任何连接。到目前为止,这是我的代码:
if(Array.IndexOf(image.Img.PropertyIdList,20521)>-1)
{
var orientation = (int)image.Img.GetPropertyItem(20521).Value[0];
switch(orientation)
{
case 1:
break;
case 2:
image.Img.RotateFlip(RotateFlipType.RotateNoneFlipX);
break;
case 3:
image.Img.RotateFlip(RotateFlipType.Rotate180FlipNone);
break;
case 4:
image.Img.RotateFlip(RotateFlipType.Rotate180FlipX);
break;
case 5:
image.Img.RotateFlip(RotateFlipType.Rotate90FlipX);
break;
case 6:
image.Img.RotateFlip(RotateFlipType.Rotate90FlipNone);
break;
case 7:
image.Img.RotateFlip(RotateFlipType.Rotate270FlipX);
break;
case 8:
image.Img.RotateFlip(RotateFlipType.Rotate270FlipNone);
break;
}
}
但它永远不会进入这段代码,因为它无法找到indexOf propertyIdList 20521。
任何帮助都会受到高度评价! 谢谢。
编辑:视频是用Iphone 6拍摄的