2010-11-11 27 views
15

Uczę się o WPF, WPF korzysta z pikseli niezależnych od urządzenia. Ale nie mogę tego naprawdę zrozumieć. Dlaczego jest to przewaga nad pikselem zależnym od urządzenia, jeśli większość innych aplikacji jest zależna od urządzenia i aplikacja WPF nie jest ustawiona?Niezależny od urządzenia piksel

Odpowiedz

8

Zaletą pikseli niezależnych od urządzenia jest to, że podczas określania interfejsu użytkownika można określić rozmiar składników interfejsu użytkownika na urządzeniu użytkownika, niezależnie od rozdzielczości ekranu użytkownika. Niestety, nie jest to tak proste, ponieważ wymaga od użytkownika, aby różne ustawienia były ustawione poprawnie, i może zostać przesłonięte przez użytkownika, który chce zmienić rozdzielczość swojego urządzenia (np. Niedowidzący użytkownik, który chce uruchamiane w niskiej rozdzielczości, aby tekst był łatwiejszy do odczytania).

Poza drugim linku pisał, można również sprawdzić ten jeden: http://www.wpflearningexperience.com/?p=41

pamiętać, że można włączyć przyciąganie kontrolę urządzeń pikseli z SnapsToDevicePixels ustawiona na wartość true, aby uniknąć rozmazania, które występuje, gdy linia pozioma/pionowa jest narysowana na granicy między dwoma pikselami urządzenia.

0

Chodzi o UI i skalowanie czcionki w zależności od ustawienia DPI systemu:

nie wszystkie aplikacje są DPI świadomy: niektóre pikseli używanie sprzętu jako podstawowy jednostki miary; zmiana DPI systemu nie ma wpływu na te aplikacje . W wielu innych aplikacjach używa się jednostek obsługujących DPI do opisywania rozmiarów czcionek , ale należy używać pikseli do opisywania wszystkiego, co jest . Uczynienie DPI zbyt małym lub zbyt dużym może spowodować problemy z układem dla tych aplikacji, , ponieważ tekst aplikacji skaluje z ustawieniem DPI systemu, ale interfejs użytkownika aplikacji nie. Ten problem z numerem został wyeliminowany dla aplikacji opracowanych przy użyciu WPF.

WPF obsługuje automatyczne skalowanie przez przy użyciu niezależnego piksela urządzenia jako jego podstawowej jednostki miary, zamiast pikseli sprzętowych; grafika i skalowanie tekstu poprawnie bez żadnych dodatkowych prac z dewelopera aplikacji z aplikacji .

Jest to wzięte z linku pod warunkiem, że Kishore. (http://msdn.microsoft.com/en-us/library/ms748373.aspx)

6

Przed zrozumieniem urządzenia niezależnego od urządzenia, należy zrozumieć, czym jest DPI. DPI to punkty na cal, co oznacza, że ​​pewna liczba (zwykle 96) pikseli w calach. Ale ważne jest, aby zrozumieć, że w środowisku Win32 ten cal nie jest ustalony jako fizyczny cal. Gdy liczba kropek wzrasta/maleje, zmieniając rozdzielczość, liczba/kropka w calach będzie większa/mniejsza, w wyniku czego wielkość "cala" wzrośnie lub zmaleje. Jednak w przypadku WPF rozmiar w calach jest tak dobry, jak w przypadku cala fizycznego, ponieważ za każdym razem, gdy zmienia się DPI, system dostosowuje się automatycznie.

Powiązane problemy