Stroke Options for Text

What features would you like to see in Pixelmator Pro?
User avatar

2019-12-23 22:13:48

I think I had seen a mention of this way back, but can't find it.

Why are stroke options from Classic Pixelmator not available in Pixelmator Pro?

I want to retain text font and content option, but with stroke outline options (position) that Classic always had.

I can't properly open Classic files because the text is messed up in Pro without the option.

Image Image
User avatar

2019-12-27 12:03:26

The short answer is that some technical limitation prevented this feature making it to Pixelmator Pro 1.0 and we haven't got around to re-adding it with subsequent updates. For now, the Type tool uses the native stroke feature in macOS while the original Pixelmator uses our stroke. It's definitely in our plans to fix this and a temporary workaround would be to convert text layers into shape layers, which will let you adjust the position of the stroke.
User avatar

2019-12-28 04:14:40

Thank you for explaining, Andrius. With Pixelmator Pro 2 years into production, is there any time table on fixing this? The outline feature is kind of critical. Converting to a shape sounds like a beta work-around.
User avatar

2019-12-30 18:16:19

Following up. I'm looking at the current release of Pixelmator Pro right now. I converted text to a shape so that I could add a stroke with outline. I went to Style...Add...Stroke...Instant spinning ball. I had to force-quit.

I tried restarting Pixelmator Pro...it can't even restart. The app doesn't open. Force-Quit again. Tried opening again...got a spinning ball while trying to open Pixelmator Pro.
While typing this, I'm watching what PMP is doing.
I let the ball spin. Eventually the picture opened. The stroke seems to have defaulted to 34. I just changed the outline to 15...I now have a spinning ball while the app is chugging on that operation.

About 45 seconds later, PMP has changed the outline and the ball stopped spinning. πŸ™„
User avatar

2020-01-02 14:16:53

by adamjd 2019-12-28 04:14:40 Thank you for explaining, Andrius. With Pixelmator Pro 2 years into production, is there any time table on fixing this? The outline feature is kind of critical. Converting to a shape sounds like a beta work-around.
I really don't want to make any promises about timeframes before we start working on a feature but we know this is important and it will be addressed.
by adamjd 2019-12-30 18:16:19 Following up. I'm looking at the current release of Pixelmator Pro right now. I converted text to a shape so that I could add a stroke with outline. I went to Style...Add...Stroke...Instant spinning ball. I had to force-quit.

I tried restarting Pixelmator Pro...it can't even restart. The app doesn't open. Force-Quit again. Tried opening again...got a spinning ball while trying to open Pixelmator Pro.
While typing this, I'm watching what PMP is doing.
I let the ball spin. Eventually the picture opened. The stroke seems to have defaulted to 34. I just changed the outline to 15...I now have a spinning ball while the app is chugging on that operation.

About 45 seconds later, PMP has changed the outline and the ball stopped spinning. πŸ™„
Does this happen with any font? I wasn't able to repro it, so it might be font-related. Could you try another font in another image to see if this is easily reproducible on your system?
User avatar

2020-01-03 05:47:15

Does this happen with any font? I wasn't able to repro it, so it might be font-related. Could you try another font in another image to see if this is easily reproducible on your system?
I didn't think that would be much of an impact with the font being converted to a shape (which was nice not having to do with Pixelmator Classic for all these years), but it does seem the font makes a difference...particularly dirty fonts (where there are dusty letters where the outline color bleeds through). However, things grind with clean fonts depending on the width of the stroke as well.

I just tried this again on on a 300pixel 8x11 with only white on the background. There were some frame drops in the GUI, but the processing was must faster.

I went back to my picture and tried again. Activity Monitor is showing Pixelmator Pro is showing that it's using ~680MB on a 1920x1080 72dpi image while processing and "(Not Responding)" next to the app while the ball is spinning with the dirty font. Again, absolutely NO hesitation or problem doing this in Pixelmator Classic and no need to change to a shape.

Thanx, Andrius.
User avatar

2020-01-03 11:41:45

Great, thanks for the additional details β€” I tried the Dirty Headline font in your screenshot and saw some frame drops with wide strokes but I wasn't able to get the app stop responding, so there may potentially be something more to this. Could you email us at support@pixelmator.com with more details about your Mac? We'll take a closer look.
User avatar

2020-01-09 19:58:38

I contacted the support email. I've sent over a video showing exactly what I was doing and showing that Pixelmator Pro was chugging with the outline workaround. It also showed how effortless the same function is in Pixelmator classic. I sent the file I was working on over along with the font.

The response said "I can see that’s a pretty large file. Normally, larger files require quite a lot of processing power and the speed at which Pixelmator Pro handles them is pretty much determined by the GPU capacity on a particular device."

The file is only 13.4MB and almost all of the layers are turned off! Anyway...I went one step further and tried deleting all layers except the flat background and the outline layer (using the work-around suggested above). That made the file only 5.3MB. Pixelmator Pro took just as long when I made changes to the width of the outline!

Final Cut Pro is much more processor-intensive, so I exported the 13.4MB file from PM Pro as a Photoshop file, brought it into FCPX (as a layered compound clip)…had the text layer Pixelmator Pro is chugging on animated out and a text layer create in FCPX (with a gradient, outline and same font) animate in and zoom out with opacity changes. The rendering in PRO RES took far less time than just OPENING the file Pixelmator Pro.

I don't have the insight that a developer might, but as a long-time loyal user, I don't understand how a critical function the worked flawlessly 4+ years ago in Pixelmator Classic still isn't in the "Pro" version 2 YEARS into development. I was JUST talking to a friend about a photo editing app. I've recommended Pixelmator for so many years...but I'm really at a loss at this point because PM Pro just can't handle what Pixelmator Classic always did. I don't want to suggest the old version since support may not be there!
User avatar

2020-01-10 14:11:55

Thanks for sharing the file! I've taken a look at it and I've now been able to reliably reproduce the issue. It's not related to the size of the file or the number of layers, but simply the number of complex edges/small details in certain letters in the font. Adding a stroke to some text converted to a shape with enough letters does cause this to happen. When I tried this, I think I simply used fewer letters (5 or 6, I believe) and the letters W and N seem to be particularly troublesome.

In any case, in the original Pixelmator, strokes were applied to text via a filter rather than being drawn live on the canvas. Of course, the final effect was more or less the same, but this is how it worked from a technological standpoint. This would actually cause some other issues that you didn't come across but other users did so, for Pixelmator Pro, we decided to use a more reliable (but in certain cases slower) system. Incidentally, if you converted some text with the Dirty Headline font to a shape and applied a stroke to it in the original Pixelmator, you'd see exactly the same issue as in Pixelmator Pro as the implementation with shapes there is the same.

The reason why the Stroke feature is slow with layers like this is that we've tried to maximize its quality, making sure its as smooth and accurate as possible. This works well with shape layers that have contours of simple-to-medium complexity but with contours like in the Dirty Headline font, a very large number of calculations need to be made, slowing things down significantly. This is true for the original Pixelmator, too, but with text, the alternative implementation did speed things up at the expense of some other issues.

With all that said, in the file you shared, converting the text to pixels rather than a shape speeds things up significantly. It's still not quick by any means, but the file opens in a couple of seconds on my MacBook, rather than the minute or two the other file would take. I've shared that file with you via email. So my tip for the future, until this is fixed, would be to convert layers into pixels rather than shapes.

Finally, I don't want to downplay the performance issue β€” it really is important and should be fixed β€” but the stroke feature, on the whole, works faster and better in Pixelmator Pro with regular shapes and image layers. With text, there are definitely some issues that need to be addressed (adding the ability to adjust position is super important). In addition, performance, in general, is much better in Pixelmator Pro across the entire app and almost every existing feature has been improved in some way and there are lots of great new ones, too. As for why we haven't addressed it in the two years that Pixelmator Pro has been out: there simply weren't too many reports about this and other, more commonly reported issues, took precedence. However, as I mentioned, we've now reproduced this bug and it isn't a case of the file being too large, it's an issue with the stroke feature and complex contours. I've spoken with the devs about this and we'll be looking into ways we can fix it in upcoming updates. Apologies for the inconvenience in the meantime and sorry for taking a little longer than we should have to get to the bottom of it!
User avatar

2020-01-13 08:19:29

Thank you VERY much for the detailed explanation, Andrius. I'm glad you were able to reproduce the issues on your end. You certainly clarified quite a bit here. I'm very surprised to hear that there are few people complaining about the outline position option being unavailable on text. I use outside outlines on almost every project.

I'll go with convert-to-pixel for now to speed up the process.
User avatar

2020-01-13 14:00:50

by adamjd 2020-01-13 08:19:29 I'm very surprised to hear that there are few people complaining about the outline position option being unavailable on text. I use outside outlines on almost every project.
You're by no means the first to notice this, but when Pixelmator Pro first came out, there were quite a few things (small and large) that were more important β€” certain tools, features, effects that are probably too numerous to mention. Because this had a workaround, it wasn't a top priority but it should get its turn quite soon now.
User avatar

2020-03-16 21:53:42

AHHHH! SO GREAT to see the outline feature finally working natively (without converting) on TEXT!

Here's what I'm seeing with the particular font I'm using. When I add the outline to the TEXT, I'm getting odd spikes. When I convert the same text to PIXELS, I don't get the spikes. In both instances, I'm using "Outside" outline. Seems to be a bug of some kind. Very happy that it's being implemented! Thank you for your work on this.

Image
Image
User avatar

2020-03-17 11:59:44

So this is a consequence of us using the native Apple stroke implementation for text β€” you should see the same bug with these fonts in apps like TextEdit and Pages (when turning on the Outline option. It only happens with certain fonts but we'll see what we can do about it!
User avatar

2020-03-17 20:22:17

Thanks, Andrius. Interesting. I'm not able to duplicate the issue in TextEdit or Pages simply because I cannot widen the outline like I can in Pixelmator. I can see where what you're saying may happen if I could. I just ran through all of my fonts and found that the spiking is pretty much limited to dirty or hand drawn fonts.

Stay safe with all the craziness out there!
User avatar

2020-03-18 11:43:09

It's not possible to have the stroke behind text in Apple apps, but here's an example:
Image
A fix for this is in our plans (once we unify how strokes are rendered in the app) but it will take a while before we can get to it.
Thanks for the well-wishes, things are relatively calm over here but we've seen how quickly they can escalate! Hope you're all good wherever you are. :pray:
User avatar

2020-09-12 06:56:05

Hi Andrius! Hope you're safe and doing well. Just wanted to check up on this issue with outside outlining for dirty fonts. Now that we have the long awaited and SOOOOO appreciated text on a curve, it would be VERY nice to finally have the outside outlining under control without the need to convert to shape or pixels as above (and below πŸ˜ƒ). Thanks so much. ~Adam

Image
User avatar

2020-09-14 10:46:44

Hey Adam, I'm doing pretty well thanks, hope you are too! This isn't something we've been able to address just yet – still relying on the Apple stroke for this, as you can see... Honesly, I'm not sure if we'll be able to fix it in the near future, but I've pinged the team to remind them and we'll see what we can do.

EDIT: Got an answer back β€” we'll be able to look into this after the 2.0 release. :wink:
User avatar

2020-09-17 00:50:41

by Andrius 2020-09-14 10:46:44 Hey Adam, I'm doing pretty well thanks, hope you are too! This isn't something we've been able to address just yet – still relying on the Apple stroke for this, as you can see... Honesly, I'm not sure if we'll be able to fix it in the near future, but I've pinged the team to remind them and we'll see what we can do.

EDIT: Got an answer back β€” we'll be able to look into this after the 2.0 release. :wink:
Good news! Thank you so much, Andrius!
User avatar

2023-03-05 01:23:39

Hi Andrius...

With Pixelmator Pro 3.3 out and the notes about stroke improvements, I went back in to try out what I've been having issues with since the rollover from Pixelmator

I'll post something about this under the new version as well. We're now 3.5 years into Pixelmator Pro, but stroke on dirty text still doesn't work properly. For some reason, we've also lost the ability to specify "outside" on text - I think this is new to PPro 3.3. Converting to shape still causes spikes still now, years later.
EDIT: Got an answer back β€” we'll be able to look into this after the 2.0 release. πŸ˜‰
In any case, in the original Pixelmator, strokes were applied to text via a filter rather than being drawn live on the canvas.
Maybe we can get a filter option like the original has/had?

Image
User avatar

2023-03-05 16:33:00

It was interesting - about not being able to set inside/center/outside of a regular text item, but it does look good with a narrow stroke; wider strokes uglify this ugly, but unique, font.

The shaped text was "spiked" but it was almost intuitive which anchor points could be removed to eliminate the spikes making it more usable, but would be more tedious with a longer headline. (There should be some ML capability to calculate and remove these bad anchor points.)

The pixel version was good, but not as ugly as I hoped.
Image
User avatar

2023-03-05 19:31:18

Thank you so much for testing this out on your end, @mccoytest!

In. your example, I think the 2nd, stroke on the shape, gets closest to what we see in Pixelmator Classic with what @Andrius said above is due to using a
filter rather than being drawn live on the canvas.


Since we're about 4-5 years into Pixelmator Pro now and this issue has not been able to be "corrected" (and we now don't even have the option to chose "outside" for text), why not just add back the filter option that the team had created instead of having us rely on the
native Apple stroke implementation for text
Andrius accurately explained was being used above (in 2020)? I just tried your example in Pixelmator Classic below. It's a beautiful, almost analog-feeling implementation, IMO!
Image
User avatar

2023-03-05 19:54:40

Once you converted the text into shape and added a Style->Stroke Align=Outside set Corner to Round to get rid of the spikes.
User avatar

2023-03-15 05:15:26

by EllenM Once you converted the text into shape and added a Style->Stroke Align=Outside set Corner to Round to get rid of the spikes.
This is absolutely a work-around that perfectly NAILS the appearance! I really just would like this to work without the need to convert to shape (so that the text remains editable), but THANK YOU SO MUCH. The note is certainly helpful.

NOTE: PMP 3.2.3 DID have the Inside-Center-Outside options for Text (missing under 3.3), but NEITHER have the rounded option for TEXT. Still can't see why there's not a solution since Classic had it.

Image
User avatar

2023-08-24 14:46:12

Still having this issue and frustrated by it. I want to adjust the stroke width on text, while leaving the text editable.