c# - 为什么 CameraCaptureUI 总是显示圆形裁剪?

标签 c# windows uwp camera

2018 年初,我使用 UWP 编写了一个应用程序,并使用 CameraCaptureUI 拍照。我将大多数选项保留为默认值,包括设置为 true 的 AllowCropping。

点击相机按钮后,用户界面提供了裁剪图片的选项。然后,可以将图片裁剪成矩形。然而,我前几天打开应用程序进行了一些修复,现在裁剪是一个圆圈。

这是我现在看到的:

a busy cat

我已经尝试使用 CroppedAspectRatio 属性使裁剪 UI 使用 4:3 矩形,但没有成功。

这是原始代码:

cameraDialog.PhotoSettings.Format = CameraCaptureUIPhotoFormat.Jpeg;
var file = await cameraDialog.CaptureFileAsync(CameraCaptureUIMode.Photo);

这是我试过但没有成功的:

cameraDialog.PhotoSettings.Format = CameraCaptureUIPhotoFormat.Jpeg;
cameraDialog.PhotoSettings.CroppedAspectRatio = new Size(4, 3);
var file = await cameraDialog.CaptureFileAsync(CameraCaptureUIMode.Photo);

CameraCaptureUI 没有很多选项。所以我不知道还能尝试什么。

最佳答案

Why CameraCaptureUI always shows a circle crop?

在上一个版本中,我们对裁剪 UI 进行了一些更新,我尝试使用圆形裁剪 UI 来裁剪图片,裁剪后的图像大小与之前的设置相同 CroppedAspectRatio = new Size(4, 3) .我与相关团队讨论并报告了此行为。目前我们已经解决了禁用 AllowCropping 属性(默认为 true)的问题。

CameraCaptureUI captureUI = new CameraCaptureUI();
captureUI.PhotoSettings.Format = CameraCaptureUIPhotoFormat.Jpeg;
captureUI.PhotoSettings.AllowCropping = false;           
StorageFile file = await captureUI.CaptureFileAsync(CameraCaptureUIMode.Photo);

您还可以使用 MediaCapture 类自定义相机,这是 code sample你可以引用

关于c# - 为什么 CameraCaptureUI 总是显示圆形裁剪?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57399236/

相关文章:

c# - 子文件夹中位图的 URI (c# wpf)

ruby - 为什么从 cmd 文件调用 gem.bat 在第一次调用后退出?

c# - 在 .NET 中获取默认的 Windows 系统颜色

windows - 站点到站点 VPN 与点到站点 VPN

c# - UWP AutoNext 函数

c# - 在 Entity Framework 中使用带参数的存储过程

c# - OData 客户端 $expand 不工作

c# - 异步写入套接字线程安全吗?

c# - 如何通过标记以编程方式设置 NavigationView.SelectedItem

c# - XAML 使图像和文本可滚动