Jump to content

DataJuggler

Members
  • Posts

    33
  • Joined

  • Last visited

Everything posted by DataJuggler

  1. I am not sure where else to ask this, and I am no longer on Twitter. My question is related to the font combo box in Paint .NET. Did you create a custom control that displays a sample of each font, or is that some 3rd party library? If yes, can you tell me the name of the library. If it is a custom control, would you consider letting me use it or license it for an open source project? Thanks, if there is a better place to ask a question like this, please tell me where. I will probably have the control built before I get an answer, but already built is easier. Thanks, Corby / Data Juggler
  2. If there is a way to do this, please tell me how. My workflow today is using the same background, and changing the titles for chapter transitions. Each time I have to export, change data type from .pdn to .png, then accept flattening prompt. Then undo flattening. A one step export and leave the layers would be helpful. Thanks
  3. I got my project into Visual Studio, which I now feel at home. I am a little confused about the Rectangles of Interest that Paint.NET uses. My Nuget package DataJuggler.PixelDatabase expects me to load the entire image: PixelDatabase pixelDatabase = PixelDatabaseLoader.LoadPixelDatabase(... You can pass in a path or a bitmap: // Load PixelDatabase by path PixelDatabase pixelDatabase = PixelDatabaseLoader.LoadPixelDatabase(path, StatusUpdate); // Load by Bitmap PixelDatabase pixelDatabase = PixelDatabaseLoader.LoadPixelDatabase(sourceImage, StatusUpdate); // status update is just a method to get pixels updated in long operations I realize Paint.NET uses layers, and I read the plug-in can only effect the active layer, so is there a way to get the full active layer as a bitmap (or Image)? Once a PixelDatabase is loaded, I call ApplyQuery and my package handles updating the entire image. Is there a way to execute code before the image is separated into rectangles of interest? If yes, I can call my ApplyQuery method before rectangles are split, and then in your Render methods I only have to copy pixels to the destination surface. For example, my Create Gradient feature needs to know the size of the entire image. I am not sure how to do that from rectangles of interest. My project and site are free, and I plan on making the plug-in free also, but I can pay you a little for your time if you could guide me how to get started. I think people would find my plug-in useful, as it extends Paint.NET for some pretty useful features. Here is a recent feature added, grayscale: Update the red car to gray, and leave (most) of the rest of the image alone: Bitmap Query Language BQL - If you know SQL you are 90% there. Biggest difference is each criteria is on its own line to make parsing simple. Update Set Grayscale Red Where RedMaxDiff > 0 Y > 761 More features are shown here If you have time to watch a 5-minute video: (the first two minutes has a comic book story and animated intro, you can skip it): World's Greatest Grayscale: Thanks for your time, I have wanted to do this since last year but Paint.NET was still on .NET Framework and my package on .NET5. Now that both are on .NET6 I don't have any excuse not to get this done. Corby / Data Juggler
  4. I feel the same way. I wish someone would help me port DataJuggler.PixelDatabase to a Paint.Net plug-in. All I need is a text box and a button. Any volunteers? Everything you can do here and more https://pixeldatabase.net Nuget: DataJuggler.PixelDatabase for (latest release is for .NET6) Here is a gray scale example that I think is cool: Turn the red car to white (files attached) Update Set Grayscale Red Where RedMaxDiff > 0 Y > 761 Would this make a good plugin?
  5. Today I updated my Nuget package so I could check if a pixel should be updated or not using my Nuget package, but I don't know how to deploy. How do I package this up to install? If there is any benefit, I do have Advanced Installer if that simplifies things. If there is a doc for this I didn't get that far. I saw how to do this in using Code Lab, but I don't know what to do to package up the Visual Studio output, which includes my plug in class and my Nuget package and a some dependencies. Thanks,
  6. No she called me clearly spam, when I am trying to build a plug-in to give away, I was just showing a preview here. Spam is when you try and sell something. Free information that might help someone is called freedom of speech. If not free speech zone here, I speak where it is. And if she wasn't talking to me, it reminds me of this time I walked out of this store and these two women were walking in. One of them looked right at me and said 'I like those pants.' I said thank you, what would you say? And they both started laughing? The world is not always about me.
  7. Did you copy the image and paste it into Paint.Net? What do you mean Transparent White, those are two different things. Here is a video showing it is transparent, not white.
  8. Advertising spam? I write code and give away code 100% free, 100% of the time. I am sorry you consider free code, spam. Here is my Git Hub page if you want to look at 36 projects: https://github.com/DataJuggler And here is a video I just made showing copying the image from this forum and pasting into Paint.Net. Have a good day.
  9. That project is something I rarely ever work on. I wrote in around 2009 when I first learned WPF, then I quickly learned I hate WPF. I don't care if you don't like the buttons the project, it is just a project I use because: 1. It has a Document Formatter, that formats a C# code into regions for Private Variables, Methods, Events, Constructors and Properties. 2. It has code generation features for Add Methods and Events 3. An auto commenting system. You can have Visual Studio type comments for certain C# lines, so it saves having to write: Put your mouse over this line and hit Ctrl + Shift user = new User(); Comment gets written: // Create a new instance of a User object user = new User(); But that's not why I am here, I was just showing you a dockable window idea I wish Paint.Net has and you made fun of my buttons, which is actually the nicest thing anyone has said to me today.
  10. Not Code Lab, the fact you can only run one plug - in at a time is a Paint.Net limitation, that has nothing to do with Code Lab. Code Lab has a code editor, so I am not knocking it. I prefer VS, but I understand what it takes to build something like that stand alone, much less as a plug-in, so I am sure it is the Michael Angelo of plug-ins. Visual Studio is the king of extensibility, my package Regionizer that everyone hates but me, I dock in the same window as Solution Explorer and its always available to modify the current code window: If I could write something like this that docks in Paint.Net, that would be better than a Plug-in model. Is there a wish list for feature requests anywhere? Thanks
  11. Thank you for the information. Plug-ins are fine for simple enhancements, but to be truly extensible they should expose an API. Oh well, that is why I wrote my own site, but I didn't see any reason to reinvent the wheel for things Paint.Net already does.
  12. This is why as soon as I go back to work I may donate and request the old docs be updated. Even thought its a pain, otherwise new people learn it wrong, and if they don't come find someone to inform them, it stays wrong. Thank you,
  13. I was told I can create a custom user control, which is what I am doing as I write this. Why couldn't a custom user control display folders and layers? As a user control developer I don't see any reason why not. Is not possible to operate a plug-in and operate Paint.Net's at the same time?, or multiple plug-ins at once? Thanks, very new to Paint.Net extensibility, but been doing Visual Studio extensibility for a long time.
  14. The compile message made it easy enough to figure this out, but just to make it easier on the next person: Tutorial Part I - Simple has this example after you remove the default script code and modify it. Line 4: Rectangle selection = EnvironmentParameters.GetSelection(src.Bounds).GetBoundsInt(); When you build you get a warning this is obsolete and no longer needed, use GetSelectionAsPdnRegion So it should be changed to this I think: Rectangle selection = EnvironmentParameters.GetSelectionAsPdnRegion().GetBoundsInt(); In case the next person reading is new to C# / programming it might confuse them.
  15. When I clicked Generate VS Solution, it generates a vs solution targeting .Net Framework 4.7.0 it appears. On my machine I currently have: 4.61 (and below) 4.71 4.72 4.80 Do I need to target 4.7 version of .Net Framework? I can install that version if needed. And bonus question, if it should be a different thread I will move it, but someone, possibly BoltBait mentioned I need to learn about some type of Paint.Net pointer that I could pass to my library, so I don't have to take the pixels updated in my library, and then loop over them in paint.Net to apply them. If you know of the class name let me know. Thank you,
  16. Until my plug-in is ready, getting rid of the blue is easy with my free site: PixelDatabase.Net A free online text based image editor Hide Pixels Where BlueMinDifference > 54 BlueMinDifference means the pixels affects will be the ones that if you take the value for Blue and subtract the minimum value of Red, Green or Blue and the result is > 54. Through trial and error the 54 seemed to be the magic number. I will try and get the plug-in done this week, as I use Paint.Net every day for 15 years, and I wrote my site for the things Paint.Net doesn't do easily. To make those blended pixels all blue (from the original image): Update Set Color Blue Where BlueMinDifference > 54 It will crank up the blue. I can't tell a difference looking, but you could try using the bottom image and see if it if it works better since the blended pixels should be blue now.
  17. Whenever I copy that image, it doesn't have a Solid White background, did I miss the original? I am working on a plug-in for this and it will be ready soon, but I have the perfect free companion website: PixelDatabase.Net A free online text based image editor. Take this source image: To remove the white background: Hide Total > 700 - Total is the sum of Red + Green + Blue, and White is 765, so white pixels will be removed. Result: Then you can add a layer for your gradient background. Or you can change the background color to a named color or RGB values. Update Set Color Wheat Where Total > 700
  18. Just so you are aware my vision is not very good, but that being said, I do not see a 'Generate VS Solution' in CodeLab. This is an old adage, but a picture is worth a thousand words here, and I will add 3 more. Please Show Me. I found it. You have to click Build DLL, and at the bottom there is a Generate VS Solution. Sorry, I am new to all this. Thanks
  19. Edit: Here is the link, I found it: https://boltbait.com/pdn/CodeLab/help/tutorial5.asp FYI this page still mentions: 'I am using Visual Studio 2010 Express.' It is 2020 now and VS 2019 has been out for a quite a while.
  20. I know exactly how you feel BuzzKill. I know how to write code, even C# image processing code, but I don't know how to write this code, yet. I did my first plug in, but it doesn't do what the tutorial said it would do. The problem with computers is, they don't what you tell them. This is not to be confused with what you want it do.
  21. Couple of questions, maybe someone can redirect where to ask this if this isn't the right place. Would anyone be interested in helping me port my Nuget package DataJuggler.PixelDatabase to a plug in for Paint.Net. I installed Code Lab, but the examples I have seen all use sliders, I need a text box, and a button, not a slider, and I gave up when I hit a 'What do I know'. Currently the most up to date version of my library is the .Net Core version that powers my site built in Blazor called PixelDatabase.Net. I have a .Net Framework version, but I stopped support it due to everything is moving to .Net Core in VNext. Is a .Net Framework the only Nuget I can link to? I tried and didn't get very far due to sliders. Can someone recommend a plug in project that uses a text box instead of a slider? Users all like controls such as sliders, but text is more powerful to me as you don't have to change your GUI to add new features. PixelDatabase uses Bitmap Query Language, and I think some Paint.Net users will find it useful because I sure do. Thanks
  22. I have the perfect companion site for Paint.Net that makes doing what you are talking about easy, if I understand your question correctly. https://pixeldatabase.net A free online text based image editor. In this image, if you want to select only the red areas of the arrow: This text here will swap the red and blue pixels: Update Set Swap Red Blue Where RedMinDifference > 30 RedMinDifference is a property where you take the value for Red and subtract the minimum value of Red Green or Blue, and the red areas will be above 30. You could even go further: Red = 224 Blue = 17 Green = 42 Or the property I use the most is called Total, which is the sum of Red + Green + Blue, and you can use this value in queries.
  23. Another thing you can do if the image is small enough to fit in the frame in Paint.Net (View Port?). Take a screen shot with Alt + Print Screen. Then in Paint.Net select Edit > Paste in New Image. Then take the selection tool and draw a rectangle around the view port in Paint.Net, click Image > Crop To Selection, and you have your image with the checkered squares. Incidentally, I tried using those checker boxes on my site https://pixeldatabase.net, and it hurts my eyes to stare at those squares for long periods of time, so I used a background with dark colored squares.
×
×
  • Create New...