Сортировать одномерный массив в наилучшем возможном двумерном размере?
Эй Codeproject,
У меня есть список изображений, которые я рендерингую, теперь длина массива может меняться время от времени, но для того, чтобы не только использовать новые растровые изображения(Width * Images.Длина, Высота) Я хотел бы отсортировать все эти изображения в наилучшем размере для прямоугольника.
У кого-нибудь есть идея, как это сделать?
В настоящее время мой код таков:
Bitmap CombinedImages = new Bitmap(MaxWidth * Images.Count, MaxHeight); for (int i = 0; i < Images.Count; i++) { g.DrawImage(Images[i], MaxWidth * i, 0, Images[i].Width, Images[i].Height); }
Я бы предпочел иметь две петли для петель, чтобы я мог поместить их все в квадрат, а не только в одну линию.
Что я уже пробовал:
Я пробовал использовать модульную функцию:
int bestColumn = Images.Count; while(Images.Count % 2 != 0) { bestColumn += 1; } int Columns = BestColumn / 2; int Rows = BestColumn / 2;
Я не знаю, что делать дальше.
Patrice T
Объясните подробно, что вы хотите сделать.
Я боюсь, что вы пытаетесь построить решение, которое является неправильным или, в лучшем случае, очень сложным для того, что действительно необходимо.
Philippe Mori
Очень трудно понять ваш вопрос...