2017-02-17 3 views
0

Ich muss Auswahl in meinem GIMP-Skript verkleinern.Wie kann die Auswahl von zwei Seiten im GIMP-Skript verkleinert werden?

Mit dem Standardbefehl zum Verkleinern der Auswahl wird die gesamte Auswahl um den angegebenen Größenwert in Pixel verkleinert.

(gimp-selection-shrink inImage 2) 

Dies würde die Auswahl um 2 Pixel verkleinern.

Aber ich möchte nicht die gesamte Auswahl verkleinern. Ich möchte nur die Auswahl von der linken und rechten Seite entfernen und die vertikale Auswahl unverändert beibehalten.

Dazu müssen die entferntesten Pixel auf jeder Seite (links und rechts) von der Auswahlmaske entfernt werden.

Wie kann ich das tun?


Script gewünschten Effekt für Wert „3px“:

https://media.giphy.com/media/l3q2v50vsk8Ze8Ldu/source.gif

Wie Sie sehen können, ist es ganz rechteckig auf der linken und rechten Seite und es ist für den Benutzer erforderlich, um eine Auswahl wie diese zu machen.

Also ich denke, ein guter Ansatz wäre, links und rechts posX der Auswahlmaske und schneiden Sie das Rect mit der Höhe der Schicht und Breite der Pixel, die wir auf jeder Seite der Auswahlmaske abgeschnitten werden soll.

Ich möchte Script-Fu anstelle von Python-Fu verwenden, weil ich keine zusätzlichen Anforderungen für die Benutzer haben möchte.

+0

Wie gehen Sie mit den "Ecken" um? Und können Sie ein Beispielbild zeigen? – xenoid

+0

Ich habe Beispiel gif hinzugefügt;) Ich hoffe, es ist jetzt klarer. – JasonSpine

Antwort

1
  • Ihre Auswahl speichern
  • Holen Sie sich das Begrenzungsrahmen (gimp-selection-bounds)
  • , dass das Feld verkleinern (+ 2px zu Xmin, -4px Breite)
  • Erstellen Sie ein Rechteck Auswahl aus diesen neuen Werten
  • Mit der gespeicherten Auswahl überschneiden
Verwandte Themen