macOS: "SF Pro Text" not available on new computer - appkit

I want to use the "SF Pro Text" font in my app. It works fine when I build my app on my main computer (running macOS11 Big Sur), but I have a 2nd partition to run macOS Monterey, and it doesn't seem to be available there at all, whether through Interface Builder or through code (using NSFontManager). Using this returns nil on my Monterey partition:
NSFont* boldFont = [[NSFontManager sharedFontManager] fontWithFamily:#"SF Pro Text" traits:NSFontWeightBold weight:8 size: 16.0];
What gives? Do I have to install the font manually? I thought it would come with the system, since it is a 'system font'?

You can install it manually, it's available here
If you install it specifically for your user, you'll find it in YourUser/Library/fonts.

Related

How to verify compatibility of older Xcode on newer MacOS in terminal without opening it

When I was using MacOS 12.5.1, I found out that older version(e.g. 11.3) of Xcodes can't be opened. It's icon became a banned image and can be opened neither by double click nor 'open' cmd in terminal.
So I want to know how to verify Xcode in terminal? Use 'open' cmd is an option but if the target app is available, it will be opened which I don't expect to happen.
I found there is a "Minimum system version" in /Applications/Xcode.app/Contents/Info.plist, but no "Max system version". In my case I wanna to know which older verison of xcode is unavailable on new MacOS. Any help will be appreciated!
Use the excellent Go64 application from St. Clair Software. When you load it and scan, you can then see programs that will not work on your system clearly marked with a strike thru circle:

macOS users: PDF looks fuzzy in pdf-tools in emacs

For all Mac users that have emacs installed, I have successfully installed pdf-tools but the PDF files looks fuzzy. Has anyone managed to increase the resolution?
In case it helps, I have a macOS Catalina (version 10.15.4)
Thanks a lot
You need to add
(setq pdf-view-use-scaling t
pdf-view-use-imagemagick nil)
To enable the retina screen support

How to simulate a retina display (HiDPI mode) in Mac OS X 10.8 Mountain Lion on a non-retina display?

How can you simulate a retina display (HiDPI mode) in Mac OS X 10.8 Mountain Lion on a non-retina display?
Search for, download, and install Apple's free Additional Tools for Xcode 8 (for previous Xcode releases search for Graphics Tools for Xcode according to your version).
Note: free Apple Developer account required.
Launch Quartz Debug application.
Go to menu: Window ---> UI Resolution.
Check Enable HiDPI display modes.
Quit Quartz Debug.
Open System Preferences.
Select Displays icon.
If using multiple display, select the configuration window on the display you wish to simulate HiDPI mode on.
Under Resolution:, select Scaled radio button.
Find a desired resolution postfixed with (HiDPI) and select it.
Your display is now running in HiDPI mode, simulating a retina display.
Source: High Resolution Guidelines for OS X
I found the following instructions. It seems to work, and it is much easier than the Quartz Debug approach.
"Enable HiDPI mode in Mountain Lion w/o Quartz Debug"
https://gist.github.com/3191869
In brief, run the following commands, log out, log on, and the HiDPI resolutions are available in the display preferences:
sudo defaults write /Library/Preferences/com.apple.windowserver DisplayResolutionEnabled -bool YES
sudo defaults delete /Library/Preferences/com.apple.windowserver DisplayResolutionDisabled
(In my case the first command was enough; the second command just prints an error message.)
Edit: (5/31/2016)
For users trying to do this on El Capitan, please read the FAQ on SwitchRes's website. Also, if something's still not working after you did all the steps in the FAQ, consider uninstalling and reinstalling SwitchResX. That solved the issue I was having on one of my laptops.
Original:
After reading through several forums, websites, blogs.
I am here to present a solution for users with 15" MacBook Pro with Retina display connected to a Thunderbolt Display.
First of all,
Terminal command of modifying plist
Quartz Debug
Holding option and select "Scaled" in System Preferences
ResolutionTab (Mac App Store)
These methods DO NOT work for MBPr with Thunderbolt Display, for whatever reasons.
You will not see the HiDPI options to be selected.
The only tool I found that actually gives us the options is SwitchResX.
However another problem exists here.
Most users with this setup, I believe, are trying to use 1280x720 HiDPI because it's half the native resolution of the TBD.
According SwitchResX's FAQ, in some cases it is not possible to set to this resolution because of a bug within OS X itself.
Here's a screenshot for your reference:
After contacting the developer, he presented a workaround - adding one more pixel - which worked for me.
Install SwitchResX and open it from System Preferences.
Go to Thunderbolt Display tab, and add a Custom Resolutions with Scaled Resolution at 2562 x 1440
Here's a screenshot
Save using command + s. (or simply close the window and use the prompt up)
Restart the laptop.
Go to SwitchResX and select the new custom resolution in the Current Resolution tab. (Sometimes it doesn't show up right away, play around with it and it should.)
Here you go.
I hope this answer gets to users with this setup because it is really frustrating to use 16:10 resolution on a 16:9 display.
For those unable to enable HIDPI on rMBP or new MBA, I experienced the same on my rMBP 15" with Air Display. I solved the problem by installing SwitchResX. With the boolean setting enabled as shown in the referenced gist, the HIDPI setting shows up.
Dragging seems a little laggy in Air Display, but otherwise works great.
Try this
sudo defaults write /Library/Preferences/com.apple.windowserver DisplayResolutionEnabled -bool YES
[from here]
If your monitor supports it, it may also be worth setting the DisplayPort version to 1.1 instead of 1.2.
I have a late 2010 Mac Air with a Samsung S27D850 display and had all sorts of intermittent resolution switching issues until I made that change.
As for me its pretty good app that give you opportunity for changing resolution any that you want.
SwitchResX for Mac and MacBook.
This app resolved all my problems with resolution.

OSX - Get a selector with list of systems fonts

In my new app, I need the user to be able to click a selector, and pick any of their system fonts. How is this possible?
+[UIFont familyNames] returns an array of names of installed fonts.
Edit: Oops, I was in iOS mode. Here's the Mac OS version:
[[NSFontManager sharedFontManager] availableFontFamilies]

Cocoa App Renders Differently on Macbook Pro vs Mac Mini

Perhaps I'm going crazy here, but I have a desktop mac application which, in one of its windows, has an NSImageView placed in a specific spot (using Interface Builder).
When I run the app on a Mac Mini it appears in the right spot. But when I run it on a Macbook Pro the image view is offset quite noticeably.
I've tried on both Lion and Snow Leopard on two different macbook pros and two different mac minis. The OS version doesn't seem to be a factor. It seems the only difference is that one machine is a laptop and the other is a desktop, but I have no idea why this would affect the positioning of elements.
Is there any reason an app's UI elements would not appear in the right spot when running on a laptop vs desktop?
Or perhaps there's another reason this is happening?
If your display is smaller on the Mac Mini and the window is larger than the display then it could be automatically resized. If that is the case then you should look at the view's autoresize mask to make sure they are correct.

Resources