2016-08-05 19 views
0

Gibt es eine Möglichkeit, Pixelfang in UWP aus Code dahinter zu implementieren?Snap to Pixel Integration Win2D

Ich weiß, dass XAML-Steuerelemente in UWP automatisch dies tun, aber ich verwende eine dritte Parteibibliothek, Win2D, um einige Linien zu zeichnen, und Pixelfang ist nicht Standard. Diese Linien mit dem Rest der Schnittstelle auszurichten ist ein Schmerz. Ich muss einige vertikale Ränder, die mit Win2D gezeichnet werden, mit den vertikalen Pixelleistenrändern einiger Zellen, die in einem horizontalen XAML-ListView gezeichnet werden, ausrichten. Was ich brauche, wäre eine Möglichkeit, die genauen X- und Y-Koordinaten des nächsten Pixels zu erhalten. Ich muss eine vertikale/horizontale Linie mit Win2D.DrawLine von A nach B zeichnen und ich muss an Pixeln einrasten, um das Antialiasing zu verhindern und mit einem XAML-Rand auszurichten.

Dies ist ein Bild des aktuellen Problems. Das untere Raw wird mit Win2d gezeichnet. Das obere Raw ist der Tabellenheader und wird mit XAML-Steuerelementen gezeichnet.

enter image description here

Ich brauche einen Weg, um die Linien mit Win2D gezogen Pixel zu schnappen wie XAML dies tut.

+0

Das Bild sieht nicht aus, wie die vertikale Linie wäre ein Bruchteil eines Pixels aus. Es sieht eher so aus, als wäre es ein ganzes Pixel entfernt. Obwohl die Bildqualität ziemlich schlecht ist (PNGs sind verlustfrei, aber deins sieht aus wie JPG-Artefakte; können Sie ein Bild bereitstellen, das keine verlustreichen Conversions aufweist?). – IInspectable

+0

@Inspectable, dies ist kein Bild, es ist ein Bereich gezeichnet, mit Win2D-Bibliothek. Ich fand die Lösung, wie von win2D-Mitarbeitern empfohlen: Ich habe die genauen X, Y-Koordinaten der Elemente, die ich ausrichten musste, und es funktionierte perfekt. –

+0

Es ist ein Screenshot (das ist immer noch ein Bild, oder?), Und es sieht verschwommen aus, was es nicht sollte, da es ein PNG ist. Ich nehme an, dass es auf dem Weg von einem verlustreichen Dateiformat konvertiert wurde. Ich habe nach einem Screenshot gefragt, der keine Kompressionsartefakte aufweist. – IInspectable

Antwort

0

Die Alternative zu Ihrer eigenen Antwort könnte sein, nur diese Zeilen mit XAML zu zeichnen.

Verwandte Themen