Nel codice seguente, sto cercando di disegnare due linee: una con una larghezza subpixel (0,5) e l'altro con la larghezza 1px:Come disegnare una linea di subpixel
var img = new Bitmap(256, 256);
Graphics graphics = Graphics.FromImage(img);
graphics.SmoothingMode = SmoothingMode.AntiAlias;
// Draw a subpixel line (0.5 width)
graphics.DrawLine(new Pen(Color.Red, (float)0.5), 0, 100, 255, 110);
// Draw a single pixel line (1 width)
graphics.DrawLine(new Pen(Color.Red, (float)1), 0, 110, 255, 120);
img.Save(@"c:\temp\test.png", ImageFormat.Png);
graphics.Dispose();
img.Dispose();
Tuttavia, nel generato immagine, entrambe le linee appaiono la stessa larghezza:
c'è un modo per la linea superiore appaia sub-pixel (0.5px)?
Edit: Dopo alcune ricerche, AGG potrebbe essere la strada da percorrere, di cui v'è una c# port.
si prega di non inserire il prefisso vostri titoli con "C#" e così via. Ecco a cosa servono i tag. –
Supponiamo che il tuo obiettivo abbia senso. Estrapolare, come ti aspetti una linea con una larghezza della penna di 0,001 pixel da guardare? –
Se si ridimensiona un'immagine con una linea da 1 pixel utilizzando un'applicazione grafica, l'immagine risultante mostrerà una linea attenuata. –