Ich muss ein Close-Crop-Rechteck für eine Bitmap von einem bestimmten Hintergrundfarbschlüssel berechnen. Auf den folgenden Bildern können Sie sehen, was als Nahkultur gedacht ist. Auf der linken Seite befindet sich auf der rechten Seite Ausgang der Nähe Ernte der Quelle:Wie berechne ich das Nahfeld einer Bitmap?
Wie Sie sehen können, muss ich die oberste, ganz links, untersten und äußersten rechten Pixel finden die sich farblich vom Hintergrund unterscheiden, um das Close-Crop-Rechteck zu erstellen. Also, wie finde ich diese unterschiedlichen äußeren Pixel, um das Nahausschnittrechteck zu erhalten? Oder, mit anderen Worten, wie berechnet man das Close-Crop-Rechteck einer Bitmap?
ich versucht habe, eine Mischung aus Code von einigen Antworten David mir vor kurzem geholfen: http: // Stackoverflow. com/questions/10503428/resize-the-canvas-around-a-bitmap und http://stackoverflow.com/questions/10499069/moving-bitmap-pixels Ich dachte, ich könnte es verstehen, aber nicht wirklich. Ich sollte in der Lage sein, die ResizeBitmapCanvas-Prozedur anzupassen, um dies zu tun, aber ich konnte nicht, ich werde leicht verwirrt. –
@Blobby Eine Möglichkeit, dies zu tun ist, von jeder Seite der Bitmap aus zu beginnen und die Loop-Variable zu dekrementieren, bis Sie ein Pixel finden, das sich von der Hintergrundfarbe unterscheidet. Wiederholen Sie den Vorgang für jede Seite und voila, Sie haben ein Auto-Cropping-Werkzeug – ComputerSaysNo
@Dorin, du kannst es in einem 'ScanLine' Durchlauf tun, du musst dich nur an die Grenzen erinnern ;-) – TLama