Jak ustawić systemowe skalowanie DPI w stylu XP w systemie Windows 8.1?

13

Używam mojego ThinkPada z ustawieniem DPI systemu na poziomie 140%. W Windows 7 i 8 zaznaczyłem pole wyboru „Użyj skalowania DPI stylu Windows XP” w oknie dialogowym Niestandardowe ustawienie DPI. Gdy to ustawienie jest wyłączone, aplikacje nieobsługujące DPI uzyskują wirtualizację DPI poprzez rozciąganie bitmapy, co powoduje powstanie dużego, ale niewyraźnego tekstu. Włączenie pola wyboru wyłącza to rozciąganie bitmapy, więc aplikacje nieświadome DPI otrzymują mniejszy tekst, ale bez rozmytego rozciągania. Uważam większość aplikacji będzie bardziej czytelny z mniejszym tekstu na owoce i warzywa, więc umożliwiają skalowanie Style XP (czyli wyłączenie DPI wirtualizacji).

Windows 8.1 RTM całkowicie usunął tę opcję. Po uaktualnieniu wszystkie moje aplikacje nieświadome DPI działają z brzydkim rozciąganiem map bitowych. Jestem w stanie to naprawić, wchodząc we Właściwości dla każdej aplikacji i ustawiając pole „Wyłącz skalowanie diplaya w ustawieniach wysokiej DPI” na karcie Zgodność, ale to jest trochę uciążliwe.

Czy jest jakiś sposób, aby przywrócić systemowe skalowanie DPI w stylu XP w Windows 8.1?

Michael Geary
źródło
Spróbuj ustawić UseDPIScalingna HKLM\SOFTWARE\Microsoft\Windows\DWM0. Nie mam pojęcia, czy ta praca będzie.
kinokijuf
Mogę teraz odtworzyć problem. DPI 120 zapewnia mi dobre skalowanie w stylu XP, DPI 144 jest niewyraźny, bez względu na ustawienie skalowania.
kinokijuf
Dalsze eksperymenty pokazują, że dostaję interfejs duplo tylko dla DPI do 120, a DPI 121 powoduje rozmyty bałagan. Powinieneś zgłosić błąd. Należy również wziąć pod uwagę, że ustawienia DPI inne niż 96 i 120 nigdy nie były obsługiwane przez MSFT…
kinokijuf 26.09.13

Odpowiedzi:

8

Krótka odpowiedź (AFAIK): Nie możesz już tego robić , ponieważ przerobili system DPI w wersji 8.1, aby lepiej dostosować się do nowszych wyświetlaczy HD i bardziej złożonych konfiguracji (być może kosztem uruchamiania starych programów, które nie obsługują DPI).

Sprawdź to z „Windows Extreme Blog” (blogs.microsoft.com, 15 lipca 2013 r.): Ulepszenia skalowania DPI systemu Windows 8.1

Nota wydawnicza:

W związku z niedawnym rozpowszechnianiem się tabletów, notebooków i wyświetlaczy o wysokiej rozdzielczości te problemy ze skalowaniem w wysokiej rozdzielczości i DPI stały się ważnym czynnikiem w Windows 8.1.

Ulepszenia skalowania DPI systemu Windows 8.1 dotyczą przede wszystkim:

  • Optymalizacja użyteczności i czytelności wyświetlaczy o wysokiej rozdzielczości
  • Zapewnienie jednolitego doświadczenia w systemach z wieloma wyświetlaczami
  • Umożliwianie programistom optymalizacji skalowania specyficznego dla aplikacji na podstawie DPI wyświetlacza
Ƭᴇcʜιᴇ007
źródło
1
Dzięki, miałem wrażenie, że tak będzie. To trochę dziwne: teoretycznie mógłbym przejść do właściwości każdej aplikacji, którą kiedykolwiek uruchomiłem, i wyłączyć skalowanie wyświetlania dla każdej z nich. Dlaczego więc nie zezwolić na globalne ustawienie, ponieważ jest to w zasadzie to samo? No cóż, myślę, że mam do wykonania kliknięcie pola wyboru otwarcia nieruchomości! :-)
Michael Geary
„... dlaczego nie pozwolić już na globalne ustawienie ...” Nie sugerowałem, że powinieneś mieć na to odpowiedź! Po prostu narzekałem na ten temat ...
Michael Geary,
Cieszę się, że nie spodziewałbyś się, że będę wiedział, dlaczego stwardnienie rozsiane robi cokolwiek . ;) Właśnie pomyślałem, że przedstawię niektóre z ich uzasadnień, dlaczego zniknęły i może nie być możliwe ich przywrócenie. To nie znaczy, że ktoś inny (ostatecznie) nie przyjdzie z rozwiązaniem, aby ustawić wszystkie te skrzynki jednocześnie - lub podobnie. Zdarza się. ;)
ᴇcʜιᴇ007
Jeśli zdający zdarzy się to przeczytać, pomocne byłoby podanie przyczyny odrzucenia. W tej chwili wydaje się to prawidłową odpowiedzią. Inna odpowiedź sugeruje włączenie opcji „jeden poziom skalowania dla wszystkich moich wyświetlaczy”, ale to nie działa dla mnie. Więc ktokolwiek zanegował tę odpowiedź, czy masz działające rozwiązanie?
Michael Geary
7

Krótko mówiąc, możesz to ustawić globalnie, wybierając „Pozwól mi wybrać jeden poziom skalowania dla wszystkich moich wyświetlaczy” i wylogowując się, a następnie z powrotem logując.

Oto jak się dowiedziałem: napotkałem ten sam problem.

Najpierw zacząłem naprawiać indywidualnie z ustawieniami zgodności, ale wkrótce staje się to problemem z powodu wielu różnych programów z tym problemem.

Czytając niektóre wskaźniki, dowiadujesz się, że ta opcja ma na celu umożliwienie dostosowania każdego programu do różnych wyświetlaczy pracujących równolegle, dzięki czemu można go odczytać w każdym z nich poprzez skalowanie go jako mapy bitowej, co czyni go większym, ale brzydkim (rozmytym) w wielu przypadkach - oczywiście, niektórzy mogą chcieć to na jednym ekranie, ale potem mogą użyć zoptymalizowanej wartości rozmiaru, która nadal będzie dobrze renderowana.

Teraz system Windows stosuje to do każdego monitora, w tym domyślnego, nawet jeśli jest to jedyny.

Pomyślałem, że być może, jeśli powiesz mu, aby po prostu używał tego samego skalowania na wszystkich ekranach, nie będzie już potrzebował narzutu procedury bitmapowej na wyświetlacz i całkowicie go wyłączy - lub przynajmniej dopasuje zoptymalizowane wartości, które zawsze były dostępne i dobry.

Funkcja skalowania po prostu dopasowałaby ręcznie wybrane wartości (Mniejsze - 100%, Średnie - 125%, Większe - 150%, zdefiniowane niestandardowo itp.) Bez metody wyświetlania na ekranie (bitmapy), która zawsze była ładnie renderowana.

Wydaje mi się, że odgadnąłem, ponieważ teraz wszystkie programy renderują się pięknie i jeszcze bardziej, czego się nie spodziewałem, ponieważ opcja rozmycia w rzeczywistości dawała również mniejszy tekst w moim przypadku (zmieniłem niektóre rozmiary tekstu, aby ułatwić korzystanie z ekranu dotykowego, może dlatego, że .)

Ponieważ to wszystko, czego potrzebowałem, pozostawiam to innym, aby dowiedzieć się i wyjaśnić dokładny mechanizm tego, jak to działało, aby ulepszyć moje zwykłe przypuszczenia.

bokusama
źródło
Hmm ... Właściwie miałem włączone ustawienie „Pozwól mi wybrać jeden poziom skalowania dla wszystkich moich wyświetlaczy” i to nie usuwa rozmytego skalowania w moim systemie. W jakim procencie masz ustawione skalowanie? Mój jest 140%. Zastanawiam się, jaka inna różnica między naszymi systemami może mieć na to wpływ?
Michael Geary
2
DOBRZE. Wygląda więc na to, że wartości domyślne rzeczywiście dają zoptymalizowane wyniki. Miałem 125% (średni) ze wszystkim dobrze i próbowałem 140%, a programy znów zaczęły źle wyglądać pomimo jednego skalowania dla wszystkich wyświetlaczy. Wygląda na to, że chodzi zarówno o to, by nie modyfikować go na żadnym ekranie, jak i ustawić na „dobrą” wartość. Wygląda na to, że
zmuszą