Heyo, я возиться с преобразованием изображений в ASCII. Для этого я загружаю изображение, использую getPixel () для каждого пикселя, затем вставляю символ с этим цветом в richTextBox.
Bitmap bmBild = new Bitmap(openFileDialog1.FileName.ToString()); // valid image
int x = 0, y = 0;
for (int i = 0; i <= (bmBild.Width * bmBild.Height - bmBild.Height); i++)
{
// Ändra text här
richTextBox1.Text += "x";
richTextBox1.Select(i, 1);
if (bmBild.GetPixel(x, y).IsKnownColor)
{
richTextBox1.SelectionColor = bmBild.GetPixel(x, y);
}
else
{
richTextBox1.SelectionColor = Color.Red;
}
if (x >= (bmBild.Width -1))
{
x = 0;
y++;
richTextBox1.Text += "\n";
}
x++;
}
GetPixel возвращает правильный цвет, но текст в итоге становится черным. Если я изменю
это
richTextBox1.SelectionColor = bmBild.GetPixel(x, y);
к этому
richTextBox1.SelectionColor = Color.Red;
Работает нормально.
Почему я не получаю правильные цвета?
(я знаю, что новые строки не работают должным образом, но я подумал, что сначала доберусь до сути этой проблемы.)
Спасибо