Setel DPI aplikasi individual di Windows

41

Apakah mungkin untuk menetapkan DPI aplikasi individual di Windows?

Saya ingin meningkatkan DPI satu atau lebih aplikasi tetapi tidak seluruh sistem.

Bisakah ini dilakukan?

yngvedh
sumber
7
Sungguh menakjubkan bahwa mereka masih belum tahu bahwa ini adalah satu hal yang akan membuat tampilan DPI tinggi sepenuhnya CARA ditoleransi sebelum semua pengembang memperbaiki semua aplikasi mereka.
RomanSt

Jawaban:

18

Apakah mungkin untuk menetapkan DPI aplikasi individual di Windows?

Singkatnya, tidak.

Ini adalah pengaturan global.

Peter Mortensen
sumber
22
sangat disayangkan
QueueHammer
27
masih sangat disayangkan hampir lima tahun kemudian
Simon
1
Karena Windows 10 dirilis sekarang, apakah windows 10 mendukung ini?
Ovidiu Buligan
Ada teknik yang disebut virtualisasi DPI, dapat diaktifkan per-aplikasi. Saya memposting tautan ke tutorial dalam jawaban saya di bawah ini.
Andy
3 tahun lagi dan masih belum ada pesan lebih lanjut. Sayang sekali MS tidak pernah menyadari betapa pentingnya hal itu.
Ben
8

Inilah teknik yang secara tidak langsung dapat memenuhi kebutuhan Anda. Di Windows 8.1 dan Windows 10 ada kemungkinan untuk mengaktifkan penskalaan dpi untuk aplikasi lama yang ditulis sebelum layar resolusi tinggi muncul. Windows akan membuat suatu aplikasi yakin itu menggambar pada layar dpi rendah dan akan mengatur seluruh jendela aplikasi, sehingga hasilnya menunjukkan cukup besar pada layar dpi tinggi. Ini akan menjadi penskalaan bitmap, tanpa vektor, jadi harapkan beberapa kabur sebagai konsekuensinya.

Anda perlu mengaktifkan satu kunci dalam registri, kemudian menyediakan file manifes XML untuk setiap aplikasi yang ingin Anda skala. Tutorial yang baik untuk hal ini adalah Cara Memperbaiki Permukaan Aplikasi App Pro 4 + Menampilkan DPI Tinggi Lainnya .

Inilah bagian penting dari manifes eksternal yang diposting dalam deskripsi video YouTube:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">
  <asmv3:application>
    <asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">
      <ms_windowsSettings:dpiAware xmlns:ms_windowsSettings="http://schemas.microsoft.com/SMI/2005/WindowsSettings">false</ms_windowsSettings:dpiAware>
    </asmv3:windowsSettings>
  </asmv3:application>
</assembly>

Dan inilah konten file .reg yang mengaktifkan file manifes eksternal:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SideBySide]
"PreferExternalManifest"=dword:00000001
Andy
sumber
10
Apakah Anda dapat meringkas isi tautan dalam jawaban Anda? Jika video itu diturunkan atau dipindahkan maka jawaban Anda akan menjadi tidak berguna bagi pengunjung masa depan.
Mokubai
1
Sebagai seseorang yang tidak bisa menonton video YouTube di tempat kerja, saya mendukung komentar Mokubai.
domsson
Ditanyakan di superuser.com/questions/1281939/... - bagaimana saya menerapkannya. Terima kasih.
Martin Cleaver
7

Iya nih! Itu bisa dilakukan. Anda dapat mengubah pengaturan DPI aplikasi individual di Windows, tetapi hanya jika itu mendukungnya. Anda dapat melakukan ini dengan cara berikut.

