Thanks for yout response ! The process you describe is what I did to produce the graphic you see in the pictureġ) find a way to keep your filter's window open while performing multiple strokes.Ģ) in the long run, assuming I attain competency in creating a plug-in, and can evaluate the feasibility of the idea, I'd like to run some kind of batch multi-stroke operation based on parameters I supply. Working outwards, stroke each color with the desired width. Start with the innermost color and stroke (Effects > Object > Outline Object) the innermost color with the width of that color, so 5. Press Ctrl+D to clear out any selection you might have. If you want to "stroke" an object (pixels surrounded by transparent pixels) do it this way: ![]() Working outwards, stroke each color with a width of the previous stroke minus the width of the current color (5px), so 22 for the second color. Starting with the innermost color, stroke (Effects > Selection > Outline Selection) the innermost color with a width of 27. In your example above, it might be 27 (5 px per color, and 2 for the black line) Start by calculating the width of all strokes you wish to add. PropertyBasedEffectConfigToken bParameters = new PropertyBasedEffectConfigToken(bProps) īParameters.SetPropertyValue(, Amount1) īlurEffect.SetRenderInfo(bParameters, new RenderArgs(dst), new RenderArgs(src)) īlurEffect.Render(new Rectangle ,0,1) įor (int y = rect.Top y < rect.Bottom y++)ĬolorBgra* srcPtr = src.GetPointAddressUnchecked(rect.Left, y) ĬolorBgra* dstPtr = dst.GetPointAddressUnchecked(rect.Left, y) įor (int x = rect.Left x < rect.If you want to "stroke" the selection outline (marching ants) do it this way: Propert圜ollection bProps = blurEffect.CreatePropert圜ollection() GaussianBlurEffect blurEffect = new GaussianBlurEffect() Unsafe void Render(Surface dst, Surface src, Rectangle rect) You will need CodeLab to build it into a plugin. Other than that, it is the same.įor the first time, I have decided to publish the source code. The only difference is that they will need to actually select what is to be feathered before running the effect. Those people that still want a True Feather can use my Selection Feather effect instead. Now that I have officially replace Object Feather and True Feather with Object Feather 3.0, I’m sure that some will complain that True Feather doesn’t exist any more. And, another nice thing about this effect is that it is only about 20 lines of code so it is much easier to understand and maintain. It also works on objects that are already feathered. I think that the results are far superior to Object Feather or True Feather. It uses a small blur to expand the objects like feather 1 and then applies the true blur algorithm like feather 2. It basically uses the best of both the first and second techniques blended together. The fourth feather effect, called Object Feather 3.0, is the replacement for my first two feather effects. I had been thinking of a solution for that for a long time. ![]() While I liked the third feather effect, I was never really happy with my first and second effects. People used all three of these effects depending on the need of their current situation. The effect applied was very similar to the True Feather option. Feathering was then applied following the “marching ants” of your current selection. The only trouble with this one is that you need to have selected the object you want to feather. This is by far the most accurate of my plugins and it was only 50 lines of code. This is how most other professional programs (like Corel PhotoPaint, for example) feather stuff. The third feather effect, called Selection Feather, makes the hard edges of your current selection slightly transparent. ![]() The problem of these first two (which were contained within the same effect dll) was the fact that it didn’t work well at all for cutouts that were already feathered. It was better and well liked by the users of Paint.NET.īoth of these methods required the object to be feathered be surrounded by completely transparent pixels. This was just a modification of the previous feather effect. The second, called Object Feather – True Feather, made the hard edges of cutouts slightly transparent. Plus, it was a nightmare to maintain as it was 335 lines of code. While it was nice for its time, it does produce less than perfect results. The first one, called Object Feather, used a blur to make the hard edges of cutouts blurred slightly in order to simulate an anti-alias effect. Well, let’s start with the fact that I have written 4 different versions of “feather.” So, what is different between the new version of Object Feather described in this article and the previous ones? Go download it here: BoltBait's Plugin Pack
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |