pyobjc-framework-CoreText
Wrappers for the framework CoreText on macOS
What it is and what it does
This package is a PyObjC wrapper around Apple's CoreText framework, exposing macOS's native text layout and font management capabilities to Python. CoreText is a low-level, high-performance API designed for sophisticated typographic control—font selection, text measurement, glyph layout, and rendering—making it the foundation for text handling in macOS applications.
You use it when you need direct access to macOS font and text rendering from Python, typically in GUI applications built with PyObjC or when integrating with Cocoa-based tools. The package depends on three other PyObjC framework bindings (pyobjc-core, pyobjc-framework-Cocoa, and pyobjc-framework-Quartz) and is actively maintained. It includes no standalone documentation—you rely on Apple's CoreText documentation and PyObjC's general translation guides to understand the API.
Use it for:
- Build macOS GUI applications that need precise font selection and text measurement using native CoreText APIs.
- Integrate Python scripts with Cocoa-based text rendering pipelines that require low-level typography control.
- Develop macOS tools that manipulate fonts, glyphs, or text layout programmatically via native frameworks.
- Create cross-framework Python bindings where CoreText integration is necessary for text handling.
- Access advanced macOS typography features (ligatures, kerning, complex scripts) from Python code.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides Python bindings to macOS's CoreText framework for low-level text layout, font handling, and typographic operations on macOS 10.5 or later.
Yes, if you are developing on macOS and need direct access to CoreText for text layout, font handling, or GUI applications using PyObjC. The package is actively maintained, has no known vulnerabilities, and carries a permissive MIT license. Install friction is moderate due to platform and Python version constraints, but that is inherent to macOS-only bindings. Not applicable on non-macOS systems.
Install
pyobjc-framework-coretext on PyPI
pip
pip install pyobjc-framework-coretextuv
uv add pyobjc-framework-coretextpoetry
poetry add pyobjc-framework-coretextInstalling pyobjc-framework-CoreText
Before you install
Medium install friction due to platform-specific wheels (macOS only, Python 3.10+) and three runtime dependencies on other PyObjC framework packages. Active maintenance with recent release (3 days old) and steady repository activity.
License in practice
MIT license is permissive; you can use, modify, and distribute this package with minimal restrictions, making it suitable for both open-source and commercial projects.
Quickstart
pip install pyobjc-framework-coretext
from CoreText import CTFont, CTFontCreateWithName
font = CTFontCreateWithName("Helvetica", 12.0, None)
macOS only (requires macOS 10.5 or later); Python 3.10 or higher required; depends on pyobjc-core, pyobjc-framework-Cocoa, and pyobjc-framework-Quartz.
Verify before relying
- Specific CoreText API coverage and completeness relative to Apple's full framework surface.
- Performance characteristics for large-scale text layout operations.
- Compatibility with non-Intel macOS architectures beyond universal2 wheels listed.
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | 3 — pyobjc-core, pyobjc-framework-Cocoa, pyobjc-framework-Quartz |
| Maintenance | actively maintained — 3 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,004,759/month — #4,531 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: pyobjc_framework_coretext-12.2.2-cp310-cp310-macosx_10_9_universal2.whl; pyobjc_framework_coretext-12.2.2-cp311-cp311-macosx_10_9_universal2.whl; pyobjc_framework_coretext-12.2.2-cp312-cp312-macosx_10_13_universal2.whl; pyobjc_framework_coretext-12.2.2-cp313-cp313-macosx_10_13_universal2.whl; pyobjc_framework_coretext-12.2.2-cp313-cp313t-macosx_10_13_universal2.whl; pyobjc_framework_coretext-12.2.2-cp314-cp314-macosx_10_15_universal2.whl; pyobjc_framework_coretext-12.2.2-cp314-cp314t-macosx_10_15_universal2.whl; pyobjc_framework_coretext-12.2.2-cp315-cp315-macosx_10_15_universal2.whl; pyobjc_framework_coretext-12.2.2-cp315-cp315t-macosx_10_15_universal2.whl
Keywords: PyObjC, CoreText
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
pyobjc-framework-ApplicationServicesProvides Python bindings to macOS…
permissive · top 5,000 on PyPI
pyobjc-framework-NaturalLanguageProvides Python bindings to macOS's…
permissive · top 15,000 on PyPI
pyobjc-framework-InputMethodKitProvides Python bindings to macOS's…
permissive · top 15,000 on PyPI
pyobjc-framework-ClassKitProvides Python bindings to Apple's ClassKit…
permissive · top 15,000 on PyPI
pyobjc-framework-CoreAudioProvides Python bindings to macOS's CoreAudio…
permissive · top 15,000 on PyPI
pyobjc-framework-CoreMLProvides Python bindings to Apple's CoreML…
permissive · top 5,000 on PyPI
pyobjc-framework-NetworkProvides Python bindings to Apple's Network…
permissive · top 15,000 on PyPI
pyobjc-framework-MailKitProvides Python bindings to macOS's MailKit…
permissive · top 15,000 on PyPI
pyobjc-framework-ScreenSaverProvides Python bindings to macOS's ScreenSaver…
permissive · top 15,000 on PyPI
pyobjc-framework-SharedWithYouCoreProvides Python bindings for Apple's…
permissive · top 15,000 on PyPI