Я использую Винформс. В моей форме у меня есть картинка, куда я загружаю tiff-документы. Я использую приведенный ниже код, чтобы инвертировать цвета в документе вперед и назад при нажатии кнопки. Проблема с моим кодом в том, что он очень медленный. Как быстрее преобразовать цвета изображений?
Информация об изображении:
- Размер изображения: 8,5 х 11 дюймов
- Плотность пикселей: 300 x 300 пикселей/дюйм
Размеры в пикселях — 2550 x 3300 пикселей (обычно потому, что я открываю разные документы для просмотра)
private void button1_Click(object sender, EventArgs e) { Bitmap pic = new Bitmap(pictureBox1.Image); for (int y = 0; (y <= (pic.Height - 1)); y++) { for (int x = 0; (x <= (pic.Width - 1)); x++) { Color inv = pic.GetPixel(x, y); inv = Color.FromArgb(255, (255 - inv.R), (255 - inv.G), (255 - inv.B)); pic.SetPixel(x, y, inv); } } pictureBox1.Image = pic; }