Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cordova 你的相机总是方形的吗?_Cordova_Ionic Framework_Cordova Plugins - Fatal编程技术网

Cordova 你的相机总是方形的吗?

Cordova 你的相机总是方形的吗?,cordova,ionic-framework,cordova-plugins,Cordova,Ionic Framework,Cordova Plugins,我需要做什么改变才能使CordovaCamera不再拍摄方形照片 现在,当我调用此代码时: var options = { quality: 100, destinationType: Camera.DestinationType.DATA_URL, sourceType: Camera.PictureSourceType.CAMERA, allowEdit: true, encodingTyp

我需要做什么改变才能使CordovaCamera不再拍摄方形照片

现在,当我调用此代码时:

 var options = {
          quality: 100,
          destinationType: Camera.DestinationType.DATA_URL,
          sourceType: Camera.PictureSourceType.CAMERA,
          allowEdit: true,
          encodingType: Camera.EncodingType.JPEG,
          // targetWidth: 1600,
          // targetHeight: 1280,
          popoverOptions: CameraPopoverOptions,
          saveToPhotoAlbum: false,
          correctOrientation:true
        };

          $cordovaCamera.getPicture(options).then(function (imageData) {
              $scope.imgURI = "data:image/jpeg;base64," + imageData;
它打开相机,你拍照,然后你会看到一个屏幕,在那里你可以看到一个正方形。当你说“使用照片”时,它会保存广场内的图片部分

编辑: 经过更多的研究,我可以看到这实际上仍然要求你裁剪图像。在我的应用程序中,我一直希望将图像平方,所以这对我来说还不是一个问题

也许你可以看看爱奥尼亚论坛上的这篇文章,它似乎对如何解决这个问题提出了一些建议


原件: 您已注释掉targetWidth和targetSight变量。如果取消注释这些行,然后将每一行设置为以像素为单位的高度和宽度

例如,下面的代码将尝试获取1080p图像的目标宽度(1920px x 1080px)


如果使用
allowEdit:true,
,则拍照后会进入裁剪屏幕,裁剪屏幕总是裁剪出一个正方形


如果您不想要正方形,请使用
allowEdit:false,
,然后使用原始大小的原始图像。

您必须在位于此处的.java文件中更改以下代码

platforms\android\src\org\apache\cordova\camera\CameraLauncher.java第436行之后

  cropIntent.putExtra("crop", "true");
  cropIntent.putExtra("aspectX", 1);
  cropIntent.putExtra("aspectY", 1);
  cropIntent.putExtra("outputX", 700);
  cropIntent.putExtra("outputY", 700);
  cropIntent.putExtra("return-data", true);

正在尝试,但裁剪矩形可以自由执行任何操作。方正rectangle@PareshGamiiOS还是安卓?iOS过去是矩形的,Android是正方形的,但在Android上,它启动了一个安装裁剪/照片编辑应用程序的意图,因此其中一些应用程序可能允许正方形、圆形、矩形或自由形式,我认为推荐使用google Photoshoes是的google plus crop正在使用square。谢谢你
  cropIntent.putExtra("crop", "true");
  cropIntent.putExtra("aspectX", 1);
  cropIntent.putExtra("aspectY", 1);
  cropIntent.putExtra("outputX", 700);
  cropIntent.putExtra("outputY", 700);
  cropIntent.putExtra("return-data", true);