Jump to content
You must now use your email address to sign in [click for more info] ×

Why does including an arrow tip on strokes increase exported size?


Recommended Posts

I am having an issue when trying to export an icon for a simple button. I have a 55px by 55px box with a small circle inside converted to curves and split giving this shape:

1.png.1d7d634d5e3ac3e1b94f6ebb299821fa.png

For some reason if I add just an arrow end to the stroke to complete the shape, it somehow goes over the 55px when I go to export but the shape still appears well within the confines of the box:

2.png.05df3d2d504bac000dbc614635c05076.png

As you can see from the screenshot there appears to be 40px difference just by adding the arrow tip.  Is there a way to fix this? I suppose I could just recreate the shape itself and not use the built-in arrow, or export and remove the buffer around my icon but this is a bit tedious as I have quite a few of these to do in various shapes and I need to be able to export within a specific size.

Link to comment
Share on other sites

Is the first image (the blue arch with a big white border) really 55x55px?
Or is 55x55px just a blue arc without a white border?

Affinity Store (MSI/EXE): Affinity Suite (ADe, APh, APu) 2.4.0.2301
Dell OptiPlex 7060, i5-8500 3.00 GHz, 16 GB, Intel UHD Graphics 630, Dell P2417H 1920 x 1080, Windows 11 Pro, Version 23H2, Build 22631.3155.
Dell Latitude E5570, i5-6440HQ 2.60 GHz, 8 GB, Intel HD Graphics 530, 1920 x 1080, Windows 11 Pro, Version 23H2, Build 22631.3155.
Intel NUC5PGYH, Pentium N3700 2.40 GHz, 8 GB, Intel HD Graphics, EIZO EV2456 1920 x 1200, Windows 10 Pro, Version 21H1, Build 19043.2130.

Link to comment
Share on other sites

The blue box around the arch is 55px, its two shapes, one box 55px and the arch inside.  They are combined as a group.  I am attempting to export the group.  but for some reason the size changes when I add the arrow to the end of my stroke on the arch (well its a circle converted to curves then the curve is broken)

Link to comment
Share on other sites

Can you share the .afdesign document with us? (Or other .af.... document, depending on the application you're using.)

-- Walt
Designer, Photo, and Publisher V1 and V2 at latest retail and beta releases
PC:
    Desktop:  Windows 11 Pro, version 23H2, 64GB memory, AMD Ryzen 9 5900 12-Core @ 3.00 GHz, NVIDIA GeForce RTX 3090 

    Laptop:  Windows 11 Pro, version 23H2, 32GB memory, Intel Core i7-10750H @ 2.60GHz, Intel UHD Graphics Comet Lake GT2 and NVIDIA GeForce RTX 3070 Laptop GPU.
iPad:  iPad Pro M1, 12.9": iPadOS 17.4.1, Apple Pencil 2, Magic Keyboard 
Mac:  2023 M2 MacBook Air 15", 16GB memory, macOS Sonoma 14.4.1

Link to comment
Share on other sites

I'm unsure why when the arrow is added the export size shows as 95 px x 95 px, that doesn't make a great deal of sense. One way around it is to select the circle with the arrow and then select Layer > Expand Stroke. This will then allow the icon to be exported at 55 px x 55 px...

This is possibly a bug but unsure since selecting the group in the layers panel clearly show the size to be 55 px x 55 px ...

Affinity Designer 2.4.1.2344 | Affinity Photo 2.4.1.2344 | Affinity Publisher 2.4.1.2344
Affinity Designer 1.7.3 | Affinity Photo 1.7.3 | Affinity Publisher 1.10.8
MacBook Pro 16GB, macOS Monterey 12.6.8, Magic Mouse

Link to comment
Share on other sites

First perform an expand stroke (Layer > Expand Stroke) on the circle-with-arrow curve inside the group, then retry to export the group selection only!

example_expand_stroke.png.405e69adb3dcbea6f3512540b5db8222.png 55 x 55 px

☛ Affinity Designer 1.10.8 ◆ Affinity Photo 1.10.8 ◆ Affinity Publisher 1.10.8 ◆ OSX El Capitan
☛ Affinity V2.3 apps ◆ MacOS Sonoma 14.2 ◆ iPad OS 17.2

Link to comment
Share on other sites

Expanding the stroke to a curve did resolve my problem, still rather strange as to why it was adding those extra 40 pixels to my export though.  Anyway, this does resolve my issue so kudos to you both. 😁

Edited by Kajih
typo
Link to comment
Share on other sites

43 minutes ago, Kajih said:

...still rather strange as to why it was adding those extra 40 pixels to my export though

Hard to tell, though it was always visable in the layers panel when looking on the layer thumb icons. The first group one (the one without the arrow) was obviously bigger shown as your second group one (with the arrow), also their bounding selection box sizes do differ here obviously in size! Though from the transform panel it's size wise not obvious visable. - After performing an expand stroke on the second group circle-arrow-curve, it's layer thumb icon enhances to the right bigger size too, which indicates some sort of performed scaling up then.

Thus I believe the whole has initially to do with some internal wrong curve boundaries scaling operation for your circle-arrow-curve and then on export some additional boundaries scaling is performed which yields to the greater calculated +40 size dimensions.

However, I somehow doubt that this is overall the to be expected behavior!

 

☛ Affinity Designer 1.10.8 ◆ Affinity Photo 1.10.8 ◆ Affinity Publisher 1.10.8 ◆ OSX El Capitan
☛ Affinity V2.3 apps ◆ MacOS Sonoma 14.2 ◆ iPad OS 17.2

Link to comment
Share on other sites

4 hours ago, Hangman said:

One way around it is to select the circle with the arrow and then select Layer > Expand Stroke.

... or Rasterize layer with arrow.

Affinity Store (MSI/EXE): Affinity Suite (ADe, APh, APu) 2.4.0.2301
Dell OptiPlex 7060, i5-8500 3.00 GHz, 16 GB, Intel UHD Graphics 630, Dell P2417H 1920 x 1080, Windows 11 Pro, Version 23H2, Build 22631.3155.
Dell Latitude E5570, i5-6440HQ 2.60 GHz, 8 GB, Intel HD Graphics 530, 1920 x 1080, Windows 11 Pro, Version 23H2, Build 22631.3155.
Intel NUC5PGYH, Pentium N3700 2.40 GHz, 8 GB, Intel HD Graphics, EIZO EV2456 1920 x 1200, Windows 10 Pro, Version 21H1, Build 19043.2130.

Link to comment
Share on other sites

5 hours ago, Kajih said:

Expanding the stroke to a curve ...

Same happens with a w/h=55 px Donut shape here instead, it's selection bounding box looks like the one from the curve layer and the transform panel also shows w/h=55 x 55 px. But the Donut layer thumb icon shows it's smaller up than the one from the Curve layer, in turn it results on export as selection as w/h=99 px.

The w/h=55 px Curve layer (created from the Donut shape) here in contrast, shows a bigger layer thumb icon and on export as selection as w/h=56 px (so nearly what has more to be expected).

donut0.jpg.5a16097243fcf35728acc88b2828b923.jpg

☛ Affinity Designer 1.10.8 ◆ Affinity Photo 1.10.8 ◆ Affinity Publisher 1.10.8 ◆ OSX El Capitan
☛ Affinity V2.3 apps ◆ MacOS Sonoma 14.2 ◆ iPad OS 17.2

Link to comment
Share on other sites

13 hours ago, Kajih said:

Expanding the stroke to a curve did resolve my problem, still rather strange as to why it was adding those extra 40 pixels to my export though.

The issue in part seems to relate to stroke alignment... compare the document bounding boxes when exporting a W: 50 px, H: 50 px donut with arrow and stroke alignment, Centred, Outside and Inside... In addition, when using a curve with an Inside Stroke, as soon as the Curve is broken it reverts to a Centred Stroke and as such it's exported document bounding box is incorrect.

Stroke Alignment Centred - Document Bounding Box 135px

arrow_centre.thumb.jpg.c9610396d90e2463301ee24ba06ef428.jpg

 

Stroke Alignment Outside - Document Bounding Box 135px

arrow_outside.thumb.jpg.eb01f6c172a26615ebd3e94a12128543.jpg

 

Stroke Alignment Inside - Document Bounding Box 50px

arrow_inside.thumb.jpg.362e2c8da220918321f6dffbb51b0a66.jpg

Affinity Designer 2.4.1.2344 | Affinity Photo 2.4.1.2344 | Affinity Publisher 2.4.1.2344
Affinity Designer 1.7.3 | Affinity Photo 1.7.3 | Affinity Publisher 1.10.8
MacBook Pro 16GB, macOS Monterey 12.6.8, Magic Mouse

Link to comment
Share on other sites

if you want a circle then you can have a square export, if you want an circle with an arrow head you cannot get a square output because the arrow head will have to be outside the radius of the circle. I guess you could have the arrow head poking out into the corner area of the bounding box of the circle and then rotate the exported square.

Mac Pro (Late 2013) Mac OS 12.7.4 
Affinity Designer 2.4.0 | Affinity Photo 2.4.0 | Affinity Publisher 2.4.0 | Beta versions as they appear.

I have never mastered color management, period, so I cannot help with that.

Link to comment
Share on other sites

21 hours ago, Kajih said:

As you can see from the screenshot there appears to be 40px difference just by adding the arrow tip. 

19 hours ago, Hangman said:

This is possibly a bug but unsure since selecting the group in the layers panel clearly show the size to be 55 px x 55 px ...

Aside the arrow heads being calculated by Affinity as separate space on Export, it appears to be a general not quite clear how the bounding box for Export gets calculated – which can make it difficult to choose the wanted output dimensions for such objects without adding effectively unused space. For instance for a Blur Effect there are clear numbers available … but the app calculates a lordly additional space on export.

100 object + 20 effect –> 160 export (+40)
100 object + 40 effect –> 220 export (+80)

2077222382_boundingboxUIvs.Export.thumb.jpg.b0cf73280da4724b90006c63c81c6a3a.jpg

1389720675_boundingboxUIvs.Exportb.thumb.jpg.0a28fd770aadd9a99a45bada06e05494.jpg

macOS 10.14.6 | MacBookPro Retina 15" | Eizo 27" | Affinity V1

Link to comment
Share on other sites

Of course another approach to overcome the issue is to simply nest or clip the circle with arrow in it's own empty bounding box. This effectively overrides the circle with arrow's own incorrect bounding box...

nested_example.afdesign

Affinity Designer 2.4.1.2344 | Affinity Photo 2.4.1.2344 | Affinity Publisher 2.4.1.2344
Affinity Designer 1.7.3 | Affinity Photo 1.7.3 | Affinity Publisher 1.10.8
MacBook Pro 16GB, macOS Monterey 12.6.8, Magic Mouse

Link to comment
Share on other sites

2 minutes ago, Hangman said:

simply nest or clip the circle with arrow in it's own empty bounding box

... if "Selection Area" gets exported than it works even unclipped: just create anywhere in the layer hierarchy a rectangle in the wanted size, while fill or stroke is not required for this object.

macOS 10.14.6 | MacBookPro Retina 15" | Eizo 27" | Affinity V1

Link to comment
Share on other sites

@thomaso, I'm not sure I follow, surely this is what the current 55 px x 55 px border is already doing which when the "Selection Area" is exported results in a 95 px x 95 px export, what am I not understanding...

Affinity Designer 2.4.1.2344 | Affinity Photo 2.4.1.2344 | Affinity Publisher 2.4.1.2344
Affinity Designer 1.7.3 | Affinity Photo 1.7.3 | Affinity Publisher 1.10.8
MacBook Pro 16GB, macOS Monterey 12.6.8, Magic Mouse

Link to comment
Share on other sites

@Hangman, the difference might be the discussed "wrong" bounding box caused by the arrow head. An additional rectangle doesn't have this – nor does it even know about its existence in the document – instead it exports its specified area size only.

For instance a rectangle 100 x 30 with the blurred ellipse example, as layer between both ellipses:  708133993_v1105area100x30.jpg.db3f2c3502f64b268f94563e91071f10.jpg  v1105 area 100x30.pdf

macOS 10.14.6 | MacBookPro Retina 15" | Eizo 27" | Affinity V1

Link to comment
Share on other sites

@thomaso, Apologies, I'm still not following... Taking the circle with arrow example, even if the document itself is 55 px x 55 px, then whether exported using "Whole Document" or "Selection Area" as an svg file, the svg's bounding box is 95 px x 95 px in both cases...

Exporting the same file as a png results in the "Whole Document" version being exported at 55 px x 55 px but the "Selection Area" version is still 95 px x 95 px"...

Are you able to demonstrate using the circle with arrow file so I can understand what you are meaning here, I'm clearly missing the point...

Affinity Designer 2.4.1.2344 | Affinity Photo 2.4.1.2344 | Affinity Publisher 2.4.1.2344
Affinity Designer 1.7.3 | Affinity Photo 1.7.3 | Affinity Publisher 1.10.8
MacBook Pro 16GB, macOS Monterey 12.6.8, Magic Mouse

Link to comment
Share on other sites

If I understand the bounding boxes in the OP's initial screenshots correctly the wanted rectangle would be 55 x55 px.

Accordingly I set the separate rectangle for export "Selection Area" to get an exported558716063_selectionarea55pxrect.png.809061bbfd98bdda060cf79823228585.png.png with 55px width. No clipping required in the layers panel.

559294944_selectionarea55pxrect.thumb.jpg.f1e41dac70d7fae02e9be9d17e4a8f26.jpg

macOS 10.14.6 | MacBookPro Retina 15" | Eizo 27" | Affinity V1

Link to comment
Share on other sites

With you now, and yes, that makes perfect sense, I hadn't really thought of doing it that way, thanks for clarifying...

Affinity Designer 2.4.1.2344 | Affinity Photo 2.4.1.2344 | Affinity Publisher 2.4.1.2344
Affinity Designer 1.7.3 | Affinity Photo 1.7.3 | Affinity Publisher 1.10.8
MacBook Pro 16GB, macOS Monterey 12.6.8, Magic Mouse

Link to comment
Share on other sites

… nevertheless a cumbersome workaround because the object of interest, the circular curve, needs to get a different size set because its bounding box isn't helpful here.
(while 'stroke inside' doesn't work with a single open curve even if it could visually appear useful for shapes like a circle)

2094895727_selectionarea55pxrectarrowsetup.jpg.e1862e8611d18da383c0f033635e3da4.jpg

macOS 10.14.6 | MacBookPro Retina 15" | Eizo 27" | Affinity V1

Link to comment
Share on other sites

The overall problem with strokes + arrows, for the transform panel vs the export panel and their shown sizes can be seen best when using just a line +/- arrow (...note also here that the round and square caps extend visually beyond the bounding box endpoints, which is a common behavior for graphics primitives with such caps settings) ...

 

The transform panel here doesn't take the added arrows size wise into account, which can be very irritating!

☛ Affinity Designer 1.10.8 ◆ Affinity Photo 1.10.8 ◆ Affinity Publisher 1.10.8 ◆ OSX El Capitan
☛ Affinity V2.3 apps ◆ MacOS Sonoma 14.2 ◆ iPad OS 17.2

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use | Privacy Policy | Guidelines | We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.