惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - Franky
有赞技术团队
有赞技术团队
宝玉的分享
宝玉的分享
雷峰网
雷峰网
Hugging Face - Blog
Hugging Face - Blog
V
V2EX
大猫的无限游戏
大猫的无限游戏
博客园 - 司徒正美
D
Docker
T
The Blog of Author Tim Ferriss
罗磊的独立博客
博客园 - 叶小钗
酷 壳 – CoolShell
酷 壳 – CoolShell
Blog — PlanetScale
Blog — PlanetScale
月光博客
月光博客
J
Java Code Geeks
Jina AI
Jina AI
博客园 - 【当耐特】
C
Check Point Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
腾讯CDC
Last Week in AI
Last Week in AI
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
V
Visual Studio Blog

Martin Owens activity

Martin Owens deleted project branch average-color-divide at Inkscape / inkscape Fix divide-by-zero crash when using calligraphy tool (!7923) · Merge requests · Inkscape / inkscape · GitLab Add selection file to bypass Windows command length limits (correction) (865df7a5) · Commits · Inkscape / inkscape · GitLab Draft: Fix AppImage crashing during save on older distros (!7922) · Merge requests · Inkscape / inkscape · GitLab e71fa7f8e0858aab87b7fc0814a30a8c88da9b43 to fe225a6b9e1042c7221d95173be22a02b3725337 · Martin Owens / inkscape · GitLab 403 Forbidden on Inkscape web server (#693) · Issues · Inkscape / inkscape-web · GitLab 403 Forbidden on Inkscape web server (#13509) · Issues · Inkscape / Inbox · GitLab Add selection file to bypass Windows command length limits (correction) (!7917) · 合并请求 · Inkscape / inkscape · GitLab Non-vertical axonometric axis implementation (!7912) · Merge requests · Inkscape / inkscape · GitLab Update split mode on tab switch (!7915) · Merge requests · Inkscape / inkscape · GitLab inset/offset as app functions so they can be used from CLI (!7914) · Merge requests · Inkscape / inkscape · GitLab Performace regresion in last month (#5879) · Issues · Inkscape / inkscape · GitLab [Regression] Right-aligned text has a new gap in 1.4.4 (#6130) · Issues · Inkscape / inkscape · GitLab [Regression] Right-aligned text has a new gap in 1.4.4 (#13498) · Issues · Inkscape / Inbox · GitLab c503804e014994d611de1b225bee8158c06448a8 to a4588d8ead1e7049b90c5a126962746ed286ab17 · Inkscape / inkscape-web · GitLab Validate the extensions of signature file uploads (a4588d8e) · 提交 · Inkscape / inkscape-web · GitLab Allow color conversions using static arrays instead of just vectors (e71fa7f8) · 提交 · Martin Owens / inkscape · GitLab Speed up ungroup on thousands of items (!7908) · Merge requests · Inkscape / inkscape · GitLab Incorrect handling of FontMatrix and transformation matrices with internal PDF import (#4845) · Issues · Inkscape / inkscape · GitLab Handling edge case of negative fonts in PDF (59040229) · 提交 · Inkscape / inkscape · GitLab Handling edge case of negative fonts in PDF (!7911) · 合并请求 · Inkscape / inkscape · GitLab Allow color conversions using static arrays instead of just vectors (33e65d1b) · Commits · Martin Owens / inkscape · GitLab Allow color conversions using static arrays instead of just vectors (9be5f867) · Commits · Martin Owens / inkscape · GitLab a9672ea1dff483b5b3aa8c6b5d88cd223001bef5 to 512a5e57602ac52e1d35782a7dcebae04262b2b8 · Martin Owens / inkscape · GitLab Add selection file to bypass Windows command length limits (!7905) · 合并请求 · Inkscape / inkscape · GitLab Revert Pango label changes (1.4.x) (!7907) · 合并请求 · Inkscape / inkscape · GitLab Crash on selecting a `<text>` object without a `<tspan>` inside (#5462) · Issues · Inkscape / inkscape · GitLab Fix breakage with Ubuntu 26.04 CI (!7904) · 合并请求 · Inkscape / inkscape · GitLab c673fdd5148253276826d4eda3951daaefb82607 to 356b31383ba324396a225686613236484305533d · Martin Owens / inkscape · GitLab Revert Text tool cursor changes (1.4.x) (!7903) · 合并请求 · Inkscape / inkscape · GitLab
Color Spaces in Fill and Stroke Dialog (#341) · Issues · ...
Martin Owens · 2026-05-21 · via Martin Owens activity
# Brief Inkscape's new CMYK, CMS and CSS Color Module 4/5 support requires more user control over color SPACE selection. This process can be quite complicated and also unnecessary for the majority of users so a new design that allows for fine control must also be unobtrusive. The control involves two main options. `Color Format` and `Color Interpolation`. ## Color Format Format changes how the color selected in any of the color pickers will be saved in the XML. For RGB/HSL where the gamuts are approximately the same and conversions back and forth are faithful, this isn't useful except in the case that it preserves CSS Color Module SVG data and allows the creation of SVGs which could be further used outside of inkscape for animation and scripting. The main use case for color format is using CMYK and other channel based systems of color which do not map back and forth directly. For example in sRGB `device-cmyk(0 0 0 100)` is exactly the same as `device-cmyk(100 100 100 0)` but is absolutely ISNT the same when it comes to what the printer should do. Thus converting and keeping CMYK data in RGB is not really possible. The Color format is an inkscape specific / editableSVG attribute which is inherited from the root. Each group can specify it's own color format value, though it is expected that a user would set a single global setting, this will be important for importing and mixing RGB images into CMYK documents. Such mixing is entirely supported by PDF and other print processes. The color format by default will be the default icc profile, or sRGB. ## Color Interpolation Interpolation changes how an object is RENDERED. This process only changes how gradients and blend modes work and is a standard part of the SVG specification which is inherited just like the color format above. Note: There is a separate filter-color-interpolation attribute which is only used to control the color spaces for various filters. This UX ticket will ignore that functionality but a future ticket will have to consider it. ## Legacy UX There are some considerations regarding existing widgets and functionality. The difference between the color picker in the `Object Properties` @mkov and the one in `Fill and Stroke` must be harmonized. There is no point to having two different interfaces for the same thing. The `Recolor Selection` UX is currently a bit of a mess, there are two buttons on Fill and also on Stroke which do exactly the same thing. This should be simplified. Though it might be out of scope for this ticket depending on the final design. Options for `Color Managed Mode` and `Out of Gamut` warnings need to be moved. They do not make sense any more. The Camilion functionality should be moved to the extensions menu, object menu, or `Recolor Selection` design above. # Design Currently I think there ort to be four tabs in the `Fill and Stroke` dialog. 1. Fill -> No change, The Fill color (and `fill-rule`) 2. Stroke -> Renamed from `Stroke paint` 3. Style -> Renamed from `Stroke style`, rationality is that this tab actually contains markers as well as things like stroke style options. 4. Color -> New tab for setting/seeing color format, color interpolation and perhaps for doing Recolor Selection too. Maybe `Advanced` maybe somethhing else. There is an alternative design which puts the color selections into the same global place as the Blend mode. But it's equally useful to consider moving the blend mode into a new Color tab. The new Color tab should show two dropdown boxes for the two main color space options. And it should show an enable/disable checkbox on both. When disabled the dropdown text is set to the value inherited from the object's parent. When enabled the user can set a custom color space for this object for interpolation and format. Because these values are inherited, by default a workflow that involves creating a CMYK document would not have to change these in order for the color format and interpolation to be set to CMYK already. They would be inherited from the root SVG node which would have been set by the document properties when setting the icc profile for the CMYK document.