Назад, когда Vista впервые поставлялась, и когда WPF был в версии 3.0, масштабирование с помощью встроенной лупы фактически выполняло бы векторное масштабирование.
Это перестало работать, когда поставлялся пакет обновления 1 для WPF 3.5.(Он работал в 3.5 до sp1.) Причина, по которой он работал до того, заключается в том, что DWM (менеджер окон рабочего стола) - часть Windows, отвечающая за представление всего, что вы видите на экране - использует MILCORE.DLL для выполнения своего рендеринга.Версии 3.0 и 3.5 WPF также использовали этот же компонент для рендеринга - это означало, что весь контент WPF был, так сказать, нативным.(На самом деле, в Windows XP, у которой нет DWM, WPF - это то, что WPF ставит в вашу систему для собственной выгоды. Но он встроен в Vista и Windows 7.) Когда WPF использовал MILCORE.DLL дляПри рендеринге в Vista любые эффекты, применяемые DWM, такие как масштабирование, также будут применяться так, как вы хотите к WPF - он действительно масштабировался без пикселей.
К сожалению, это уже не так.И причина в том, что WPF начал добавлять новые функции рендеринга.В 3.5 sp1 новой особенностью была поддержка пользовательских пиксельных шейдеров.Чтобы включить это, Microsoft должна была выпустить обновление MIL.(Media Integration Layer - бит, который выполняет фактический рендеринг.) Однако они не были в состоянии обновить MILCORE.DLL, потому что это часть Windows - это то, как все, что вы видите на экране, становится на экране.Выпуск новой версии MILCORE.DLL фактически означает выпуск обновления для Windows.Расписание выпуска для Windows не зависит от расписания для .NET, и поэтому единственный способ, которым команда WPF могла разумно добавить новые функции, - это отправка нового MIL.(Теоретически они могли бы сделать это через Центр обновления Windows, но поскольку WPF теперь принадлежит другому подразделению Microsoft, нежели Windows, на практике такого рода вещи, по-видимому, не происходят.)
По состоянию на.NET 3.5 sp1, MIL находится в другой библиотеке DLL, которая называется wpf_gfx_vXXXX.dll, где vXXXX - номер версии.В .NET 4.0 это wpf_gfx_v0400.dll.
Достоинством является то, что WPF добавляет новые функции рендеринга с каждой новой версией, не требуя обновления самой Windows.Недостатком является то, что рендеринг WPF больше не так тесно интегрирован с Windows, как это было на короткое время назад, когда вышла Vista.И в результате, как вы видели, это увеличение не так весело, как раньше.