Sub AddImageFileFromMemory( _ HGlobal As Int64, _ Callback As IImagePasswordCallback, _ [PrepareMode As IPrepareImageMode = Nothing], _ [PageIndices As IIntsCollection = Nothing], _ [FileName As String = "0"] _)
DataPtr[in] Linux: 이미지 파일이 들어 있는 메모리 블록의 주소를 지정합니다.DataSize[in] Linux: 메모리에 로드된 이미지의 크기를 지정합니다.HGlobal[in] macOS 및 Windows: 이미지 파일이 들어 있는 메모리 블록의 HGLOBAL 핸들을 지정합니다. 이 핸들은 __int64로 전달됩니다. 이 핸들은 유효해야 합니다.Callback[in] 이 변수는 PDF 형식 이미지에 액세스할 때 발생할 수 있는 암호 요청을 처리하는 데 사용되는 ImagePasswordCallback 유형의 사용자 구현 객체 인터페이스를 참조합니다. 이 매개변수는 선택 사항이므로 0일 수 있으며, 이 경우 암호로 보호된 파일은 처리할 수 없습니다.PrepareMode[in] 이미지가 열리는 동안 전처리되는 방식을 지정하는 PrepareImageMode 객체를 참조합니다. 이 매개변수는 선택 사항이므로 0일 수 있으며, 이 경우 기본 매개변수가 사용되거나 profile이 로드된 경우 해당 프로필에 설정된 매개변수가 사용됩니다.PageIndices[in] 이 매개변수는 문서에 추가할 페이지의 인덱스를 지정하는 IntsCollection 객체를 참조합니다. 중복된 인덱스는 허용되지 않습니다. 동일한 페이지를 여러 번 추가하려면 이 메서드를 여러 번 호출하십시오. 이 매개변수는 선택 사항이므로 0일 수 있으며, 이 경우 열린 파일의 모든 페이지가 문서에 추가됩니다.FileName[in] 이미지 파일의 이름을 지정합니다. 이 정보는 파일 형식이 명시적으로 지정되지 않은 경우 이를 판별하는 데 사용되며, 오류 메시지에도 사용됩니다. 이 매개변수는 선택 사항이므로 0일 수 있습니다.오피스 형식을 열려면(Linux 및 Windows만 해당) 확장자를 포함한 문서 이름을 전달하십시오.
// 이 샘플에서는 이미지 파일을 메모리에 로드한 다음// 처리를 위해 FineReader Engine에 추가하는 방법을 보여줍니다...// 이 코드 샘플에서는 메모리에 있는 파일을 처리하기 위해 System.IO 네임스페이스를 사용합니다using System.IO;// 그리고 메모리 블록을 다루기 위해 System.Runtime.InteropServices 네임스페이스를 사용합니다using System.Runtime.InteropServices;...// Engine 객체가 이미 생성되어 있다고 가정합니다// 문서 생성FREngine.IFRDocument document = engine.CreateFRDocument();// 원본 이미지string imagePath = "D:\\Demo.tif";FileInfo file = new FileInfo(imagePath);// 원본 이미지 길이long len = file.Length;// 이미지 열기BinaryReader br = new BinaryReader(File.Open(imagePath, FileMode.Open));// 현재 stream에서 지정된 바이트 수를 바이트 배열로 읽어옵니다byte[] byteArray = br.ReadBytes((int)len);// 메모리 블록 할당IntPtr handle = Marshal.AllocHGlobal((int)len);// 비관리 메모리 포인터의 데이터를 관리되는 32비트 부호 있는 정수 배열에 복사합니다Marshal.Copy(byteArray, 0, handle, (int)len);// 메모리에서 문서에 이미지 추가document.AddImageFileFromMemory((Int64)handle, null, null, null, "Demo.tif");// 프로세스의 비관리 메모리에서 이전에 할당한 메모리 해제Marshal.FreeHGlobal(handle);// 문서 인식document.Process(null);