ImageEn for Delphi and C++ Builder ImageEn for Delphi and C++ Builder

 

ImageEn Forum
Profile    Join    Active Topics    Forum FAQ    Search this forumSearch
Forum membership is Free!  Click Join to sign-up
Username:
Password:
Save Password
Forgot your Password?

 All Forums
 ImageEn Library for Delphi, C++ and .Net
 ImageEn and IEvolution Support Forum
 Iocolorcurve cretaes issues
 New Topic  Reply to Topic
Author Previous Topic Topic Next Topic  

pierrotsc

USA
497 Posts

Posted - Feb 27 2019 :  12:23:36  Show Profile  Reply
I just upgraded to 8.3 and when i open a new image after having loaded one, the new image does not show up. the old one is still there.
i found out that if you insert
ImageEnView.IO.LoadFromFile(fPathFilename);
IEColorCurve.AssignSource(ImageEnView.IEBitmap); //that creates the strange behavior

After you load the image, it will create this problem.

xequte

38615 Posts

Posted - Feb 27 2019 :  17:52:15  Show Profile  Reply
Hi

I cannot reproduce that. Can you give me more information?

Nigel
Xequte Software
www.imageen.com
Go to Top of Page

pierrotsc

USA
497 Posts

Posted - Feb 27 2019 :  19:22:33  Show Profile  Reply
This is what my open file has:
ImageEnView.IO.LoadFromFile(fPathFilename);
IEColorCurve.AssignSource(ImageEnView.IEBitmap); //that creates the strange behavior

After that if i try to re open another image, the old image will still be there but with the curve applied to it. I do not have access to my coding machine at this time. I will try to modify the layers editing demo and see if i can reproduce it. if i cannot, then there is something else in my code that is conflicting. when i comment the iecolorcurve.assignsource, then everything works great. I'll get back to you in the morning.
Go to Top of Page

xequte

38615 Posts

Posted - Feb 27 2019 :  20:02:19  Show Profile  Reply
I tried this:


ImageEnView.IO.LoadFromFile(fPathFilename);
IEColorCurve.AssignSource(ImageEnView.IEBitmap);
ImageEnView.IO.LoadFromFile(fPathFilename);

It successfully loaded the second image. There must be something else going on here. Please send me a small project and associated images that show the issue.

Nigel
Xequte Software
www.imageen.com
Go to Top of Page

pierrotsc

USA
497 Posts

Posted - Feb 27 2019 :  20:41:30  Show Profile  Reply
will do..i guess i have some code somewhere that creates a conflict. will work on that in the morning..
Go to Top of Page

pierrotsc

USA
497 Posts

Posted - Feb 28 2019 :  09:12:26  Show Profile  Reply
Ok, i found the bug or the strange behavior. i have attached the project. originally, it worked then i looked at the difference between the two projects. my projects has the imageenview component selected under the iocolorcurve preview option.

Try to load another image after you already loaded one.
Best

attach/pierrotsc/201922891220_Layers_AllTypes - Original.zip
15.79 KB
Go to Top of Page

w2m

USA
1990 Posts

Posted - Feb 28 2019 :  10:04:20  Show Profile  Reply
I looked at your demo. Just make sure all layers position locked is false and all layers are selectable. Works ok here. When I select a layer the IEColorCurve1.AssignSource(ImageEnView1.IEBitmap) changes to show the curve for the selected layer.

Bill Miller
Adirondack Software & Graphics
Email: w2m@hughes.net
EBook: http://www.imageen.com/ebook/
Custom Commercial ImageEn Development
Go to Top of Page

pierrotsc

USA
497 Posts

Posted - Feb 28 2019 :  10:08:50  Show Profile  Reply
If you run my demo, load an image then load another one, does it work ?
when i remove the preview component in the iocolorcurve component, then everything works fine.
Being sure that all layers position locked is false and selectable is not a good work around. the code worked fine under 8.2. so something got changed somewhere as i have not modified anything.
Go to Top of Page

xequte

38615 Posts

Posted - Feb 28 2019 :  17:32:45  Show Profile  Reply
Thanks, we'll have a fix for this in 8.3.1.

You can email me for the fix (you will need to recompile your ImageEn packages to use it).

Nigel
Xequte Software
www.imageen.com
Go to Top of Page

pierrotsc

USA
497 Posts

Posted - Feb 28 2019 :  19:03:46  Show Profile  Reply
Nigel, i do not have the source code. i'll wait for 8.3.1. no problem.
Do i need to insert imageenview in the preview iocolorcurve component ? what does that do ? right now, i have not mess too much with it as it has limited features. i used to use Francesco's RGB curves. i beta tested and a lot of features he implemented where requests from me :) my program uses the curve principally.
Go to Top of Page

xequte

38615 Posts

Posted - Feb 28 2019 :  22:20:11  Show Profile  Reply
Hi

The issue is related to layers. When we designed it, we assumed it would be used in non-layer situations.

You should be able to work around the problem by disconnecting the PreviewImageEnView while loading, e.g.


IEColorCurve1.PreviewImageEnView := nil;
ImageEnView1.IO.LoadFromFile(filename);
IEColorCurve1.AssignSource(ImageEnView1.IEBitmap);
IEColorCurve1.PreviewImageEnView := ImageEnView1;


Nigel
Xequte Software
www.imageen.com
Go to Top of Page

pierrotsc

USA
497 Posts

Posted - Mar 04 2019 :  12:24:47  Show Profile  Reply
When the line IEColorCurve.PreviewImageEnView := ImageEnView; is added, every time you load an image, the size is wrong. the bitmap width and height are not the same as the original file loaded. it is smaller. it shows in the layer thumbnail. If i comment the line, everything works as normal.
Go to Top of Page

xequte

38615 Posts

Posted - Mar 04 2019 :  17:34:23  Show Profile  Reply
That is correct, because setting PreviewImageEnView displays a preview of the curve effect in a TImageEnView.

For the next update, I will include a full size preview option.



Nigel
Xequte Software
www.imageen.com
Go to Top of Page
  Previous Topic Topic Next Topic  
 New Topic  Reply to Topic
Jump To: