Работа с несколькими мониторами упрощает многозадачность, но стандартные инструменты создания скриншотов часто захватывают все экраны сразу. Это создаёт неудобства, когда нужно зафиксировать только рабочую область на основном дисплее или отправить коллеге снимок с конкретного монитора без лишних деталей. К счастью, существуют встроенные и сторонние решения для избирательного захвата экрана — от горячих клавиш до специализированных утилит.
В этой статье мы разберём все актуальные способы сделать скриншот только одного монитора в системах Windows 10/11 и macOS, включая малоизвестные функции стандартных инструментов, комбинации клавиш для быстрого доступа и лучшие бесплатные программы. Особое внимание уделим нюансам работы с разными разрешениями экранов, масштабированием и проблемам, которые могут возникнуть при захвате отдельного дисплея в многомониторных конфигурациях.
Почему стандартные способы не всегда работают
По умолчанию операционные системы воспринимают многомониторную систему как единое виртуальное пространство. Например, в Windows при нажатии PrtScn или Win + PrtScn сохраняется изображение всех подключённых экранов, объединённых в одно полотно. Аналогично ведёт себя инструмент Ножницы — он позволяет выделить область, но не привязан к физическим границам мониторов.
Проблемы усугубляются, если:
- 🔹 Экраны имеют разное разрешение или масштабирование (например, 4K и Full HD с увеличением 125%).
- 🔹 Мониторы расположены вертикально и горизонтально одновременно.
- 🔹 Используется NVIDIA Surround или AMD Eyefinity для объединения экранов в один логический дисплей.
- 🔹 В системе активированы виртуальные мониторы (например, через Microsoft PowerToys или DisplayFusion).
В таких случаях даже ручное выделение области в инструменте Ножницы может привести к искажению пропорций или захвату ненужных фрагментов. Решить проблему помогают альтернативные методы, о которых пойдёт речь дальше.
Способ 1: Горячие клавиши в Windows (без программ)
В Windows 10/11 есть скрытая возможность сделать снимок только активного окна, но не всего монитора. Однако с небольшой хитростью можно захватить и весь экран отдельного дисплея. Вот как это работает:
- Активируйте окно на том мониторе, который нужно заснять (например, откройте Проводник или браузер и перетащите его на нужный экран).
- Нажмите комбинацию
Alt + PrtScn. Это сохранит снимок активного окна в буфер обмена. - Вставьте изображение в Paint или другой редактор (
Ctrl + V). - Разверните окно на весь экран (
F11или ⛶) и повторитеAlt + PrtScn. Теперь в буфере окажется снимок всего монитора, но без соседних экранов.
⚠️ Внимание: Этот метод работает только если на целевом мониторе нет открытых окон на других дисплеях. Если, например, браузер растянут на два экрана, Alt + PrtScn захватит обе части.
Закрыть все окна на соседних мониторах|
Развернуть целевое окно на весь экран (F11)|
Убедиться, что курсор находится на нужном дисплее|
Использовать Ctrl + V для вставки в редактор-->
Для Windows 11 есть более надёжный способ через инструмент Win + Shift + S (вырезка экрана):
- Нажмите
Win + Shift + S— экран потускнеет, появится панель инструментов. - Выберите режим «Прямоугольник» (второй значок).
- Наведите курсор на левую верхнюю границу нужного монитора и, удерживая левую кнопку мыши, протяните до правого нижнего угла (границы монитора подсветятся).
- Отпустите кнопку — снимок сохранится в буфер обмена.
Способ 2: Стандартные инструменты macOS
В macOS процесс проще благодаря встроенной утилите Снимок экрана (Screenshot). Чтобы сделать скриншот только одного монитора:
- Нажмите
Command + Shift + 4— курсор превратится в прицел. - Нажмите пробел — курсор станет камерой, а все открытые окна и мониторы подсветятся синим.
- Наведите камеру на нужный монитор и кликните левой кнопкой мыши. Снимок сохранится на рабочий стол в формате
.png.
Если нужно захватить конкретную область на мониторе:
- Используйте
Command + Shift + 4(без пробела). - Удерживая левую кнопку мыши, выделите область. Чтобы отменить, нажмите
Esc.
⚠️ Внимание: В macOS Ventura и новее снимки по умолчанию сохраняются в папку Документы → Снимки экрана, а не на рабочий стол. Чтобы вернуть старое поведение, откройте Терминал и введите:
defaults write com.apple.screencapture location ~/Desktop
killall SystemUIServer
| Комбинация клавиш | Действие | Формат файла |
|---|---|---|
Command + Shift + 3 |
Снимок всех мониторов | .png |
Command + Shift + 4 → Пробел |
Снимок одного монитора | .png |
Command + Shift + 4 |
Выделение области | .png |
Command + Ctrl + Shift + 3/4 |
Скопировать в буфер (без сохранения) | — |
Способ 3: Программы для избирательного скриншота
Если встроенные инструменты не подходят, используйте специализированные утилиты. Они позволяют:
- 🔹 Настраивать горячие клавиши для каждого монитора отдельно.
- 🔹 Автоматически сохранять снимки в облако (Google Drive, Dropbox).
- 🔹 Добавлять аннотации (стрелки, текст, размытие) сразу после захвата.
- 🔹 Захватывать прокручиваемые окна (например, веб-страницы целиком).
Топ-3 бесплатные программы для Windows и macOS:
| Программа | Платформа | Ключевые функции | Ссылка |
|---|---|---|---|
| ShareX | Windows | Захват отдельного монитора, запись GIF, OCR, облачная загрузка | sharex.com |
| Lightshot | Windows/macOS | Быстрое выделение области, редактирование, поиск похожих изображений | app.prntscr.com |
| Snagit | Windows/macOS | Захват прокручиваемых окон, шаблоны аннотаций, интеграция с Slack | techsmith.com |
🔹 Инструкция для ShareX:
- Скачайте и установите программу с официального сайта.
- Запустите ShareX, перейдите в
Задачи → Захват → Захват монитора. - Выберите нужный монитор из выпадающего списка (они пронумерованы слева направо).
- Назначьте горячую клавишу в
Настройки → Горячие клавиши(например,Ctrl + Alt + 1для первого монитора).
В ShareX можно настроить автоматическое размытие личных данных (email, номера телефонов) при захвате экрана. Для этого перейдите в Настройки → После захвата → Эффекты и включите опцию «Размытие текста».
Способ 4: Использование PowerToys (только Windows 10/11)
Microsoft PowerToys — набор утилит для расширенной настройки Windows, включая инструмент Awake для управления сна и FancyZones для организации окон. Но нас интересует модуль «Screen Ruler» (линейка экрана) и «Always on Top», которые косвенно помогают при создании скриншотов.
Однако главная фишка — это PowerToys Run (вызов по Alt + Space), который позволяет быстро открывать инструменты. Чтобы сделать снимок одного монитора:
- Установите PowerToys из Microsoft Store или с GitHub.
- Активируйте модуль
Screen Rulerв настройках. - Нажмите
Win + Shift + S(как в стандартном инструменте), но теперь у вас будет точная привязка к границам монитора благодаря линейке.
⚠️ Внимание: В некоторых сборках PowerToys инструмент Screen Ruler может конфликтовать с драйверами видеокарт NVIDIA/AMD. Если после установки появились артефакты на экране, отключите модуль в настройках.
Как откалибровать Screen Ruler для 4K-мониторов?
По умолчанию линейка в PowerToys может отображать некорректные значения на экранах с высоким DPI. Чтобы исправить это:
1. Откройте Настройки → Screen Ruler.
2. Включите опцию «Use Windows DPI scaling».
3. Перезапустите утилиту.
После этого измерения будут точными даже на 4K-дисплеях с масштабированием 150% или 200%.
Способ 5: Терминал и скрипты (для продвинутых пользователей)
Если вы предпочитаете автоматизацию, можно создать скрипт для захвата конкретного монитора. Ниже пример для Windows на PowerShell:
Add-Type -AssemblyName System.Windows.Forms
$screen = [System.Windows.Forms.Screen]::AllScreens[1] # Индекс монитора (0 — основной, 1 — второй и т.д.)
$bounds = $screen.Bounds
Add-Type -TypeDefinition @"
using System;
using System.Runtime.InteropServices;
public class Win32 {
[DllImport("user32.dll")]
public static extern IntPtr GetDesktopWindow();
[DllImport("user32.dll")]
public static extern IntPtr GetWindowDC(IntPtr hWnd);
[DllImport("gdi32.dll")]
public static extern bool BitBlt(IntPtr hdcDest, int nXDest, int nYDest, int nWidth, int nHeight, IntPtr hdcSrc, int nXSrc, int nYSrc, int dwRop);
[DllImport("user32.dll")]
public static extern bool ReleaseDC(IntPtr hWnd, IntPtr hDC);
}
"@
$hDesk = [Win32]::GetDesktopWindow()
$hSrc = [Win32]::GetWindowDC($hDesk)
$hDest = [System.Drawing.Graphics]::FromHwnd($hDesk).GetHdc()
$hBitmap = New-Object System.Drawing.Bitmap($bounds.Width, $bounds.Height)
$g = [System.Drawing.Graphics]::FromImage($hBitmap)
$g.CopyFromScreen($bounds.Location, [System.Drawing.Point]::Empty, $bounds.Size)
$g.Dispose()
$hBitmap.Save("C:\screenshot_$($screen.DeviceName.Replace('\','_')).png")
🔹 Как использовать:
- Скопируйте код в Блокнот и сохраните как
screenshot.ps1. - Запустите PowerShell от имени администратора.
- Введите
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser(разрешите выполнение скриптов). - Перейдите в папку со скриптом и выполните
.\screenshot.ps1.
Для macOS можно использовать Terminal и команду screencapture:
screencapture -x -R$x,$y,$width,$height ~/Desktop/screenshot.png
Где $x,$y — координаты левого верхнего угла монитора, а $width,$height — его разрешение. Узнать параметры экрана можно через System Information (Apple Menu → Об этом Mac → Системный отчёт → Graphics/Displays).
Скрипты позволяют автоматизировать создание скриншотов по расписанию (например, через Задачи Windows или cron в macOS). Это полезно для мониторинга удалённых рабочих столов или фиксации ошибок в фоновом режиме.
Распространённые проблемы и их решения
При работе с многомониторными системами пользователи часто сталкиваются со следующими трудностями:
- 🔹 Снимок получается размытым — это связано с масштабированием экрана (например, 125% или 150%). Решение: отключите масштабирование для конкретного монитора в
Настройки → Система → Дисплейили используйте программы вроде ShareX, которые корректно обрабатывают DPI. - 🔹 Курсор мыши попадает на снимок — в Windows отключите отображение курсора в
Параметры → Устройства → Мышь → Дополнительные параметры мыши → Указатели(снимите галочку «Отображать след указателя»). - 🔹 Не работает
PrtScnна ноутбуке — на некоторых моделях (Lenovo, HP) клавишаPrtScnдублируется сSysRq. ПопробуйтеFn + PrtScnили проверьте настройки BIOS. - 🔹 Снимок сохраняется в неудобном формате — по умолчанию Windows использует
.png, а macOS —.pngс прозрачностью. Чтобы изменить формат в Windows, откройте Paint и сохраните файл как.jpgили.bmp.
⚠️ Внимание: Если вы используете Remote Desktop (RDP) для подключения к другому ПК, стандартные горячие клавиши (PrtScn, Win + Shift + S) будут захватывать локальный экран, а не удалённый. Чтобы сделать снимок удалённого рабочего стола, нажмите Ctrl + Alt + Minus (-) на цифровой клавиатуре (в полноэкранном режиме RDP).
FAQ: Частые вопросы
Можно ли сделать скриншот только одного монитора в игре?
В большинстве игр стандартные горячие клавиши (PrtScn, Alt + PrtScn) заблокированы. Используйте:
- 🔹 Встроенный инструмент игры (например,
F12в Steam илиAlt + F2в Origin). - 🔹 Программы вроде Fraps или MSI Afterburner (захват конкретной области).
- 🔹 NVIDIA ShadowPlay (
Alt + F1) или AMD ReLive (Ctrl + Shift + E) — позволяют выбрать монитор для записи.
⚠️ В полноэкранных играх с DirectX 12 или Vulkan некоторые утилиты могут не работать. Переключитесь в оконный режим (Alt + Enter).
Почему скриншот получается чёрным, когда я пытаюсь захватить второй монитор?
Это типичная проблема при использовании драйверов NVIDIA/AMD в режиме оптимизации для игр или при активированном Hardware Acceleration. Решения:
- Отключите аппаратное ускорение в настройках графики (для Chrome/Firefox:
Настройки → Система → Отключить аппаратное ускорение). - Обновите драйвер видеокарты до последней версии.
- Используйте ShareX с опцией «Capture layered windows» (в настройках захвата).
Как сделать скриншот вертикального монитора без искажений?
Если монитор повернут на 90°, стандартные инструменты могут сохранять снимок в горизонтальной ориентации. Чтобы избежать этого:
- 🔹 В Windows: используйте ShareX и в настройках захвата выберите «Force portrait orientation».
- 🔹 В macOS: после захвата откройте снимок в Просмотре и поверните на 90° (
Инструменты → Повернуть влево). - 🔹 Для автоматического поворота используйте скрипт на Python с библиотекой
Pillow:
from PIL import Image
img = Image.open("screenshot.png")
img.rotate(90, expand=True).save("screenshot_rotated.png")
Можно ли захватить скриншот с монитора, подключённого по USB-C или Thunderbolt?
Да, но есть нюансы:
- 🔹 USB-C с DisplayPort Alt Mode: стандартные инструменты (
PrtScn, Ножницы) работают без ограничений. - 🔹 Thunderbolt-доки (например, CalDigit TS4): иногда требуется обновить прошивку дока для корректного захвата. Проверьте настройки в Thunderbolt Control Center.
- 🔹 USB-мониторы (например, ASUS ZenScreen): могут не отображаться в списке экранов для захвата. Используйте ShareX с ручным выбором области.
⚠️ Если монитор подключён через USB-хаб без поддержки видео (например, дешёвые адаптеры), система может не распознавать его как отдельный дисплей. В этом случае скриншот сделать невозможно.
Как автоматически сохранять скриншоты одного монитора в облако?
Для автоматической загрузки снимков в Google Drive, Dropbox или OneDrive:
- В ShareX перейдите в
Настройки → После захвата → Действия. - Добавьте действие «Загрузить изображение в хостинг» и выберите сервис (например, Imgur).
- Для Google Drive используйте rclone (утилита командной строки) или настройте синхронизацию папки через Google Backup and Sync.
Пример скрипта для загрузки в Dropbox:
@echo off
"C:\Program Files\ShareX\ShareX.exe" /capture monitor:1
timeout /t 2
move "C:\Users\%USERNAME%\Pictures\Screenshots\*.png" "C:\Users\%USERNAME%\Dropbox\Screenshots\"