Максимальное разрешение достижимо через Xcode:
Существуют приложения, в том числе, открытые для того, чтобы выставить полное разрешение. Представьте себе, через программу настройки, MacOS такой возможности не даёт. В этой же статье я покажу, как можно это сделать на С++ для тех, кому это нужно в разработке игр или специализированных графических приложений. Самому мне, как разработчику, это нужно было, чтобы увеличить рабочее пространство.
Также надо добавить фреймворки CoreGriphics и CoreFoundation в настройках проекта.
Apple поддерживает более высокое разрешение, чем заявлено. Текущее разрешение было 1440x900. Поддерживаемые режимы разрешения:
Полноразмерное изображение здесь.
Существуют приложения, в том числе, открытые для того, чтобы выставить полное разрешение. Представьте себе, через программу настройки, MacOS такой возможности не даёт. В этой же статье я покажу, как можно это сделать на С++ для тех, кому это нужно в разработке игр или специализированных графических приложений. Самому мне, как разработчику, это нужно было, чтобы увеличить рабочее пространство.
#include <iostream>
#include <CoreGraphics/CoreGraphics.h>
int main(int argc, const char * argv[]) {
// insert code here...
auto mainDisplayId = CGMainDisplayID();
std::cout << "Current resolution was "
<< CGDisplayPixelsWide(mainDisplayId) << 'x'
<< CGDisplayPixelsHigh(mainDisplayId) << std::endl
<< "Supported resolution modes:";
auto modes = CGDisplayCopyAllDisplayModes(mainDisplayId, nullptr);
auto count = CFArrayGetCount(modes);
CGDisplayModeRef mode;
for(auto c=count;c--;){
mode = (CGDisplayModeRef)CFArrayGetValueAtIndex(modes, c);
auto w = CGDisplayModeGetWidth(mode);
auto h = CGDisplayModeGetHeight(mode);
std::cout << std::endl << w << 'x' << h;
}
CGDisplaySetDisplayMode(mainDisplayId, mode, nullptr);
std::cout << " is the selected top one." << std::endl;
std::cin.get();
return 0;
}
Также надо добавить фреймворки CoreGriphics и CoreFoundation в настройках проекта.
Как добавить фреймворки.
Apple поддерживает более высокое разрешение, чем заявлено. Текущее разрешение было 1440x900. Поддерживаемые режимы разрешения:
640х480
800х600
1024x768
1280x800
1440x900
2048x1280
1152x720
2304x1440 << заявленное максимальное разрешение
2560x1600 << выбранное разрешение.
Полноразмерное изображение здесь.
Поделиться с друзьями
FeNUMe
Вы бы в начале статьи описали какую проблему она решает, а то совершенно не ясно к чему эти танцы с бубном.
iHateInventNames
Название статьи «Разрешение под MacOS на C++» как бы детерминистично намекает про свой контент. А за то, что показали, как размещать перевод большое Вам спасибо. Дабы знал, то указал бы. Хотя статья, вобщем-то моя и та, и эта.
kez
Прочитав «разрешение», первым делом подумал про «permission», чем заголовок статьи, собственно, и порвал шаблоны.
Уточните хотя бы, что речь про разрешение экрана.
TimsTims
Тоже подумал — про какое разрешение идёт речь? Если бы речь шла про разрешение экрана, то об этом обычно явно пишут на хабре. А тут «разрешение под mac» и какой-то саркастический тон в отношении Стива, подумалось что имеется ввиду разрешение на разработку в среде C++ на MacOS'ах, ведь учитывая привычки Apple всё запрещать, это казалось вполне возможным сценарием. Короче заголовок и хабракат вводит в заблуждение)
Ernado
Если вы хотели похвастаться новым маком, вовсе не нужно было еще добавлять в статью C++ код непонятного, в данном контексте, назначения.
iHateInventNames
Статья на тему «посмотрите, какой у меня прекрасный новый макбук» была бы скучной. А это — полезная статья, англоязычный вариант которой, уже не одного читателя натолкнул открыть впервые IDE. Надеюсь, теперь и русскоязычных людей подтолкнёт к прекрасному.
Error1024
Мы на хабре, здесь люди уже сидят с открытыми IDE. Кроме того что вы похвастались макбуком с статье ничего нет.
iHateInventNames
Не у всех. А, даже, и первочитателей, поисковик приведёт на habrahabr.ru.
Error1024
ЩИТО?
iHateInventNames
Вам будет легче меня понять, если вы ознакомитесь с этой статьёй http://econet.ru/articles/111168-vyhod-iz-treugolnika-karpmana и примените её информацию к своему посту. А пока проясню: далеко не каждый посетитель Хабрахабр — программист. Возможно, количество переводчиков и лингвистов — суммарно, даже превосходит. Поэтому то, что вы написали — не соответствует действительности. Не думаю, что для вас было бы новым услышать, учитывая заявление о том, что у всех, а к ним вы причисляете себя — запущена среда разработки, что существуют поисковики, которые могут привести людей, что буду искать информацию, которая находится в этой статье, на эту страницу. Если почитаете ещё-раз мой ответ на ваш комментарий, на который вы ответили «ЩИТО?» то возможно, осознаете, что содержимое его детерминистично об этом повествует. Вербозность излишняя — не всегда хорошо, а порою, даже, помимо того, что забирает время, вредно. Думаю, это я вам продемонстрировал.
BasilSnowman
«чтобы сделать работу очень приятный!» — извините, Вы забыли добавить указатель, что это перевод.
lolipop
о чем вообще статья? автор решил велосипеднуть RDM?
PS для задания новых ретина-разрешений, не поддерживаемых монитором можно воспользоваться этим
iHateInventNames
Да. Для тех, кто в кодинге не осведомлён, полезная краткая статья, англоязычный вариант которой, уже не одного читателя натолкнул открыть впервые IDE.
myxo
я вот тоже не понял о чем статья. Ну то есть по-настоящему не понял. Пару несвязанных предложений со словами «разрешение» и кусок кода. Что за проблема вообще решается-то?
iHateInventNames
Я постарался исправить эту оплошность — поменял заголовок, добавил видео. Теперь лучше?
dom1n1k
Вот кстати. Поинтересовался я как-то макбуками, заглянул на фирменный сайт и что я там вижу?
Для 13 и 15 дюймов соответственно. Ссылка: http://www.apple.com/macbook-pro/specs-retina/Вот я хочу понять, что нужно курить, чтобы настроить экраны на dppx 1.52, 1.77, 2.5, 1.5, 1.71, 2.25 и 2.81 — но пропустить самое логичное и очевидно значение 2?
1280*800 и 1440*900 — очень подходящие (и некогда очень распространенные) разрешения для таких экранов.
Что помешало? Ведь это чисто софтовая примочка. Выше моего понимания.
И примерно похожая картина с «плюсовыми» айфонами, кстати.
kez
Это опечатка на сайте, для 2560x1600 по умолчанию стоит scale 2, т.е. 1280x800
alexkunin
Это просто неудачный вординг.
Нативное разрешение — матрица именно 2560x1600. Ретина — это удвоенная плотность (или учетверенная, если по площади), и разрешение логическое при указанном физическом будет 1280x800 — такое оно по-умолчанию, а если включить переключатель разрешений, то именно это будет отмечено как «Default».
Все остальные указанные разрешения — именно масштабированные.
Надеюсь, мой не менее неудачный вординг не запутал вас.
Короче, указав «Native resolution: 2560 by 1600 pixels (Retina)» они как бы сразу указали то самое логическое 1280x800. А вот масштабированного 1280x800 действительно нет в стандартном UI. Т.е. нет такого режима, в котором и логическое, и физическое будет 1280x800.
GRIM2D
Зачем? Because I can?
Мне кажется, просто множитель упал с 2х на 1х. Да скрин выглядит круто, на на 13' или 15' невозможно работать.
PS. На макбуках без ретины не работает
Sovigod
Как бы switchresx. Делает это уже давно.
gearbox
Никого не слушай, они тебе просто завидуюут… песши ище.
gearbox
тяжко с юмором у хабровчан, похоже эта статья реально в кассу.
Error1024
С неуместным — тяжко, да
GoldenStar
Статья нужна для тех, у кого не ретина дисплей, а он пишет софт под iPhone… Крайне не удобно видеть эмуляцию устройства не в полный «рост» на экране макбука и еще и скроллить из-за этого экран. Как написали выше — есть спец софт для смены разрешения экрана макбука.
В общем то нужная статья, если, еще и обратить внимание на полезнные комментарии. Название статьи ни разу не информативное — желательно писать по понятнее для простых людей, если уж в паблик выкладывается.
dvor
Гораздо проще нажать ?1, ?2, ?3, ?4, ?5 и уменьшить симулятор до нужного размера.
P.S. не эмуляция, а симуляция.
iHateInventNames
Всем снова здравствуйте. Это моя третья статья на Хабре. Просьба плюсовать, если хотите видеть подобные статьи. Просьба минусовать, если не хотите видеть подобные статьи. В этом случае я удалю свои статьи и аккаунт. Лично я считаю подобные статьи очень полезными — коротко и по-сути. Другая моя статья https://geektimes.ru/post/276108/ — гораздо более вербозная и по-сути, возимела больший успех. Все мои статьи будут по-сути. Возможно с юморком. Спасибо!