2010-04-26 11 views

Odpowiedz

11

This jest najprostszym Link znalazłem na ten temat.

+0

Przejście do zaakceptowanej odpowiedzi, ponieważ ten link zapewnia lepsze informacje na temat funkcji rozciągania i obramowania. – Roddy

7

Wystarczy przyjrzeć się 9 patch obrazu w podglądzie obrazu. Jest to po prostu 1-pikowa ramka z czarnymi pikselami otaczającymi rozciągliwe obszary i przezroczyste oznaczające statyczne części.

Jeśli przybliżyć do tego zdjęcia widać czarne obramowanie zaznaczenie obszaru rozciągliwej:

example http://web6.twitpic.com/img/91916457-a53b6866db73378bda07c039151c69aa.4bd6119a-full.png

+0

Miałem nadzieję na udokumentowaną specyfikację, ale myślę, że to wystarczy! – Roddy

+0

Nie sądzę, że potrzebna jest jakakolwiek dokumentacja, ponieważ jest to zwykły png z 1-pikselową krawędzią. – stealthcopter

+0

Nie jestem całkowicie pewien, w jaki sposób interpretowana jest granica 1-pikselową, szczególnie w przypadku nieciągłych wyborów pikseli i różnicy między marginesami górnym i dolnym. – Roddy

6

Zdecydowanie sugeruję, aby nie wdrażać systemu 9patch na innych platformach z kilku powodów.

I zostały z wykorzystaniem narzędzi dla programistów Androida na rok i dokonały szerokie wykorzystanie plików 9patch.

To koszmar. PNG nie jest formatem danych, jest to format obrazu. Mieszanie dwóch w pliku .9.png wymaga kłopotów.

9patch pliki są biedny pomysł, ponieważ łączą one formatów obrazu i danych w jednym pliku, który nie jest ani w pełni opanowania przez projektanta ani deweloper.

Dziewięć plików patch: będziesz żałować swoje zaangażowanie w pewnym momencie podczas konserwacji, wsparcia i aktualizacji fazie.

Być może, jeśli w przyszłości obsługa plików 9-pakowych zostanie dodana do wielu narzędzi wysokiej jakości (na przykład PS CS4 nie rozumie plików 9-pakowych jako określonego formatu, ani nie przestrzega zasad obowiązujących dziewięciu formatów poprawek .)

istniejące narzędzia do dziewięciu plików łat są okropne - w zasadzie bezużyteczny w opinii większości projektantów, którzy ja wynajętych.

+0

+1 za zdecydowanie podtrzymany widok - zgodzę się, że narzędzia nie są świetne. Jednakże, biorąc pod uwagę, że potrzebuję 9-plasterkowej funkcjonalności "rozszerzalnych" obrazów, jaką mam alternatywę? Ponowne odkrywanie koła może być jeszcze głupsze. – Roddy

+1

Myślę, że koncepcja 9-plasterków jest przykładem naprawdę świetnego pomysłu zrealizowanego w najgorszy możliwy sposób. Innym podejściem byłoby posiadanie pliku PNG (standard branżowy) i formatu XML zawierającego 4 wymiary. Rozciągnij X, Rozciągnij Y, Pad X i Pad Y. Następnie użyj niestandardowego analizatora składni (XML zamiast PNG), a następnie manipuluj PNG, aby go rozciągnąć. W ten sposób Twój PNG może być ponownie używany do innych rzeczy (i działa w Photoshopie), a twój rynek layoutu jest w formacie XML, gdzie programiści mogą z łatwością go używać. –

+2

Całkowicie nie zgadzam się z Cory tutaj. Użyłem 9-plasterkowych plików PNG w Photoshopie od 10 miesięcy i działają one jak czar. w rzeczywistości mój interfejs użytkownika wygląda ostro dzięki tej technice, jest świetny! –

1

Nowoczesne przeglądarki obsługują CSS 9-Path tła w oparciu o: http://www.css3.info/preview/border-image/

+0

ładny link, tekst wprowadzający motywuje 9 parametrów; więc łatka 9 jest wyraźną definicją 9 obszarów zainteresowania umieszczeniem mapy bitowej we współrzędnych płótna? – Vass

0

Zajęło mi trochę czasu, aby zrozumieć, że rozszerzenie pliku 9 Plaster należy xxxx.9 i nie xxx.9.png

+0

w takim przypadku po prostu ignoruje 9 danych poprawki w ogóle – MrJre

1

Znalazłem ten link, aby był bardzo przydatny: link to blog post. Używa niektórych przykładów dla różnych granic zdefiniowanych podczas tworzenia łatki 9. Pokazuje, w jaki sposób dodatkowe informacje są używane do skalowania wymiarów zdjęć (x, y).

Jest nawet ładny komentarz przez Richard L. na końcu, który mówi, w jaki sposób można dodać regiony mają być chronione od skalowania obrazu za tym przerwy w granicach; na przykład. nie skalowanie sekcji na obrazie.