我正在開發一個WinRT應用程序,它應該需要一些圖像處理。 我使用WriteableBitmapex
,我嘗試改變我的圖像中橢圓上特定像素的顏色。 但我的解決方案非常慢。大約幾分鐘後點擊圖像。 爲什麼這個解決方案如此之慢?另一種方法是什麼?如何在WinRT應用程序中進行快速圖像處理?
private void myimage_Tapped(object sender, TappedRoutedEventArgs e)
{
var xcor = e.GetPosition(sender as UIElement).X;
var ycor = e.GetPosition(sender as UIElement).Y;
Image ws = sender as Image;
int x = (int)(imag.PixelWidth * xcor/ws.ActualWidth);
int y = (int)(imag.PixelHeight * ycor/ws.ActualHeight);
var color = imag.GetPixel(x, y);
if (color.B != 0 && color.G != 0 && color.R != 0)
{
while (color.B != 0 && color.G != 0 && color.R != 0 && x < imag.PixelWidth)
{
x = x+1;
y = (int)(imag.PixelHeight * ycor/ws.ActualHeight);
while (color.B != 0 && color.G != 0 && color.R != 0 && y < imag.PixelHeight)
{
y = y + 1;
color = imag.GetPixel(x, y);
imag.SetPixel(x, y, Colors.Red);
}
}
}
}
什麼座標你XCOR存儲,YCOR? 那個橢圓是什麼? 當一個像素是黑色時,爲什麼你會停下腳步? – Piglet
@Piglet我需要改變橢圓的筆觸顏色爲黑色和xcor的顏色確保點擊橢圓 –