Jump to content


  • Posts

  • Joined

  • Last visited

  • Days Won


Everything posted by evanolds

  1. Source code is available as of October 16, 2012. http://www.evanolds....dn_effects.html
  2. PDN v3.5.5 Haven't seen this one reported yet Repro steps: 1) Active the brush tool 2) Set the size to 50 (helps for visibility of the problem) 3) Expand to "More" in the colors window and set the alpha to 100 4) Change from "Normal blending" to "Overwrite" 5) Draw Result: Should those white lines be there?
  3. Posted version 3.7 which saves all images that have dimensions greater than or equal to 256 as PNGs. Please let me know if you find any problems.
  4. I think this guy gave me a donation (or someone did), so I'll look into this.
  5. http://www.evanolds.com/dl/IcoCur.dll I've re-added the option to save layers separately as individual images within one icon file. To do this, you will have to name the layers in the form #x# for example: 32x32 There are also some other improvements, most of which are just small efficiency improvements and may not be noticeable.
  6. Ok, thanks for the feedback. So my first comment I will steal from Rick: viewtopic.php?f=27&t=32826 As he says, Paint.NET really just isn't made for this. I would love it if I had access to each separate document that the user was working on and then I could save one icon-image per document, allowing the user to create exact-sized, layer-based, high quality icon images. But I don't have that ability. If I'm understanding correctly, it's the fact that there's no way to currently save different images in the same icon file that's really lacking? I think no matter what changes I made the user would have to jump through some hoops to author the type of icon files that you desire. There's really no elegant way to deal with this. I have authored a separate app that can do this but I don't want to post it here so PM me if you want it. Plus, there are already a bunch of separate apps that are better suited and the problem is not that people don't know about them but rather that they don't integrate with Paint.NET. If I went down the avenue of saving different layers as different images, I'd probably want to remove the ability to make multiple resized copies and maybe even eliminate the option to save 8-bit icons. Would people miss the "Copies to be saved" dialog if I removed it and introduced the requirement of naming your layers appropriately or perhaps having transparency to the left and bottom of your layers' images to determine the size? I would think that this would make icon editing a lot more difficult for those that don't need a finer level of control. This plug-in already violates both the loading and saving rules of PDN because it uses a custom dialog prompt for both. I didn't have a lot of compliant options for authoring this plug-in. In terms of loading and saving, I can't access multiple PDN documents because that is not supported (according to Rick). I can't have a separate app pull in the images directly from PDN (without a copy/paste or save) because there is no plan for interprocess communication mechanisms in PDN (according to Rick). For saving, I can't have an "append mode" where the user saves an icon and then saves again with the same file name and it just writes the new image, leaving the existing ones in the file, because the save code path in PDN always clears out the destination file to 0 bytes first. I've been going through the plugin code and it has a lot of older code and doesn't even compile anymore, so I'm somewhat resistant to work on it much more, but also reluctant to release the code because it's in such disarray. The danger of me updating this plug-in is that I'm likely to remove something that someone might want in order to give someone else what they want. I don't want the user to see some save prompt and say "what the heck is this" because they're looking at a bunch of different options that exist only to compensate for functionality that PDN just doesn't have. This is primarily because it would be detrimental to the average user and only benefit a small percentage of intermediate or advanced users. Glad to hear that it's easy to implement! The icon file format is simple and is outlined here: http://en.wikipedia.org/wiki/ICO_(file_format) so you could probably do that in a few days and have it for us soon . ... Alright, I have a habit of making people angry with my "subtle" sarcasm so I won't continue it, but that remark is pretty much true. The best solution for people that have very specific needs is to code up plug-ins for themselves. Such plug-ins, if not distributed, can violate any and all Paint.NET rules and can really help you get at exactly what you want to achieve. You can use reflection to find the class "EOIcoCurWriter", instantiate it, and use it to write Bitmaps to an icon file if you prefer. But please understand that it's in the interest of breaking as few rules as possible and keeping the plug-in at least somewhat easy to use that I'm deciding against these more advanced options for now.
  7. Does there currently exist, or are there plans to have, any sort of interface that allows for the development of a file-type plugin that can load or save multiple documents at once? I could sure use this for my icon loading/saving plugin
  8. Ok, version 1.7 with a fix for this has been posted. Good find, thanks.
  9. I have this code to resize a surface to a new surface: Surface fitsurf = new Surface(sz.Width, sz.Height); // "surf" is also a Surface fitsurf.FitSurface(ResamplingAlgorithm.SuperSampling, surf); It fails with an ArgumentException when surf is smaller than fitsurf, which looks as though it may be by-design. Is there an argument I can pass, or a different function I can call to work regardless of the dimensions of two surfaces?
  10. Thanks for posting this. I've found the source of the problem in a call to a PDN function. I'll ask Rick about it in the developer's forum.
  11. Posted version 1.6 What was the Octagonal/Quadrilateral reshape/matte is now broken up into two effects: ("Distort" submenu) Quadrilateral Reshape and ("Transparency" submenu) Polygonal Transparency The Polygonal Transparency effect has a configurable number of control points in the range [3, 20]. The Conditional Hue/Saturation adjustment, 3D Object, and mirror effects are still present as well. In addition to these alterations, a small bug was found and fixed that may or may not have been the cause of the plugin being blocked in the first place.
  12. I have uploaded a version with the changes I've made thus far. I've replaced the old file with the new version so everyone that downloads will be BETA testing whether they like it or not : http://www.evanolds.com/dl/EOEffects.dll I took the quadrilateral reshape/matte out of the of the oct/quad one and it's now a separate effect, but the old oct/quad one is there also. I'm curious to see if people see a crash in one of these if they also see it in the other. The 3D object effect no longer uses the ray-tracer but a software renderer that has known clipping issues, but these will only be noticeable when content is outside of the viewing frustum. So unfortunately this effect is still very much in the BETA stage. It also has to render to an off-screen surface and then copy this to the effect destination surface, which gives it a bit of "lag" between parameter adjustments and the start of rendering. Please report problems as you encounter them.
  13. I'm not sure what caused the problem since I've never been able to reproduce the problem. There was something like a DivideByZeroException in the logs Rick sent me. I have some changes that I've made and everything works fine on my machine, but then again, it was always working fine on my machine. Maybe I'll post an update later, but the same problem could just come up again for all I know.
  14. If you are considering donating (which is always appreciated ), I have a donation page that I put up today at www.evanolds.com/donate.html. This is a possibility, however this and pretty much all other options are kind of "hacks" in the sense that they're getting around the fact that Paint.NET isn't really suited for editing multiple images of different resolutions in a single document. I and several others have authored separate applications for icon editing that better serve this purpose. Now I realize that a lot of people don't want to have to download a separate utility application and they'd just like it all to be in Paint.NET. While I can't say I disagree with this, I do think that for more serious icon editing and deployment, you'll probably have to use a separate app. So I guess some questions that I'd want to ask people are: 1) Are you aware of the numerous other free applications that do icon/cursor editing? 2) If so and you're not using them, why is that? Is it just because you do the editing in PDN and don't want to do the extra step of saving your intermediate work, reopening in another app, and then resaving? Is it because you'd just rather not download another application to your hard drive? 3) If you aren't aware of them, would you be more eager to be informed about them or would you rather some sort of workaround be added to this plug-in to make Paint.NET have extended icon/cursor editing capabilities? 4) Are you happy enough with the way this plug-in is and would rather have me work on new plug-ins that do new things, instead of tweaking other plug-ins to try to accommodate the needs of the more advanced users? I assure you that these are honest questions and aren't trying to imply something by just being posed. If any current users of this plug-in can give their feedback, I'd appreciate it.
  15. The following effect DLLs are replaced by this plug-in and can be removed if they are still in your PDN effects directory: HueSatFilter.dll Octagonal.dll
  16. In the OnRender method in Effect, are the following values always the same: EnvironmentParameters.SourceSurface.Width DstArgs.Surface.Width SrcArgs.Surface.Width ? Also, in the Effect class (the non-template one) are the following values always the same: srcArgs.Width srcArgs.Surface.Width EnvironmentParameters.SourceSurface.Width ? The same question goes for the height values, but I assume the answer is the same. If there is any context in which these values would differ, can you please explain when and why? The reason I ask is I want to process the image in such a way that modifying a given pixel may be dependent on another pixel elsewhere in the image. If there is a contract saying only use pixels within the bounds of the source surface, but that surface doesn't necessarily represent the working image in its entirety, then I'd want pixels that, in theory, lie outside of this surface. I guess what I'm really asking is, do we ever get a surface delivered to our effect which is not the entire image? I don't know if you (Rick) do currently or plan to in future versions split large images up into multiple surfaces for visibility culling or other reasons, but I just want to make sure that it's safe to develop code under the assumption that the above values are always equivalent.
  17. This plug-in is now contained within my plug-in pack and the download link will be removed shortly. Please see: viewtopic.php?f=16&t=27897 (Moderator, can you please lock this thread?)
  18. This is my collection of Paint.NET effects thus far. A quick rundown of the effects in the DLL: Mirror over line This lets you draw a line on a thumbnail of the image in a dialog and reflect what's on one side of the line over the other. Conditional Hue/Saturation Adjustment The conditional hue/saturation can adjust the hue or saturation of a portion of the image based on the existing hue values of pixels. Below are some before and after shots. Quadrilateral Reshape ("Distort" submenu) Lets you reshape the image to an arbitrary quadrilateral region. Polygonal Transparency ("Transparency" submenu) Allows the user to mask out an arbitrary polygonal region and make it transparent. 3D Object (BETA) Builds a polygon-based 3D object (a few different object types are available) and renders it with the image mapped over it as a texture. Pie Chart ("Render" submenu) Renders a simple pie chart. Added January 6, 2012. There are also several very simple "Mirror" effects: - Right side over left side, left side over right side, top over bottom, and bottom over top which are self explanatory EOEffects.zip
  19. There is a bug on saving 8-bit images. Working on a fix.
  20. How are you adding the icon/cursor resource to your VS2005 project? For a C# app I don't think it will even let you add cursors and I had no trouble adding an icon. However, I did find an issue which I'll work on fixing, but you should be able to save an icon with the default options and have VS load it. You don't need the .NET 3.0 framework. Can you please send more details about the error and exactly what steps you take that cause it? Thanks
  21. Yes, I understand that without that option, icon authoring power is extremely limited. However, just due to the nature of Paint.NET, such an option is just not something I'm willing to maintain. I did some refactoring for the latest release and removed that feature. There will be probably one or two more clean-up/bug fix updates for this plug-in and then I'm not going to maintain it anymore. In Rick's own words, Paint.NET is just not an icon creation tool. It's highly likely that I will write a standalone application that allows for more complex icon creation. But trying to write a plug-in that attempts to extend Paint.NET's functionality too far beyond that for which is was intended is not the way I want to go. Yes it was removed because there's a rule that says "you must not get feedback on you plug-ins in the plug-in posting forum" (possible that I slightly mis-quoted that). I pretty much made the decision without feedback. It was a mistake to put it in to begin with it, so removing it was simply fixing the mistake. Sorry for any inconvenience.
  22. The download link has been fixed: http://www.evanolds.com/IcoCur.zip
  23. Would anyone object if I took out the "Save each layer seperately" mode? It's really kind of a dirty hack how it trys to analyze the transparent regions and save images of different dimensions. Paint.Net isn't really well suited for it. I'd have more time to work on other features if I just scraped this portion. Please let me know by voting in the poll at the top of the page.
  24. Oops. Yeah, thanks for pointing this out, I accidently released the debug version. I'll see if I can get a fixed version up later today.
  25. If you want to do this particular type of action, I think a color replacement plug-in would much better suit your needs. I did a very brief look in Paint.NET and among the forums and didn't see a plugin for this, but you wish to do a global, solid color replacement you can use the paint bucket tool with a tolerance of 0% and "Global" mode (under the "Flood Mode:" pulldown). This tool with these parameters gives you an exact color replacement, and I would recommend it for what you are trying to do.
  • Create New...