Nowe posty

xx Dystrybucja pod HP Omen (6)
Wczoraj o 23:30:08
xx [Poradnik] Wyszukiwanie Sterowników (2)
Wczoraj o 21:08:23
lamp Problem z Linux Lite po instalacji (0)
Wczoraj o 19:50:30
xx Ile pingwinów? (1)
Wczoraj o 08:59:24
xx konfiguracja pale moon (0)
2024-03-24, 21:53:42
xx Plasma 6 w Neonie ssie trochę mniej ... (10)
2024-03-23, 02:38:11
xx problem z instalacja sterowników do karty sieciowej (3)
2024-03-18, 18:10:16
xx Plik abc.001 (1)
2024-03-17, 17:48:27
xx Zlecę dopracowanie programu w MatLab (0)
2024-03-13, 15:28:40
xx Linux Mint 21.3 XFCE brak dźwieku po paru minutach (karta muzyczna zintegrowana) (5)
2024-03-12, 23:07:01

Autor Wątek: Ekran o wysokim DPI  (Przeczytany 19682 razy)

wile

  • Gość
Ekran o wysokim DPI
« dnia: 2007-11-18, 22:23:28 »
Witam,

Linuxa jeszcze nie mam ale jestem gotowy wyprobowac ktoras dystrybucje, prawdopodobnie Ubuntu. Jednym z wazniejszych powodow ewentualnej przesiadki byloby to, ze Windows XP dosc marnie obsluguje ekrany o wysokim DPI, w moim przypadku wynosi on ok 146 przez co oczywiscie na wszystko trzeba patrzec przez lupe.
Pytanie - czy jest jakas dystrybucja lub srodowisko graficzne, ktore by poprawnie obslugiwalo taki ekran? Piszac poprawnie mam na mysli cos takiego: ustawiam 1280x800, wszystko jest zalozmy wlasciwych rozmiarow. Ustawiam 1920x1200 i wszystko jest dalej tych samych rozmiarow, czyli wszelkie bitmapy przeskalowane itd. Przy czym wszystko napawde musi oznaczac wszystko a nie ze kazda aplikacja bedzie sobie dzialac po swojemu.

Czy linux cos takiego potrafi?

Dzieki

  • Gość
Ekran o wysokim DPI
« Odpowiedź #1 dnia: 2007-11-19, 10:24:31 »
za dpi w linuksie odpowiada X-server, więc jeśli on dobrze wykryje dpi, to reszta programów powinna z tego korzystać. Należy także pamiętać, żeby nie ustawiać dpi na stałe w konfiguracji x-serwera (pozwolić mu wykryć dpi podczas startu - jeśli masz w miarę nowy monitor, to x-server wyciągnie z niego odpowiednie informacje), ani w konfiguracji menedżera wyświetlania. Ale jeśli chcesz zainstalować ubuntu, to z tego co wiem, nie ma w nim takich problemó (w domyślnej konfiguracji po instalacji pozwaja x-serverowi wykryć dpi monitora)

wile

  • Gość
Ekran o wysokim DPI
« Odpowiedź #2 dnia: 2007-11-19, 15:05:18 »
OK, zainstalowalem Ubuntu i zadnego DPI nie wykryl. Chodzi o matryce w laptopie. Sprobowalem zrobic tak jak pisza tu: http://xubuntulinux.blogspot.com/2006/07/ubuntu-set-correct-dpi-for-x-server.html ale poza wiekszymi fontami w niektorych miejscach wszystko jest takich rozmiarow jakich bylo...choc nie wykluczam ze cos zrobilem zle. Jakies pomysly?

chmooreck

  • Gość
Ekran o wysokim DPI
« Odpowiedź #3 dnia: 2007-11-19, 16:23:01 »
xft to jest tylko serwer czcionek...

bardziej cię powinien interesować wpis DisplaySize w xorg.conf
co mówi
$ xdpyinfo | grep resolution ?

Offline ultr

  • Users
  • Guru
  • *****
  • Wiadomości: 1177
    • Zobacz profil
