嘿,我搞亂圖像轉換爲ASCII的。爲此,我加載圖像,在每個像素上使用getPixel(),然後將具有該顏色的字符插入到一個richTextBox中。C#問題與getPixel&設置RTF文本顏色相應
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;
它工作正常。
爲什麼我沒有得到正確的顏色?
(我知道這並不做新線正常,但我想我會得到這個問題的倒數第一。)
感謝