В iPad, как создать вложение MIME из пользовательского чертежа / jpg, чтобы его можно было загрузить через веб-сервис SOAP - PullRequest
0 голосов
/ 18 мая 2011

Мне нужно загрузить подпись пользователя на ipad на сервер через веб-сервис SOAP. Подпись будет приложением MIME для веб-службы.

Нужна помощь, чтобы увидеть, как UIView или jpg на iOS можно преобразовать в MIME-формат двоичных данных, чтобы я мог разместить его как часть веб-службы. Кроме того, как NSURLConnection может обрабатывать вложение двоичных данных. Большое спасибо.

Ответы [ 2 ]

0 голосов
/ 21 октября 2012

Ознакомьтесь с примером кода GLPaint от Apple, который даст вам представление для рисования подписи. В моем тестировании это хорошо работает (хотя вы захотите изменить изображение текстуры кисти): http://developer.apple.com/library/ios/#samplecode/GLPaint/Introduction/Intro.html

Затем, как сказала Аноми, вы можете использовать CGBitmapContextGetData() для доступа к нарисованному изображению, а UIImage может преобразовать его в JPEG для вас.

Используйте NSURLRequest или стороннюю библиотеку SOAP для отправки JPEG на сервер.

0 голосов
/ 18 мая 2011

Если вам нужны данные в формате JPEG или PNG, вы можете использовать UIImageJPEGRepresentation или UIImagePNGRepresentation для преобразования UIImage в объект NSData. Если вам нужен другой формат, вы можете использовать CGImageDestination ; список принятых UTI можно получить из CGImageDestinationCopyTypeIdentifiers . Если вам просто нужны необработанные данные пикселей, нарисуйте изображение в CGBitmapImageContext, а затем считайте буфер, используя CGBitmapContextGetData ; Как получить данные пикселей из UIImage (Cocoa Touch) или CGImage (Core Graphics)? может помочь вам в этом.

Что касается NSURLConnection, то в любом случае сообщения создаются с использованием NSData. Вы должны правильно отформатировать структуру multipart / form-data или документ SOAP XML в NSData, но тогда NSURLConnection прекрасно с этим справится.

...