-
Posts
15,730 -
Joined
-
Last visited
-
Days Won
405
Everything posted by BoltBait
-
paint.net 4.0.12 is now available!
BoltBait replied to Rick Brewster's topic in Paint.NET Discussion and Questions
Verified. Rounded Rectangle looks good at all corner sizes I checked. -
Don't we all... EDIT: By the way, you can read Rick's message here:
-
Rick is aware of the problem you're having and he will release a new version VERY soon... (tonight or possibly tomorrow). This effects all single processor systems.
-
paint.net 4.0.11 is now available!
BoltBait replied to Rick Brewster's topic in Paint.NET Discussion and Questions
-
Looks like you have Mirillis Action! installed. Turn that off and try running paint.net again. Also, upgrade paint.net to version 4.0.11.
-
Something about the color tool
BoltBait replied to CananaMan's topic in Paint.NET Discussion and Questions
Not really. If you look at the color docker in small mode, none of the controls have value boxes or labels now. The color docker window in small mode uses the HSV color mode. The color docker allows you to choose the H and S of a color but not V or A. I think it would be really handy to be able to select ALL colors with the color docker in small mode. -
Something about the color tool
BoltBait replied to CananaMan's topic in Paint.NET Discussion and Questions
CananaMan, I like your idea. EER, when in expanded mode, the color docker window could look the same as it does now. -
paint.net 4.0.11 is now available!
BoltBait replied to Rick Brewster's topic in Paint.NET Discussion and Questions
I'm not seeing that behavior at all. And, I don't see that behavior listed on the help page EER posted. Perhaps, this is something you've requested before but has never been implemented? That tab doesn't show up if there are no plugin load errors. -
paint.net 4.0.11 is now available!
BoltBait replied to Rick Brewster's topic in Paint.NET Discussion and Questions
What do you expect Ctrl-PgUp and Ctrl-PgDn to do? In Paint.NET 3.5.11 they don't do anything at all. In paint.net 4.0.11 they respond the same as PgUp and PgDn. Maybe you're looking for Ctrl-Home and Ctrl-End? -
paint.net 4.0.11 – Filled Shape and Outline
BoltBait replied to xod's topic in Troubleshooting & Bug Reports
You'll have to excuse Xod as English is not his first language. I think Eli has explained the gist of the issue. It looks to me as though you are using 2 different paths, one for the fill and one for the outline. You should be able to use the same path to draw both if you draw the fill first and then the outline. -
Layer opacity affecting wrong layers problem
BoltBait replied to Adonnus's topic in Paint.NET Discussion and Questions
There are a couple of ways to do what you want: 1) make sure each layer does not have overlapping pixels. This way, the layer will only affect the background layer. 2) after working on a layer, flatten your image down to a single layer before starting the next layer. (Not really recommended as you lose the ability to edit each individual layer later.) There is no automatic setting to do what you're describing. -
Select multiple sections of an image
BoltBait replied to kml's topic in Paint.NET Discussion and Questions
In your example, you'd need to do those separately. If you make a selection, hold down the Ctrl key and make another selection. The two selections are combined into a single selection. -
New Forum Software
BoltBait replied to Ego Eram Reputo's topic in Paint.NET Discussion and Questions
Eli, what browser are you using? Can you clear your cache and try again? -
Saving selection coordinates
BoltBait replied to Lucian's topic in Paint.NET Discussion and Questions
OK, don't tell Rick that I did this, but here is a plugin that is NOT well behaved that does what you want. I'll leave it to you to build using CodeLab. // Name: Output Selection Coordinates // Author: BoltBait // Version: 2.0 #region UICode #endregion string LatestFileName() { string filename = Form.ActiveForm.Owner.Text; filename = filename.Substring(0, filename.IndexOf(" - ")); if (filename != "Untitled") { for (int i=7; i>=0; i--) { string regpath = @"HKEY_CURRENT_USER\Software\Paint.NET"; string regkey = "File/MostRecent/Path" + i.ToString(); string regval = (string)Registry.GetValue(regpath,regkey,"Untitled"); if (filename == Path.GetFileName(regval)) { return regval; } } } return filename; } void GetFileName() { OpenFileDialog ofd = new OpenFileDialog(); ofd.Title = "Select Image File"; ofd.Filter = "Image Files(*.PNG;*.BMP;*.JPG;*.GIF)|*.PNG;*.BMP;*.JPG;*.GIF|All files (*.*)|*.*"; ofd.DefaultExt = ".png"; ofd.Multiselect = false; if (ofd.ShowDialog() == DialogResult.OK) { imgPath = ofd.FileName; OutputFilename = Path.ChangeExtension(imgPath, ".txt"); } else { OutputFilename = ""; } } string OutputFilename = ""; string imgPath = null; void Render(Surface dst, Surface src, Rectangle rect) { if (OutputFilename == "Cancelled") return; if (OutputFilename == "") { OutputFilename = LatestFileName(); if (OutputFilename == "Untitled" || OutputFilename == "") { Form IndirectUIForm = Form.ActiveForm; if (IndirectUIForm != null) { IndirectUIForm.Invoke(new Action(delegate () { GetFileName(); })); } } else { OutputFilename = Path.ChangeExtension(OutputFilename, ".txt"); } } if (OutputFilename == "") { OutputFilename = "Cancelled"; return; } if (!Path.IsPathRooted(OutputFilename)) { string dir = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments); OutputFilename = Path.Combine(dir, Path.GetFileName(OutputFilename)); } Rectangle selection = EnvironmentParameters.GetSelection(src.Bounds).GetBoundsInt(); int CenterX = ((selection.Right - selection.Left) / 2)+selection.Left; int CenterY = ((selection.Bottom - selection.Top) / 2)+selection.Top; string OutputData = selection.Left.ToString() + "," + selection.Top.ToString() + " " + selection.Right.ToString() + "," + selection.Bottom.ToString(); ColorBgra CurrentPixel; for (int y = rect.Top; y < rect.Bottom; y++) { if (IsCancelRequested) return; for (int x = rect.Left; x < rect.Right; x++) { CurrentPixel = src[x,y]; if (x == CenterX && y == CenterY) { if (OutputFilename != "") { if (!File.Exists(OutputFilename)) { using (StreamWriter sw = File.CreateText(OutputFilename)) { sw.WriteLine(OutputData); } } else { using (StreamWriter sw = File.AppendText(OutputFilename)) { sw.WriteLine(OutputData); } } Form IndirectUIForm = Form.ActiveForm; if (IndirectUIForm != null) { IndirectUIForm.Invoke(new Action(delegate () { MessageBox.Show("Data saved to file:\r\n" + OutputFilename + "\r\n\r\nData: " + OutputData); })); } } } dst[x,y] = CurrentPixel; } } } And, you fellow Effect authors, avert your eyes! Do not follow down the path of the unrighteous! I'm serious! Rick will probably ban me for posting such unclean code. Press your browser's back button now before you become corrupted! MJW, don't you dare use this! -
Saving selection coordinates
BoltBait replied to Lucian's topic in Paint.NET Discussion and Questions
Nope. Trust me, this is the most efficient I can get it... given the limitations of the effects system. -
Saving selection coordinates
BoltBait replied to Lucian's topic in Paint.NET Discussion and Questions
I don't really feel like writing a tutorial on this one. You better just bookmark it. The script actually has issues. For example, I can't get it to append text to the existing file. My intent was to make a selection, run the effect. Make another selection, run the effect again with the result being 2 lines in the output file. It doesn't work... and I'm too lazy to debug it. -
lines off the canvas
BoltBait replied to keirpolyblank's topic in Paint.NET Discussion and Questions
Rick is aware of this issue and is working on a fix for the next release. -
New Forum Software
BoltBait replied to Ego Eram Reputo's topic in Paint.NET Discussion and Questions
They are still getting through, but the volume does seem to be less. -
Saving selection coordinates
BoltBait replied to Lucian's topic in Paint.NET Discussion and Questions
OK, here is a more complicated script that should do what you want. // Name: Output Selection Coordinates // Author: BoltBait // Version: 1.1 #region UICode byte Amount1 = 0; // [255] Select Current Image File #endregion string OutputFilename = ""; int PreviousBrowseButton = -1; string imgPath = null; void GetFileName() { OpenFileDialog ofd = new OpenFileDialog(); ofd.Title = "Select Image File"; ofd.Filter = "Image Files(*.PNG;*.BMP;*.JPG;*.GIF)|*.PNG;*.BMP;*.JPG;*.GIF|All files (*.*)|*.*"; ofd.DefaultExt = ".png"; ofd.Multiselect = false; if (ofd.ShowDialog() == DialogResult.OK) { imgPath = ofd.FileName; OutputFilename = Path.ChangeExtension(imgPath, ".txt"); } else { OutputFilename = ""; } } void Render(Surface dst, Surface src, Rectangle rect) { if (PreviousBrowseButton == -1) { PreviousBrowseButton = Amount1; } if (PreviousBrowseButton != Amount1) { PreviousBrowseButton = Amount1; Form IndirectUIForm = Form.ActiveForm; if (IndirectUIForm != null) { IndirectUIForm.Invoke(new Action(delegate () { GetFileName(); })); } } Rectangle selection = EnvironmentParameters.GetSelection(src.Bounds).GetBoundsInt(); int CenterX = ((selection.Right - selection.Left) / 2)+selection.Left; int CenterY = ((selection.Bottom - selection.Top) / 2)+selection.Top; ColorBgra CurrentPixel; for (int y = rect.Top; y < rect.Bottom; y++) { if (IsCancelRequested) return; for (int x = rect.Left; x < rect.Right; x++) { CurrentPixel = src[x,y]; if (x == CenterX && y == CenterY) { if (OutputFilename != "") { if (!File.Exists(OutputFilename)) { using (StreamWriter sw = File.CreateText(OutputFilename)) { sw.WriteLine(selection.Left.ToString() + "," + selection.Top.ToString() + " " + selection.Right.ToString() + "," + selection.Bottom.ToString()); } } else { using (StreamWriter sw = File.AppendText(OutputFilename)) { sw.WriteLine(selection.Left.ToString() + "," + selection.Top.ToString() + " " + selection.Right.ToString() + "," + selection.Bottom.ToString()); } } } } dst[x,y] = CurrentPixel; } } } How to use Download the following zip file (I used CodeLab to compile it for you): WriteSelectionCoordinatesToFile.zip Unzip it to your desktop. Run the enclosed Install_.bat file to install the effect into your paint.net Open an image in paint.net and make a selection. Run the effect. Click the button to select your image file and click OK. (This is necessary because effects do not know the name of the open file.) Click OK on the effect dialog box to finalize your effect and write the coordinates to the file. Hope this helps! -
Saving selection coordinates
BoltBait replied to Lucian's topic in Paint.NET Discussion and Questions
It wouldn't be too hard of an effect to write. What format would you like to save the coordinates in? (IOW, what would you like the text file to look like?) EDIT: It has been a few minutes and you haven't responded to my question. So, I wrote a generic CodeLab script that does what you want: // Name: Output Selection Coordinates // Author: BoltBait // Version: 1.0 #region UICode #endregion string OutputFilename = @"C:\Users\YourName\Desktop\output.txt"; void Render(Surface dst, Surface src, Rectangle rect) { Rectangle selection = EnvironmentParameters.GetSelection(src.Bounds).GetBoundsInt(); int CenterX = ((selection.Right - selection.Left) / 2)+selection.Left; int CenterY = ((selection.Bottom - selection.Top) / 2)+selection.Top; ColorBgra CurrentPixel; for (int y = rect.Top; y < rect.Bottom; y++) { if (IsCancelRequested) return; for (int x = rect.Left; x < rect.Right; x++) { CurrentPixel = src[x,y]; if (x == CenterX && y == CenterY) { if (!File.Exists(OutputFilename)) { using (StreamWriter sw = File.CreateText(OutputFilename)) { sw.WriteLine(selection.Left.ToString() + "," + selection.Top.ToString() + " " + selection.Right.ToString() + "," + selection.Bottom.ToString()); } } else { using (StreamWriter sw = File.AppendText(OutputFilename)) { sw.WriteLine(selection.Left.ToString() + "," + selection.Top.ToString() + " " + selection.Right.ToString() + "," + selection.Bottom.ToString()); } } } dst[x,y] = CurrentPixel; } } } -
How Do you Soften Edges When Using Clone Tool
BoltBait replied to axel's topic in Paint.NET Discussion and Questions
When using the clone tool, look on the toolbar for the "Hardness" setting. 100% is hard edges, 0% is very soft edges. -
My Issue with older with rule #7
BoltBait replied to Samlovespdn's topic in Paint.NET Discussion and Questions
The next version will have the zoom feature you desire too. Just be patient.