我使用的是xamarin iOS。
我想拍一张照片,然后让用户可以将图像裁剪成他想要的任何尺寸,例如在android中:
或像其他问题一样在galery:
iOS - how to implement crop image like default photo album?
我认为这个问题的答案非常好,但我喜欢的所有控件都在Objective-C中,而且我不知道如何将它转换为c#for xamarin ...
是否存在一些控制(或iOS内置选项)以使作物可调整大小?
答案 0 :(得分:1)
如果您已找到Obj-C源来完成您想要的任务,您可以尝试将Obj-C代码移植到C#。一旦你开始,它通常不那么难。我使用iOS自定义警报控件做了一次:https://github.com/jsauve/SIAlertView.Xamarin。您可以比较这些项目的来源,以获得有关您如何开始移植的一些想法。或者,或者您可以使用Objective Sharpie来帮助您为Obj-C库创建C#绑定。祝你好运!
答案 1 :(得分:0)
float imageWidth = bitmap.Width;
float imageHeight = bitmap.Height;
float width = yourscreenWidth;
float heigth = yourscreenHeight ;
var W= width / heigth / (imageWidth / imageHeight);
var W2 = rect.Width() / widt * W;
var H = rect.Height() / heigth;
var cropImageWidth = imageWidth * W2 ;
var cropImageHeight = imageHeight * H ;
var cropImageX = (imageWidth - cropImageWidth) / 2;
var cropImageY = (imageHeight - cropImageHeight) / 2;
Bitmap imageCropped = Bitmap.CreateBitmap(bitmap, (int)cropImageX, (int)cropImageY,
(int)cropImageWidth, (int)cropImageHeight);