5

I'm trying to create a bordered, transparent circle.

I created a circle with the ellipsis tool, then Select->Border, then Edit->Fill with FG Color. The result is a terribly jagged border.

enter image description here

I tried adding a gaussian blur, but it looks terrible, looks like the image is popping up. It just seems like very poor quality, how can I increase the number of pixels being used for the color around the edes?

I mean look at the "so jagged" text, the lines are so smooth for the letters.

  • Have you checked to see what pixel depth you're working to? Could be an 8 bit depth. – Paul Apr 5 '16 at 9:02
  • If the circle you made first didn't look like this, I would have to guess it's something about how you make the selection, that causes this. Another thought I had was, why would you make a circle, take a selection from it and then make another circle? Why not just either use the first circle or duplicate it to create the second one, if you need to keep the first one? – Joonas Apr 5 '16 at 10:34
  • @Paul I don't know what that is. It says I'm using 255 colors in the mode. I installed Gimp, I created a new project 250x250, 72dpi, rgb. I created the border and that's it. Are there settings I should change? This is basically what the default settings were when I installed. – John Smith Apr 5 '16 at 10:48
  • @joonas The first circle has jagged lines. I clicked ellipse select tool and made a circle, the circle selection has jagged lines. When I fill the circle in, it has jagged lines, so it's not just the border, it's the circle (ellipse select tool) – John Smith Apr 5 '16 at 10:55
  • Ok, so it seems like Gimp doesn't have a tool that draws an ellipse, it's just the ellipse selection tool. I had no idea (I don't use Gimp at all). Anyways, I would guess that your Ellipse selection tool doesn't have the option Antialiasing checked. – Joonas Apr 5 '16 at 11:22
1

Colour depth is the number of bits/bytes used to display a colour. Presently you're using an 8-bit depth, giving you 256 colours (0-255). This is an indexed colour approach, the different values (from 0-255) are paletted, meaning that the each of the 256 values points to a colour representation stored in the header of the graphics document you're working on.

There are a number of other formats which will allow you to produce the required smooth edges. Try changing your image format to 24 or 32-bit depth.

In GIMP you can do this like so...

Change to RGB

You'll then need to tick the Feather option in the Select Border dialog box.

Update...

Once you have an RGB format document you can turn anti-aliasing on or off for the selected area:

Toolbox showing anti-aliasing setting for selection tool

It's also possible, from here, to create your oval using guides and remove the centre of your selection.

Update 2...

I've played a bit more with this, and it is possible to create a nicely antialiased circle or oval by following these steps...

  1. Create a new layer.
  2. Add guides to the shape to reflect the width and height of the outside and inside of the shape...

Move guides into position

  1. Select the oval selection tool and select the outside of the shape...

Select the outside

  1. Deselect the active selection by clicking outside of the selected area somewhere.
  2. Change the selection mode of the oval selection tool to *Subtract from current selection...

Subtract mode

  1. Select the inside of your oval...

Select inside

  1. Pick the brush or fill tool and paint the inside of the selection...

Fill in the selection

  1. Take a look at your newly anti-aliased shape...

Anti-aliased

  • @JohnSmith: I've updated the answer; this may help. – Paul Apr 7 '16 at 8:16
2

Different to selecting the Gimp Select > Border tool does not allow for anti-aliasing. This leads to hard to overcome aliasing artifacts on working with this selection.

Feathering the selection border does not lead to the desired result.

The only way I know of on how to overcome this is to make the selection on an up-scaled version of our image.

  1. Upscale your source to e.g. 400%
  2. Make the selection, then create the selection border
  3. Downscale the image to original size (e.g. 25%)
  4. Then fill the selection.

enter image description here
Left: border selection at 100% size Right: selection at 400% size

Note that in the example above I did not fill the border prior to down-scaling. I only scaled the selection which then will have appropriate anti-aliasing. The image was in RGB, not indexed mode.

  • works perfectly – shoe Jul 21 '17 at 2:10
2

There's a very simple way to do this in GIMP 2.8. It might have been missing from earlier versions of the software, so because this question is quite old, I think it's time for an update.

Create a circular selection, click Select > To Path

In the paths palette hit the Paint Along Path icon

Apply a stroke to the path, for perfect antialiasing every time.

enter image description here

0

Another few solutions:

Subtraction of selection

  • Create circle selection which is the out edge of the line
  • Still with the Ellipse select tool, Ctrl-click (or click the "Subtract" mode tin the tool option) and make a selection for the inner edge. The inner selection subtracted from the outer one leaves a ring selection.
  • Bucket-fill the ring

enter image description here

To make things easier:

  • add two guides (H & V) that cross at the center of the circle
  • for both selections click on the center and start dragging from there (or use the Expand from center and Fixed aspect ratio options).

This methods work only on circles (or squares).

More general solution

For a random selection shape, the quickest solution is Edit>Stroke selection and pick the "Line" mode. However, the result doesn't always look clean, so most people instead you can use Bill Kerr's solution:

  • Select>To path,
  • Select>None,
  • Edit>Stroke path.

If you omit Select>None, the selection chops off the outer part of the stroke, so the outer edge of the line is along the selection (and you have to specify a line width which is twice what you want). With Select>None the line straddles the edge of the selection.

Using Filters>Render>Gfig

This is the built-in, solution, but the result isn't very clean

Using a path directly

There are scripts to generate paths for various geometric shapes that you cannot easily obtain from a selection (polygons...). Once you have the path you stroke it.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.