Ekran o wysokim DPI
« Odpowiedź #4 dnia: 2007-11-19, 17:32:46 »
W pliku /etc/X11/xorg.conf w sekcji Device można dodać/zmienić opcję DPI:
Section "Device"
  ...
  Option   "DPI" "96 x 96"
EndSection

Nie jestem jednak pewien, co chcesz osiągnąć.
Większość rzeczy na ekranie jest wyświetlana właśnie po ilości punktów - a ich ilość na cal określasz przecież właśnie rozdzielczością:
DPI(x,y) = ( ResolutionX / ScreenWidth[inch], ResolutionY / ScreenHeight[inch] )
Samo DPI i powinno być wyznaczone właśnie z tego wzoru: na podstawie wielkości używanego wkranu i aktualnej rozdzielczości. To właśnie po to systemowi potrzebny jest model monitora - aby znać jego wymiary. DPI jest jedynie wskazówką dla systemu, na przykład odnośnie skalowania czcionek, a nie wyznacznikiem sposobu rysowania bitmap.

Skalowanie okien/interfejsu jest dostępne przy użyciu dodatku Composite albo jeżeli używasz serwera XGL lub X z AIGLX. No i oczywiście jakiegoś menadżera pozwalającego na to. Nie wiem czy istnieje odpowiednia skalująca wtyczka do Compiza/Beryla. Jeżeli nawet tak, to efekt może być słaby - pomyśl jak będzie wyglądać bitmapa przeskalowana powiedzmy razy 1,5. Najprościej: co 2 pixel zajmowałby dwa - i nawet choćbyś użył zaawansowanych funkcji skalowania, to nie uzyskasz tego samego efektu, co przy oryginalnym rozmiarze.

Dlatego uważam, że DPI trzeba ustawić na prawdziwą wartość dla twojego sprzętu/rozdzielczości. Potem ustawić czcionki na takie, które będą wygodne, a następnie wybrać inne rozmiary ikon dla danych elementów (te na toolbarach, itd. zmieniają się w każdej aplikacji) - czyli jeżeli 32x32 jest za małe, możesz spróbować 64x64. W KDE można to zrobić w Centrum Sterowania (kcontrol).

A jeśli chcesz mieć mniej punktów na cal a przez to większe elementy pulpitu - to, z definicji, powinieneś zmniejszyć rozdzielczość.


Pozdrawiam.

  • Gość
Ekran o wysokim DPI
« Odpowiedź #5 dnia: 2007-11-19, 22:04:56 »
Jeśli monitor jest w miarę nowy, to posiada w sobie informacje o różnych rzeczach (EDID chyba to się nazywa). Wtedy nie należy wpisywać DPI w xorg.conf ani w konfiguracji menedżera wyświetlania. Ja nie mam nigdzie wpisanego DPI i X-server podczas włączania się pyta monitor o DPI w danej rozdzielczości. Działa to bez żadnego problemu, a mam monitor o "nietypowym" DPI, bo 85x86 (albo na odwrót). Jedynie FireFox tuż po instalacji ma ustawione DPI na stałe i trzeba w konfiguracji zmienić, by czytał systemowe DPI.

wile

  • Gość
Ekran o wysokim DPI
« Odpowiedź #6 dnia: 2007-11-20, 00:07:37 »
Cytat: chmooreck
bardziej cię powinien interesować wpis DisplaySize w xorg.conf
co mówi
$ xdpyinfo | grep resolution ?
Teraz troche napsulem. Mowilo 146x145 czy jakos tak, potem w tym pliku xorg.conf dopisalem te linie o wymiarach ekranu dodatkowo w sekcji display, w miedzyczasie kilka programow sie zaktualizowalo i po restarcie tryb graficzny juz nie wstal. Pojawilo sie w koncu jakies okno z wyborem rozdzielczosci, czestotliwosci odswiezania itd, wybralem co trzeba, przetestowalem, bylo ok, po zatwierdzeniu znow sie wysypalo. Po nastepnym restarcie juz wszystko widze ale juz efektow pulpitu wlaczyc nie moge a wszystko sie odswieza bardzo dlugo. Teraz gdy wpisze te komende co podales to podaje 96x96 mimo ze te zmiany w pliku xorg.conf wprowadzilem jeszcze raz.

EDIT: W restricted drivers ponownie wlaczylem sterowniki ATI i juz efekty dzialaja OK.

wile

  • Gość
Ekran o wysokim DPI
« Odpowiedź #7 dnia: 2007-11-20, 00:22:13 »
Cytat: ultr
W pliku /etc/X11/xorg.conf w sekcji Device można dodać/zmienić opcję DPI:
Section "Device"
  ...
  Option   "DPI" "96 x 96"
EndSection
Dodalem, nie widze zadnych zmian.

Cytuj
Nie jestem jednak pewien, co chcesz osiągnąć.
Większość rzeczy na ekranie jest wyświetlana właśnie po ilości punktów - a ich ilość na cal określasz przecież właśnie rozdzielczością:
DPI(x,y) = ( ResolutionX / ScreenWidth[inch], ResolutionY / ScreenHeight[inch] )
Samo DPI i powinno być wyznaczone właśnie z tego wzoru: na podstawie wielkości używanego wkranu i aktualnej rozdzielczości. To właśnie po to systemowi potrzebny jest model monitora - aby znać jego wymiary. DPI jest jedynie wskazówką dla systemu, na przykład odnośnie skalowania czcionek, a nie wyznacznikiem sposobu rysowania bitmap.
Co chce osiagnac napisalem w pierwszym poscie, w skrocie to w wysokiej rozdzielczosci chce miec wszystko takich samych rozmiarow jak w niskiej. Czyli co w wektorach ma byc odpowiednio zrenderowane, co w bitmapach ma byc przeskalowane. Win XP po ustawieniu wyszego DPI wlasnie to robi, choc w bardzo ubogi sposob.

Cytuj
Skalowanie okien/interfejsu jest dostępne przy użyciu dodatku Composite albo jeżeli używasz serwera XGL lub X z AIGLX. No i oczywiście jakiegoś menadżera pozwalającego na to. Nie wiem czy istnieje odpowiednia skalująca wtyczka do Compiza/Beryla.
Wczoraj pierwszy raz zainstalowalem linuxa, tez wiec nie wiem ;)

Cytuj
Jeżeli nawet tak, to efekt może być słaby - pomyśl jak będzie wyglądać bitmapa przeskalowana powiedzmy razy 1,5. Najprościej: co 2 pixel zajmowałby dwa - i nawet choćbyś użył zaawansowanych funkcji skalowania, to nie uzyskasz tego samego efektu, co przy oryginalnym rozmiarze.
Dokladnie to chce osiagnac. Przy dobrych algorytmach chociazby bilinearnego filtrowania wyglada to zupelnie w porzadku. Wydaje sie to gorszej jakosci ale to tylko ze wzgledu na to ze sam wyswietlacz jest lepszy i bardziej widac niedoskonalosci. Cos jak drukowanie JPGa o wymiarach 100x100 pixeli w labie przy 300DPI tak, by obrazek mial takie same wymiary jak na monitorze. Tez jakosc wyda sie fatalna.

Cytuj
Dlatego uważam, że DPI trzeba ustawić na prawdziwą wartość dla twojego sprzętu/rozdzielczości.
Wlasnie to chce zrobic. Dla mojego ekranu wynosi ok 146, w systemie mam ustawione 96.

Cytuj
Potem ustawić czcionki na takie, które będą wygodne, a następnie wybrać inne rozmiary ikon dla danych elementów (te na toolbarach, itd. zmieniają się w każdej aplikacji) - czyli jeżeli 32x32 jest za małe, możesz spróbować 64x64. W KDE można to zrobić w Centrum Sterowania (kcontrol).
Fonty i ikony to juz przypuszczam prostsza sprawa, na razie chcialbym by wszystkie aplikacje mi sie przeskalowywaly. Choc na razie nie wiem do konca czy linux to potrafi.

Dzieki wszystkim za odpowiedzi.

chmooreck

  • Gość
Ekran o wysokim DPI
« Odpowiedź #8 dnia: 2007-11-20, 00:38:29 »
pochwal się może jaką masz tam kartę graficzną i jakie wpisy w xorg.conf (sekcje monitora, karty graficznej i serverlayout'a)

podejrzewam, że to automagiczne narzędzie (a właśnie, co to było za narzędzie ?) zmieniło ci sterownik na vesa - co nie jet najlepszym pomysłem ;-)

i jakie pakiety aktualizowałeś?

wile

  • Gość
Ekran o wysokim DPI
« Odpowiedź #9 dnia: 2007-11-20, 00:48:23 »
Jak juz pisalem w edicie poprzedniego posta udalo mi sie przywrocic uzywalnosc systemu wchodzac do restricted drivers i ponownie wlaczajac sterowniki ATI. Moja karta to Radeon Mobility X300 o ile dobrze pamietam.

Section "Monitor"
Identifier "Generic Monitor"
Vendorname "Generic LCD Display"
Modelname "LCD Panel 1920x1200"
Horizsync 31.5-74.5
Vertrefresh 56.0 - 65.0
  modeline  "800x600@56" 36.0 800 824 896 1024 600 601 603 625 +hsync +vsync
  modeline  "800x600@60" 40.0 800 840 968 1056 600 601 605 628 +hsync +vsync
  modeline  "1280x768@60" 80.14 1280 1344 1480 1680 768 769 772 795 -hsync +vsync
  modeline  "1280x720@60" 74.48 1280 1336 1472 1664 720 721 724 746 -hsync +vsync
  modeline  "1280x800@60" 83.46 1280 1344 1480 1680 800 801 804 828 -hsync +vsync
  modeline  "1440x900@60" 106.47 1440 1520 1672 1904 900 901 904 932 -hsync +vsync
  modeline  "1600x1024@60" 136.36 1600 1704 1872 2144 1024 1025 1028 1060 -hsync +vsync
  modeline  "1680x1050@60" 147.14 1680 1784 1968 2256 1050 1051 1054 1087 -hsync +vsync
  modeline  "1920x1200@60" 193.16 1920 2048 2256 2592 1200 1201 1204 1242 -hsync +vsync
Gamma 1.0
EndSection

Section "Screen"
Identifier "Default Screen"
Device "ATI Technologies Inc M22 [Mobility Radeon X300]"
Monitor "Generic Monitor"
Defaultdepth 24
SubSection "Display"
Depth 24
Virtual 1920 1200
Modes "1920x1200@60" "1680x1050@60" "1600x1024@60" "1440x900@60" "1280x800@60" "1280x720@60" "1280x768@60" "800x600@60" "800x600@56"
EndSubSection
EndSection

Section "ServerLayout"
Identifier "Default Layout"
  screen 0 "Default Screen" 0 0
Inputdevice "Generic Keyboard"
Inputdevice "Configured Mouse"

# Uncomment if you have a wacom tablet
# InputDevice     "stylus" "SendCoreEvents"
# InputDevice     "cursor" "SendCoreEvents"
# InputDevice     "eraser" "SendCoreEvents"
Inputdevice "Synaptics Touchpad"
EndSection
Jakie to bylo narzedzie to nie wiem, samo sie wlaczylo i wygladalo tak jak opisalem. A pakiety - nie wiem, takie jakie mi sugerowano ;)

chmooreck

  • Gość
Ekran o wysokim DPI
« Odpowiedź #10 dnia: 2007-11-20, 07:39:03 »
Po ustawieniu DisplaySize wielkość DPI powinien sam sobie policzyć... Niestety nie eksperymentowałem z tym za dużo i nie wiem, czy da to pożądany efekt, czyli skalowanie wszystkiego.

wile

  • Gość
Ekran o wysokim DPI
« Odpowiedź #11 dnia: 2007-11-20, 15:52:55 »
Dopisalem i jestem w sytuacji wyjsciowej - po komendzie ktora podales w swoim pierwszym poscie tego watku wyskakuje   resolution:    146x145 dots per inch, z tego co zauwazylem wieksze sa tylko fonty przy logowaniu oraz nazwy aplikacji na paskach u gory ich okien.

Moze jeszcze jakies pomysly jak skalowac wszystko?