Предположим, вы хотите удалить второй объект по свойству поля.
С ES6 это так же просто.
myArray.splice(myArray.findIndex(item => item.field === "cStatus"), 1)
Вы не устанавливаете значения dpi. Они выполняются в DrawImage
, поэтому вам нужно установить их с помощью bitmap.SetResolution(dpix, dpiy)
. Когда они будут отличаться от изображений, результаты тоже будут. Вы можете получить «правильный» из объекта Graphics
g
или решить, что вы хотите.
Быстрое исправление:
for (int i = 0; i < images.Count; i++)
{
((Bitmap)images[i]).SetResolution(g.DpiX, g.DpiY);
g.DrawImage((Bitmap)images[i], new Point(10, (i + 1) * 10 + size));
Bitmap bmp = (Bitmap)images[i];
...
}
Обратите внимание, что только что созданное растровое изображение использует разрешение экрана на дюйм по умолчанию. Если вы хотите контролировать dpi, вам также нужно установить их для list
!
Также обратите внимание, что я не изменил ваш код; чтобы упростить последнюю строку, нужно действительно перейти к началу цикла, а затем использовать bmp
вместо элемента массива.
Point
Rectangle
и присваивая ему размеры окрашенного изображения. Он будет "изменять размер" изображение с заданным размером вместо применения dpi. – Nyerguds 1 March 2018 в 21:27