Author |
Topic |
|
Fábio Nascimento
Brazil
72 Posts |
Posted - Jul 26 2023 : 20:16:14
|
Hi
I'm considering upgrading from 6.3 version, is there anything I should be aware of?
I found this topic https://www.imageen.com/ieforum/topic.asp?TOPIC_ID=5167&SearchTerms=upgrade that seens I should have no problem upgrading.,
Also, I don't use any of the items listed on this topic:
http://www.imageen.com/help/Updating_and_Compatibility.html
I use ImageEn mostly for displaying and printing multipage TIFFs (ImageEnMView for showing thumbnails and ImageEnVect for showing the current page).
Also, I need to aquire from scanner. I already do new documents scan with ImageEn, but I need to insert page, remove page, replace page, which was very difficult to do with the version 6.3. So I still use the Kodak OCX components for acquiring.
Are there new ways to insert/remove/replace pages when acquiring in the new version? So I can replace the old Kodak OCX components?
I bought a new PC and have made a fresh install of the entire enviroment, which includes ImageEn 6.3. If I upgrade to the new version, uninstalling the 6.3 and installing the new one is enough, or should I look for something else to delete?
I have found this link https://www.imageen.com/order/ExtendImageEn.html to buy a ImageEn Extension, is this the best way to upgrade?
Thanks!
|
|
xequte
38615 Posts |
Posted - Jul 26 2023 : 23:03:24
|
Hi
Going from 6.3.0 I would not expect to see any significant compatibility issues.
1. Compile your project with the new version, if anything does not compile, check the "Updating and Compatibility" to see the updated code (probably less than 5% of projects will encounter anything)
2. Open any forms in your project that contain ImageEn components in case there are any changed event handlers. If there are, remove the old event handlers, add them again and insert the old code
3. Review all items in "Updating and Compatibility" to see if there is any of your code you need to check
http://www.imageen.com/help/Updating_and_Compatibility.html
Generally you should only need to install the new version of ImageEn (to the same folder as the old one) to update. Sometimes if files have been moved around in the past you might need to clean out old ImageEn files and then install (but I wouldn't worry about that unless you get an error when compiling):
https://www.imageen.com/support/faq.html#1
The code to edit pages of multi-page tiffs has not changed in any consequential way since 6.3.0, though there is a new TIEMultiBitmap that lets you manipulate the TIFF files in memory. What difficulty were you having previously.
Nigel Xequte Software www.imageen.com
|
|
|
Fábio Nascimento
Brazil
72 Posts |
Posted - Jul 27 2023 : 06:24:16
|
Hi xequte, I just bought the License Extension.
To acquire using ImageEn I use this:
ImageEnMView.Clear;
ImageEnMView.MIO.Acquire;
ImageEnMView.MIO.SaveToFileTIFF(diretorio_destino_final + nome_arquivo,True);
Let's say I scaned a document with 8 pages.
Now I need to add to pages after the last one, like
[do not change pages 1,2,3,4,5,6,7,8] [insert new_pages]), or
Now I need to insert pages after the page 2 of the existing document, like
[do not change pages 1,2] [insert new_pages] [plus the existing old numebered 3-8], or
I need to replace pages from a starting point, like
[do not change pages 1,2] [replace pages from this point (page 3)], or
I need to replace the entire document.
Using Kodak OCX componentes, I just need to set ImgScan.PageOption property to 1,2,3,4 or 5, call the acquire function and the component handles it all, returning the new file with the inserted/deleted/replaced pages.
I haven't find a way to do this using ImageEn.
Also, I work with some very large documents sometimes, and takes forever to manipulate the multipage TIFFs with hundreds of pages using ImageEn, for example:
Lets say I changed something on the page 6 of a document with a total of 300 pages, I need to to save all the 300 pages in order to save the change on only 1 page, I use this code:
iCount := ImageEnMView.ImageCount;
frm_progresso := Tfrm_progresso.Create(Self);
try
frm_progresso.total := iCount + 1;
frm_progresso.Show;
Application.ProcessMessages;
for i := 0 to iCount-1 do begin
ImageEnMView.EnsureImageLoaded(i);
frm_progresso.incrementa_progresso;
end;
ImageEnMView.MIO.SaveToFileTIFF(ImageEnMView.MIO.Params[ImageEnMView.SelectedImage].FileName);
frm_progresso.incrementa_progresso;
is_imagem_modificada := False;
with dm_ged do begin
qry_ged_digitalizacoes.Close;
qry_ged_digitalizacoes.SQL.Text :=
'select * from ged_digitalizacoes where id_digitalizacao = :id';
qry_ged_digitalizacoes.Params.ParamByName('id').DataType := ftInteger;
qry_ged_digitalizacoes.Params.ParamByName('id').Value := pqry_ged_digitalizacoesID_DIGITALIZACAO.AsInteger;
qry_ged_digitalizacoes.Open;
qry_ged_digitalizacoes.Edit;
//showmessage('admin: ' + ImgAdmin.Image + #13#13 + 'scan: ' + ImgScan.Image);
qry_ged_digitalizacoesQTDE_PAGINAS.AsInteger := ImageEnMView.ImageCount;
qry_ged_digitalizacoes.Post;
qry_ged_digitalizacoes.Close;
end;
finally
FreeAndNil(frm_progresso);
end;
Maybe I'm not doing things the best way they could be done, but that's what I was able to make it work back then when I developed the program.
Now I'm back to it trying to improve, looking for help :)
Thanks! |
|
|
Fábio Nascimento
Brazil
72 Posts |
Posted - Jul 27 2023 : 13:56:03
|
I don't know if you do this kind of thing, but if you do, could you set a price to make a demo for me that does:
1. Acquire from scanner and save a new document to multipage tiff files;
2. Load the scanned file, show thumbnails on the left and the current page on the right;
3. Have a button called INSERT, and insert new acquired pages after the current page shown and save;
4. Have a button called APPEND, and append new acquired pages to the end of the current ans save;
5. Have a button called REPLACE, that acquire new pages, and replace the pages starting at the one showing at the moment, for example:
5.1: We are showing a multipage tiff with 6 pages, and we are showing page number 3, when I click REPLACE, it starts acquiring from scanner, lets say, 2 pages, then the pages 3 and 4 of the current document are replaced by the ones that was just acquired.
5.2: We are showing a multipage tiff with 6 pages, and we are showing page number 3, when I click REPLACE, it starts acquiring from scanner, lets say, 8 pages, then the pages 3,4,5,6 of the current document are replaced by the ones that was just acquired, and the 2 last ones are inserted (because we acquired more pages than we can replace).
I can do all of these things with KODAK OCX componentes, just by setting the property to INSERT/APPEND/REPLACE.
Can this be done with ImageEn?
Pleas let me know if you can help me, I'm more than glad to pay for that, this is very important and very urgent to us!
Fábio
|
|
|
Fábio Nascimento
Brazil
72 Posts |
Posted - Jul 27 2023 : 14:23:52
|
Oh I forgot to say, I often scan documents with hundreds of pages, it can't take several minutes to manipulate them. |
|
|
xequte
38615 Posts |
|
Fábio Nascimento
Brazil
72 Posts |
Posted - Jul 28 2023 : 17:16:24
|
I figured that if I save the file to the local machine and then move the file to the server, it saves a lot more faster than saving direct to the server.
I don't know if this is a local issue or the component's, as when I save using the Kodak OCX componentes, it saves very fast direct to the server.
|
|
|
xequte
38615 Posts |
Posted - Jul 28 2023 : 20:38:02
|
Hi Fabio
If you are only saving once, then it is quickest to save directly to the server. If you are updating the file/saving multiple times, then it will be quicker to save to a temporary file then copy to the server.
Nigel Xequte Software www.imageen.com
|
|
|
Fábio Nascimento
Brazil
72 Posts |
Posted - Jul 29 2023 : 14:42:30
|
I believe I'm saving it only once, here is the code:
iCount := ImageEnMView.ImageCount;
frm_progresso := Tfrm_progresso.Create(Self);
try
frm_progresso.total := iCount + 1;
frm_progresso.Show;
Application.ProcessMessages;
for i := 0 to iCount-1 do begin
ImageEnMView.EnsureImageLoaded(i);
frm_progresso.incrementa_progresso;
end;
//ImageEnMView.MIO.SaveToFileTIFF(ImageEnMView.MIO.Params[ImageEnMView.SelectedImage].FileName);
temp_file := System.IOUtils.TPath.GetTempPath + '\' +
System.IOUtils.TPath.GetFileName(ImageEnMView.MIO.Params[ImageEnMView.SelectedImage].FileName);
ImageEnMView.MIO.SaveToFileTIFF(temp_file);
TFile.Copy(temp_file,ImageEnMView.MIO.Params[ImageEnMView.SelectedImage].FileName,True);
TFile.Delete(temp_file);
finally
FreeAndNil(frm_progresso);
end;
The commented line takes like 1 minute to save a document with 200 pages, and saving local then move to the server takes like 5 seconds.
Am I missing something? |
|
|
xequte
38615 Posts |
Posted - Jul 29 2023 : 18:37:34
|
Hi Fabio
Hmmm, we'll need to look into this. There may be something with the way the file is streamed to file. Is this a standard Windows server?
Nigel Xequte Software www.imageen.com
|
|
|
Fábio Nascimento
Brazil
72 Posts |
Posted - Jul 30 2023 : 04:35:55
|
Hi Nigel,
My server is a Dell T150 with Ubuntu Server 14.3.
Even saving files with 2-3 pages direct to the server takes a lot longer than saving local and moving the file.
I have a new server Dell T350 that i'll migrate to, I will try to save to this one to see how it goes.
Fábio |
|
|
xequte
38615 Posts |
Posted - Aug 09 2023 : 23:45:19
|
Hi Fabio
I can't reproduce this with a Windows server. Copying a 16MB 500 page TIFF file takes the same time whether saved locally then copied to the network, or saved directly to the network. Can you forward one of your TIFF files for testing.
Nigel Xequte Software www.imageen.com
|
|
|
|
Topic |
|
|
|