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
 Method to Save TIERenderOperation in File
 New Topic  Reply to Topic
Author Previous Topic Topic Next Topic  

wesleybobato

Brazil
367 Posts

Posted - Oct 22 2014 :  15:12:38  Show Profile  Reply
Hello Nigel e william Good Afternoon.
is possible to add a method to fix TIERenderOperation to save power
imgview.LayersFixOperation(layer: integer);

Thank you very much for your attention

xequte

39144 Posts

Posted - Oct 28 2014 :  14:30:28  Show Profile  Reply
Hi Wesley

Sorry for the delay. We've been busy with post-5.2.0 work. Can you explain this requirement in more detail?

A TIERenderOperation on a layer does not affect the quality or display speed, so I'm not sure what benefit LayersFixOperation would add.

Nigel
Xequte Software
www.xequte.com
nigel@xequte.com
Go to Top of Page

wesleybobato

Brazil
367 Posts

Posted - Oct 29 2014 :  05:11:24  Show Profile  Reply
Hello Nigel.
Thank you for your attention.

Nigel this is a quick way to Edit a photo.
sadly I can not save the file changes in layer.

this is important when we need performance because the User can see
a quick way to change the screen.

if the User like the results I could save the file with this method.
also would be important if it were possible aterar standard rendering value

example.
ImageEnView1.Layers [0] .OperationValue (-255 to 255);
ImageEnView1.Layers [0] .Operation: = TIERenderOperation (ComboBox1.ItemIndex);


procedure TForm1.Button1Click(Sender: TObject);
begin
with ImageEnView1.IO do
begin
LoadFromFile(ExecuteOpenDialog());
end;
ImageEnView1.Fit;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
with ImageEnView1 do
begin
//LayersFixSizes();
//LayersFixRotations();
//LayersFixBorders();
//IEBitmap.FixContrast;
//IEBitmap.FixChannelOffset;
//LayersFixOperations;
with IO do
begin
SaveToFile(ExecuteSaveDialog());
end;
end;
end;

procedure TForm1.ComboBox1Change(Sender: TObject);
begin
//ImageEnView1.Layers[0].OperationValue := 80;
ImageEnView1.Layers[0].Operation := TIERenderOperation(ComboBox1.ItemIndex);
ImageEnView1.Update;
end;
Go to Top of Page

wesleybobato

Brazil
367 Posts

Posted - Oct 29 2014 :  08:26:27  Show Profile  Reply
Hello Nigel Again.

Then I had an idea to bring more performance using preprocessing by TIERenderOperation, you could add TIEPROC in this list
Pre for viewing if the User is interested simply save the file to persist.

what do you think about it.

have a great day.
Go to Top of Page

xequte

39144 Posts

Posted - Oct 29 2014 :  21:36:54  Show Profile  Reply
Hi Wesley

Render operations only affect the display of a layer, so they can't really be "fixed" because they are affected by the layer behind. In order to "fix" them you need to merge them to layer below.

Here is an example of saving merged layers:
var
  aBitmap : TIEBitmap;
begin
  if dlgSaveImages.Execute = False then
    exit;
  aBitmap := TIEBitmap.Create;
  try
    aBitmap.Allocate(ImageEnView1.Width, ImageEnView1.Height);
    ImageEnView1.LayersDrawTo(aBitmap);
    ImageEnView1.Update;
    aBitmap.Write(dlgSaveImages.Filename);
  finally
    aBitmap.Free
  end;
end;



Nigel
Xequte Software
www.xequte.com
nigel@xequte.com
Go to Top of Page

wesleybobato

Brazil
367 Posts

Posted - Oct 30 2014 :  12:27:21  Show Profile  Reply
thank you nigel

good day for you.
Go to Top of Page
  Previous Topic Topic Next Topic  
 New Topic  Reply to Topic
Jump To: