[Added] Add/Remove Border (Margins): More fill options + Remember ALL prev values + better UI layout

Want to submit a new feature, an enhancement ? Do it here !
Post Reply
porg
Posts: 554
Joined: Tue Apr 05, 2022 1:04 pm
Country: Austria

[Added] Add/Remove Border (Margins): More fill options + Remember ALL prev values + better UI layout

Post by porg »

GraphicConverter Add or remove Borders or Margin.png
GraphicConverter Add or remove Borders or Margin.png (182.03 KiB) Viewed 15458 times


Update 2022-11-02: I changed the layout to have the main setting, the margins as the top section, and the filling section which is a consequence (if canvas expands) to the bottom.
Last edited by porg on Tue Nov 29, 2022 11:32 am, edited 1 time in total.
porg
Posts: 554
Joined: Tue Apr 05, 2022 1:04 pm
Country: Austria

Re: Add/Remove Border (Margins): More fill options + Remember ALL prev values + better UI layout

Post by porg »

@forum_adm: I very much would appreciate a response on this proposal.
User avatar
forum_adm
Site Admin
Posts: 1814
Joined: Fri Dec 23, 2016 9:41 am
Location: Germany
Country: Germany
Contact:

Re: Add/Remove Border (Margins): More fill options + Remember ALL prev values + better UI layout

Post by forum_adm »

I add that to the ToDo list for the next year.
porg
Posts: 554
Joined: Tue Apr 05, 2022 1:04 pm
Country: Austria

Re: Add/Remove Border (Margins): More fill options + Remember ALL prev values + better UI layout

Post by porg »

Thanks! Looking forward to it.

And when you find the time to implement it, I kindly ask you to have a close look at the design proposal: Mockup + explanations in the bubbles.
So that we ideally have this working 90-100% in implementation nr1 and not need too many rounds of QA. Thanks!
User avatar
forum_adm
Site Admin
Posts: 1814
Joined: Fri Dec 23, 2016 9:41 am
Location: Germany
Country: Germany
Contact:

Re: Add/Remove Border (Margins): More fill options + Remember ALL prev values + better UI layout

Post by forum_adm »

I updated the dialog in build 6153.
Screenshot 2023-06-16 at 09.00.43.jpg
Screenshot 2023-06-16 at 09.00.43.jpg (108.04 KiB) Viewed 15339 times
porg
Posts: 554
Joined: Tue Apr 05, 2022 1:04 pm
Country: Austria

Re: [Added] Add/Remove Border (Margins): More fill options + Remember ALL prev values + better UI layout

Post by porg »

Tested in GC 12.0.4 (6160) and all functions work as expected.

1) ✅ This works amazingly well!

2) ℹ️ Hint for the adjacent pixel line: If you have unclean edges it can help to:
a) First create a "clean cut" by removing -1px or -2px on all sides
b) Only then grow towards the outside, e.g. add 100px to all sides.

3) Quality wise this feature now is certainly "good enough" and very convenient!

💡 If you want to bring it to "ultra convenience" level I have some more ideas left:

a) "Set for all" currently sets the top value for all 4 sides.
- But what if you want the bottom or left or right value for all?
- Improvement: Create checkbox "☑️ Sync values"
- And then wherever you type all other sides get this value.

b) Further label plus action buttons "Mirror/rotate values: [⟲] [ ↕︎ ] [ ↔︎ ] [ ⟳ ]
- For UI operations this is more convenient than moving the values yourself manually.
- But really helpful this would be for scripting.
- In the first round of processing being only on the top and bottom.
- Then perform some other step
- Then in a second round perform add/remove margin with the values flipped or swapped or rotated (whatever be needed).

c) If you to offer an extra possibility for image processing / aesthetics:

c1) Currently the algorithm copies the adjecent lines on the 1st side (e.g. left) 1st-side-pixel-amount wide, then the 2nd side for 2nd-side-pixels wide, etc. This creates rectangles of their own color on all 4 corners.

c2) Maybe you could offer a "spiral" like algorithm:

Run 1st side with the 1st adjacent pixel line,
Run 2nd side with the 1st adjacent pixel line,
Run 3rd side with the 1st adjacent pixel line,
Run 4th side with the 1st adjacent pixel line,
Run 1st side with the 2nd adjacent pixel line,
Run 2nd side with the 2nd adjacent pixel line,
...

If the sides don't use an equal amount of pixels to be added, I think this will still work.
A side which has exhausted its pixel line count is skipped in the loop, and the next side taken.
When all sides have run out of remaining pixel lines to do, the loop is finished.

Alternatively to a spiral algorithm "top, right, bottom, left, …" one could also set "top, bottom, right, left …" to grow outwards in a diagonal matter. I'm not sure if they produce the same visual outcome. I think it can be different, it depends mainly on the 3 pixels of each edge.

If you extend e.g. 10px on all 4 sides, the 4 edges will have a diagonal line from the image center towards the new extended edge. So 45° in a square, and another angle in a rectangle of a different aspect ratio.

As written, this is feature complete. My proposals are just for a luxory UX and for aesthetic image processing experimentation.
Post Reply