I loaded this project in Delphi 11.1 Alexandria:
\TMS FNC WX Pack\Demos\VCL\OCRHelper
When loading a new image for OCR, the existing PNG image is not loaded in TMSFNCWXOCRHelper1:
procedure TDemo.LoadImageClick(Sender: TObject);
begin
OpenDialog1.InitialDir := GetCurrentDir;
OpenDialog1.Filter := 'Images |*.PNG;*.JPEG;*.JPG';
if OpenDialog1.Execute then
begin
TMSFNCWXOCRHelper1.Bitmap.CreateFromFile(OpenDIalog1.Files[0]);
// Bitmap not loaded:
CodeSite.Send('TDemo.LoadImageClick: TMSFNCWXOCRHelper1.Bitmap', TMSFNCWXOCRHelper1.Bitmap);
end;
end;
What is wrong here?
This fixes the bug in the demo:
procedure TDemo.LoadImageClick(Sender: TObject);
begin
OpenDialog1.InitialDir := GetCurrentDir;
OpenDialog1.Filter := 'Images |*.PNG;*.JPEG;*.JPG';
if OpenDialog1.Execute then
begin
if Assigned(TMSFNCWXOCRHelper1.Bitmap) then
begin
TMSFNCWXOCRHelper1.Bitmap.LoadFromFile(OpenDIalog1.Files[0]);
CodeSite.Send('TDemo.LoadImageClick: LOADED', OpenDIalog1.Files[0]);
end
else
begin
TMSFNCWXOCRHelper1.Bitmap.CreateFromFile(OpenDIalog1.Files[0]);
CodeSite.Send('TDemo.LoadImageClick: CREATED', OpenDIalog1.Files[0]);
end;
end;
end;
However, clearing the Bitmap seems to not work at all:
procedure TDemo.ClearButtonClick(Sender: TObject);
begin
TMSFNCWXOCRHelper1.ClearAll;
end;
The button caption is MISLEADING: It clears only the FRAMES created by the user!
The OCR result for TestImage2.jpg is very bad! How can it be optimized?
Thank you for notifying us we have fixed the demo on our side. TestImage2 is used to show that not every font can be used for OCR, it's expected to have a bad result.