Poszukuję algorytmu obcinania ścieżek (podobnie jak w przypadku statycznego sterowania Win32 z SS_PATHELLIPSIS
) dla zestawu ścieżek, które powinny skupiać się na różnych elementach.inteligentne obcinanie ścieżki/elipsa do wyświetlania
Na przykład, jeśli moje ścieżki są tak:
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/
Kiedy nie wystarczająco dużo miejsca wyświetlacz jest dostępne, powinny być obcięte do czegoś takiego:
...with X/...3V/
...with X/...4V/
...with X/...5V/
...without X/...3V/
...without X/...6V/
...without X/2nd ...6V/
(Przyjmując, że wielokropkiem zazwyczaj jest krótszy niż trzy litery).
To tylko przykład dość prostego, idealnego przypadku (np. Wszystkie będą teraz kończyły się w różnych długościach i nie będę wiedział, jak stworzyć dobrą sugestię, gdy ścieżka "Thingie/Long Test/"jest dodawany do puli).
Brak określonej struktury elementów ścieżki, są one przypisane przez użytkownika, ale często elementy będą miały podobne segmenty. Powinien działać dla czcionek proporcjonalnych, więc algorytm powinien przyjąć funkcję pomiaru (i nie wywoływać go zbyt mocno) lub wygenerować listę sugestii.
Dane - typowy przypadek użycia zawierałby 2,4 segmenty ścieżki i 20 elementów na segment.
Poszukuję wcześniejszych prób w tym kierunku, a jeśli to rozwiąże problem z rozsądną ilością kodu lub zależności.
Inteligentne i interesujące pytanie. –