В настоящее время я работаю с Monotouch. У меня есть приложение, которое открывает камеру, а затем должно обработать изображение, которое в данный момент захвачено. Я использую код, очень похожий на https://github.com/reinforce-lab/com.ReinforceLab.MonoTouch.Controls/tree/master/VideoCaptureSample/
Разница в интересе между моим кодом и их кодом заключается в том, что в OverlayView.cs, который помещается поверх моего UIImagePickerController, у меня есть следующий код:
using (var screenImage = CGImage.ScreenImage.WithImageInRect(Frame))
{
_imageView = UIImage.FromImage(screenImage);
Bitmap srcbitmap = new System.Drawing.Bitmap(_imageView);
}
Однако запуск этого кода приведет к постоянному заполнению памяти до закрытия приложения. Кажется, что System.Drawing.Bitmap никогда не удаляется. Я использую ZXing.monotouch, поэтому мне нужно растровое изображение, чтобы я мог создать байты [] растрового изображения для передачи в RGBLuminanceSource.
Любые идеи о том, как я могу заставить это играть красиво?