Skip to main content

Introduction

Fix blurry Tkinter applications on Windows 10/11 high-DPI displays.

tkinter-unblur provides a drop-in replacement for tkinter.Tk that automatically applies DPI awareness on Windows 10/11, fixing the common "blurry text" problem.

The Problem

Tkinter applications look blurry and pixelated on modern high-resolution displays with scaling enabled (125%, 150%, 200%, etc.). This is because Tkinter is not DPI-aware by default on Windows.

The Solution

# Before (blurry)
from tkinter import Tk

# After (crystal clear)
from tkinter_unblur import Tk

That's it. One import change, and your Tkinter app renders sharply.

Installation

pip install tkinter-unblur

Usage

from tkinter_unblur import Tk

root = Tk()
root.title("My App")
root.geometry("800x600")
root.mainloop()

That's all you need! For advanced usage, see the API Reference.

Compatibility

PlatformStatus
Windows 10/11Full DPI awareness support
LinuxPassthrough (OS handles DPI)
macOSPassthrough (OS handles DPI)
Python VersionStatus
3.9 - 3.14Supported
3.8Not supported (EOL)

Migrating from hdpitkinter

This package was formerly known as hdpitkinter. To migrate:

pip uninstall hdpitkinter
pip install tkinter-unblur
# Old
from hdpitkinter import HdpiTk
root = HdpiTk()

# New
from tkinter_unblur import Tk
root = Tk()

The HdpiTk name is still available as an alias for backwards compatibility:

from tkinter_unblur import HdpiTk  # Works, but Tk is preferred