Comments (5)
This is the only change between 121 and 122, plus the removal/emulation of Typeface.MakeFrom*
, which is for the same reason - those assume a "default" font manager to get typeface matching descriptions. The added code for emulating FontMgr.Refdefault
is about 50 lines - slightly simplified from the the skia 121 or chrome 122, since we don't care about android etc. It segfaults at the moment... I 'll post it as a pull at some point, but since it has no advantage over 121, I would say we do the same as 118, not merge until we need to add something interesting, or fix some broken things since 87.
from skia-python.
@kyamagu I have a m122 that compiles, and I think I can emulate the deleted SkFontMgr::RefDefault()
, but it is copying maybe about a 100 lines from chromium more or less, and it won't be pretty. Mostly this is a fore-warning.
from skia-python.
Hmm, so you mean there won't be logic equivalent to chromium:skia/ext/font_utils.cc
in the skia codebase? I agree copying from chromium is not future-proof. Even if doing so, there should be a mechanism to pull the latest code from the chromium repository via sparse checkout or equivalent.
from skia-python.
It doesn't look like it. They have simply moved the centralized functionality of "give me a font matching a description in the current OS platform" from skia to chromium; on skia you are left with a few per-platform optionally compiled in font managers, Linux build of skia has fontconfig, Windows build of skia has directwrite, mac build of skia has coretext. It is basically skia's src/core/SkFontMgr_default.cc
or something modified to chromium's skia/ext/font_utils.cc
(chromium has skia submodule under third_party/skia
, so the bottom skia
location is for skia-interacting code within chromium).
Chromium is much larger than skia even without submodules... besides, the file expects the rest of skia to be under third_party/skia
, so it cannot be used as it is.
from skia-python.
Sure, it is okay if the copying won't cause a big maintenance effort in the future.
from skia-python.
Related Issues (20)
- Raspberry Pi 4 Support (linux 32-bit arm) HOT 8
- Newer system gets an extra skip on exit in testing HOT 2
- AttributeError: 'skia.Paint' object has no attribute 'setTextScaleX' HOT 1
- How to underline and strikethrough fonts? HOT 4
- Binding the skparagraph module
- Mac font is thicker than Linux font HOT 3
- Missing `skia.TableColorFilter.MakeARGB` equivalent in latest builds HOT 9
- deprecation of `distutils`upstream for python >= 3.12 HOT 8
- Is there a way to use skia.Surface to export high quality images? HOT 5
- Missing `getBlendMode` on `skia.Paint` objects HOT 7
- "instance = class() ; instance.initGL()" vs "instance = class.MakeGL()
- rgb r and b are working in reverse fashion... HOT 1
- rgb r and b are working in reverse fashion... HOT 1
- Improve SamplingOptions, and adding test cases HOT 7
- Identify what breaks in m122 for font(typeface("")) on mac os HOT 7
- Support for Python 3.12 HOT 2
- Build for python3.21 HOT 1
- "Shader Compilation Error" HOT 12
- python3.7 could not pip install skia-python HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from skia-python.