2009-06-01 16 views
0

Wie wird ein Schwarzweißbild ohne Glättungseffekt angepasst? Ich habe einen BarCode, der ein Bild ist, das zu groß ist. Ich muss die Größe des Bildes ändern, aber mit einem Vorbehalt. Das resultierende Bild muss die gleiche proportionale Größe haben und die schwarzen und weißen Balken können nicht zu schwarzen, grauen und weißen Balken werden (was meiner Meinung nach auf etwas Glättung zurückzuführen ist). Ein Beispiel dafür, wie man das in C# ??Größenänderung von Bildern in C# ohne Glättung

+0

Harpo und arul korrekt waren. Ich konnte Glättung loswerden, aber das behob das Problem nicht, da die Balkenbreiten nicht mehr proportional sind, also muss ich das auf andere Weise lösen. –

Antwort

3

@arul ist korrekt. Um genau zu sein,

graphics.SmoothingMode = SmoothingMode.None; 
graphics.DrawImage(barCodeImage, new Point(0, 0)); 

Vielleicht möchten Sie auch die InterpolationMode überprüfen, um zu sehen, ob dieser Wert geändert haben Sie führt näher an, was Sie wollen.

+0

Kombinieren Sie mit graphics.InterpolationMode = InterpolationMode.NearestNeighbor; – Patrick

2

Sie könnte so etwas wie wollen:

e.Graphics.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.NearestNeighbor; 
+0

Das endete damit, was ich brauchte. – test

+0

Ehrfürchtig. Dies ist die richtige Antwort. Ich habe nicht einmal darüber nachgedacht, NextNeighbour zu probieren. +1 * 10 – Patrick