Ich bin auf der Suche nach einem existierenden Algorithmus zur Pfadkürzung (ähnlich dem, was das statische Win32-Steuerelement mit SS_PATHELLIPSIS
) für eine Reihe von Pfaden, die sich auf die einzelnen Elemente konzentrieren sollten.
Wenn meine Pfade zum Beispiel so aussehen:
Unit with X/Test 3V/
Unit with X/Test 4V/
Unit with X/Test 5V/
Unit without X/Test 3V/
Unit without X/Test 6V/
Unit without X/2nd Test 6V/
Wenn nicht genügend Platz für die Anzeige zur Verfügung steht, sollten sie in etwa so gekürzt werden:
...with X/...3V/
...with X/...4V/
...with X/...5V/
...without X/...3V/
...without X/...6V/
...without X/2nd ...6V/
(Unter der Annahme, dass eine Ellipse im Allgemeinen kürzer als drei Buchstaben ist).
Dies ist nur ein Beispiel für einen ziemlich einfachen Idealfall (z. B. würden sie jetzt alle unterschiedlich lang sein, und ich wüsste nicht, wie ich einen guten Vorschlag erstellen sollte, wenn ein Pfad "Thingie/Long Test/" zum Pool hinzugefügt wird).
Es gibt keine vorgegebene Struktur der Pfadelemente, sie werden vom Benutzer zugewiesen, aber oft haben die Elemente ähnliche Segmente. Es sollte für proportionale Schriftarten funktionieren, also sollte der Algorithmus eine Messfunktion nehmen (und sie nicht zu stark aufrufen) oder eine Vorschlagsliste erzeugen.
Datenmäßig würde ein typischer Anwendungsfall 2..4 Pfadsegmente und 20 Elemente pro Segment enthalten.
Ich bin auf der Suche nach früheren Versuchen in diese Richtung, und ob das mit einer vernünftigen Menge an Code oder Abhängigkeiten lösbar ist.
0 Stimmen
Eine intelligente und interessante Frage.