Monotouch: объединить 4 изображения в 1 (UIImage) - PullRequest
1 голос
/ 02 февраля 2011

У меня есть 4 UIImages (A, B, C, D), каждый одинаковый 500x500

Как я могу объединить их в сетку 1000x1000 следующим образом:

AB
CD

Так чтоУ меня есть один UIImage "E"

Ответы [ 3 ]

10 голосов
/ 02 февраля 2011

Вы должны создать новый контекст изображения с размером конечного изображения:

UIGraphics.BeginImageContext(new SizeF(1000, 1000));

Затем нарисуйте каждое изображение в соответствующем прямоугольнике:

image.Draw(new RectangleF(0,0,image.Size.Width,image.Size.Height));
//image2.Draw...

Затем вы получите изображение:

UIImage finalImage = UIGraphics.GetImageFromCurrentImageContext();

И, наконец, вы должны закончить контекст изображения:

UIGraphics.EndImageContext();
0 голосов
/ 05 апреля 2011

Помните, что вы не можете использовать UIGrahpics.BeginImageContext () в подпотоке, это должен быть основной поток.Если вы хотите сделать это в подпотоке, вы должны использовать CGBitmapContext (), с которым немного сложнее иметь дело.

0 голосов
/ 02 февраля 2011
...