如何检测光学取向?

时间:2014-04-17 13:35:18

标签: c# visual-studio windows-phone cameracapturetask

在Windows Phone中如何确定cameracapturetask或Photochoosertask的方向?

   private void openCameraTask()
    {
        CameraCaptureTask cam = new CameraCaptureTask();
        cam.Completed += task_Completed;

        cam.Show();
    }

    void task_Completed(object sender, PhotoResult e)
    {
        if (e.TaskResult == TaskResult.OK)
        {

            imgFrame.Visibility = System.Windows.Visibility.Visible;
            System.Windows.Media.Imaging.BitmapImage bmp = new System.Windows.Media.Imaging.BitmapImage();


            bmp.SetSource(e.ChosenPhoto);
            imgProfilePic.ImageSource = bmp;
         }
     }

1 个答案:

答案 0 :(得分:1)

可能的方法是检查图像的高度和宽度(以像素为单位)。如果高度高于宽度,那么你可以说它是肖像或其他景观。 BitmapImage类没有立即告诉你的方法。

这样简单
if (bitmap.PixelHeight > bitmap.PixelWidth) {
     // portrait 
} else {
     // landscape 
}

两种尺寸都有可能相同。所以在这种情况下,没有真正的风景或肖像。