Jika Anda memiliki beberapa aplikasi spesifik yang mendukung pengaturan DPI tinggi, tetapi tidak menunjukkannya, Anda dapat mengonfigurasi detail itu secara manual. Untuk melakukannya, klik kanan pintasan yang memulai aplikasi (di menu Mulai) dan pilih Properti. Pada tab Kompatibilitas, aktifkan opsi bernama Nonaktifkan Tampilan Skala pada Pengaturan DPI Tinggi. Jika Anda memiliki banyak aplikasi untuk dikonfigurasi, ini cepat melelahkan.

Catatan: Ini akan berfungsi dengan baik dengan Windows Vista dan Windows 7 tidak tahu tentang Windows XP.

bkdubey
sumber
1
Saya baru saja menguji "Nonaktifkan penskalaan tampilan pada pengaturan DPI tinggi" pada Windows 7. Itu tidak menyebabkan teks yang akan diterjemahkan "sedang" ketika pengaturan global "kecil" atau sebaliknya. Dengan kata lain, "Nonaktifkan penskalaan tampilan pada pengaturan DPI tinggi" tidak memengaruhi ukuran teks dengan cara yang sama seperti CP-> Display-Set Custom Text size (DPI).
alx9r
6
Ini menonaktifkan penskalaan tampilan; itu tidak menonaktifkan DPI tinggi. Penskalaan layar adalah fitur kompatibilitas ke belakang yang memungkinkan aplikasi yang buruk merender pada 96 DPI dan ditingkatkan ke DPI apa pun yang diatur layar (sebagai bitmap). Beberapa aplikasi lama menangani DPI Tinggi dengan benar tetapi tidak mendeklarasikannya, sehingga mereka tidak boleh jatuh ke dalam "ember aplikasi yang buruk" yang membuat UI buram. Pengaturan ini menonaktifkan penskalaan ini dan memberi tahu aplikasi apa DPI sebenarnya; itu tidak membiarkan aplikasi berjalan pada 96 DPI seolah-olah penskalaan DPI tidak diaktifkan.
Billy ONeal
Jika saya memiliki 13 "laptop utama saya dan 19" monitor eksternal, apakah itu berarti semua yang saya lihat di monitor laptop saya akan terlalu besar?
Boris_yo
Saya tidak sepenuhnya memahami semua seluk beluk ini, tetapi saya mencoba ini pada satu aplikasi yang memberi saya kesedihan yang signifikan (aplikasi .NET 2.x yang lebih lama), dan sepertinya tidak berdampak apa pun: tata letak sama rusak sebelum mengubah pengaturan seperti sesudahnya. Satu-satunya solusi yang saya buat adalah (gaah) menjalankannya di komputer yang sama sekali berbeda. Bahkan melakukan remote desktop ke komputer jarak jauh dari mesin DPI tinggi saya merusak aplikasi.
Ken Smith
Saya menggunakan monitor 4K dan 2560 ('2K') berdampingan di Windows 10, dan mereka memiliki dimensi yang sama (27 "). Jadi, tampilan 4K harus diskalakan 150% atau lebih agar dapat digunakan secara umum. Saya menggunakan ini pengaturan kompatibilitas untuk mencegah putty.exe dari diskalakan secara naif dan dengan demikian menjadi buram pada tampilan mana pun yang merupakan tampilan non-primer. Sekarang, apa yang rumit tentang ini adalah bahwa saya harus menyesuaikan ukuran font terminal secara manual ketika saya menggunakannya pada Tampilan 4K seperti itu akan menjadi terlalu kecil lagi, tetapi memiliki kemampuan untuk memaksanya menampilkan program lawas tanpa penskalaan sangat berguna
Steven Lu
2

SOLUSI UNTUK WINDOWS 10 di PC resolusi tinggi.

Klik kanan pada ikon / tautan perangkat lunak> properti> tab "kompatibilitas"> ubah pengaturan DPI tinggi> tandai kotak centang "timpa perilaku penskalaan DPI tinggi"> pilih "sistem" di jendela di bawah ini (standarnya adalah "aplikasi")

Selamat bersenang-senang
sumber