DocumentConverter支持带有状态更新的文档转换。此功能利用LEADTOOLS缓存来:
转换缓存中的文档并自动上传。
在单独的进程中执行操作(如果缓存允许多个进程访问相同的值)。
使用缓存保存和获取转换的状态。
运行带有status的转换的主要类是StatusJobDataRunner它使用了StatusJobData对于每个转换。使用状态作业转换器的应用程序的简单工作流如下:
//创建一个新的状态作业数据运行器:
statusjobdatarrunner =新StatusJobDataRunner ();
//创建一个新的状态job data:
StatusJobData jobData =新StatusJobData ();
//加满
jobData。InputDocumentId =“MyDocumentId”;
/ /等。
//准备跑者
runner.Prepare (jobData);
//运行它
runner.Run ();
runner.Dispose ();
此工作流执行转换作业,但不允许获取作业的状态信息。要做到这一点,修改代码如下:
//创建一个新的状态作业数据运行器:
statusjobdatarrunner =新StatusJobDataRunner ();
//创建一个新的状态job data:
StatusJobData jobData =新StatusJobData ();
//加满
jobData。InputDocumentId =“MyDocumentId”;
/ /等。
//准备跑者
runner.Prepare (jobData);
//创建一个线程来查询作业状态
AutoResetEvent finished =新AutoResetEvent (假);
ThreadPool。QueueUserWorkItem ((对象州)= >
{
而(结束)
{
//获取作业的状态
StatusJobData StatusJobData = statusjobdatarrunner。QueryJobStatus (statusCache jobData。UserToken jobData.JobToken);
//对info执行一些操作
控制台。WriteLine (“状态是”+ statusJobData。
ShowJobStatus (“工作”, statusJobData.JobStatus);
如果(statusJobData.IsCompleted)
{
//通知任务完成
finished.Set ();
}
thread . sleep (100);
}
});
//运行它
runner.Run ();
runner.Dispose ();
finished.WaitOne ();
//任务完成
StatusJobData可以仅使用简单的字符串参数进行初始化,因此,应用程序可以在一个进程中运行作业,并在一个完全独立的进程中执行线程中上述状态查询。指StatusJobDataRunner对于一个完整的例子。
当转换开始时,运行程序将创建一个新的缓存项,Region/Key设置为UserToken/JobToken分别将值设置为的副本StatusJobData输入对象。随着作业的进行,运行程序将使用最后状态和时间戳更新缓存中的此项。应用程序可以使用QueryJobStatus随时获取最新版本的StatusJobData从缓存中获取转换状态的更新值和可能发生的任何错误。的价值IsCompleted将真正的当流道完成转换时。
StatusJobData包含各种成员,可以组织成以下部分:
成员 | 描述 |
---|---|
UserToken和JobToken | 用户和作业的唯一标识符。它们用作缓存区域和键,用于为作业创建唯一标识符。 |
StatusCacheConfiguration,StatusCachePolicy和StatusCache | 标识用于存储作业状态的缓存和策略。 |
用户数据 | 与作业关联的任何用户定义数据 |
工作 | 作业的最后状态,是已启动、已完成还是已终止。 |
JobStatusPageNumber,JobStatusMessage | 关于最后一个作业状态的额外信息 |
IsCompleted | 确定工作是否已完成 |
中止 | 允许用户中止正在运行的作业 |
JobStartedTimestamp,JobCompletedTimestamp,JobStatusTimestamp,QueryJobStatusTimestamp | 各种作业操作的时间戳 |
errormessage | 保存转换期间发生的任何错误消息 |
UserToken和JobToken必须由应用程序指定,并且将它们组合应创建唯一字符串。内部,跑步者将使用UserToken和JobToken随着地区和关键添加到缓存中的缓存项的。
状态缓存用于存储和更新状态StatusJobData对象传递给运行器。可以是存储在的有效缓存实例StatusCache,或传递给的缓存配置字符串StatusCacheConfiguration.如果所有这些值都是零,则运行程序将使用类中的下一个缓存InputCache或OutputCache),换句话说,应用程序可以使用相同的缓存(在所有三个参数中设置它,或者只在一个参数中设置它,其余的为空),也可以根据应用程序的配置为每个操作使用不同的缓存。
工作将被设置为其中一个DocumentConverterJobStatus枚举成员。
JobStatusPageNumber和JobStatusMessage将包含有关上次作业状态的额外信息。
IsCompleted将假只要运行程序正在执行转换。它将被设置为真正的当作业完成(无论成功与否)时,状态将包含成功或流产取决于转换的结果)。如果出现错误,errormessage将包含发生的一个或多个错误的有用提示和消息。
可以查询各种时间戳,以检查转换的运行状况以及转换是否仍在正确执行。
成员 | 描述 |
---|---|
DocumentConverter,DocumentConverterOptions | 用于此作业的文档转换器或其选项 |
DocumentWriterOptions | 文档编写者用于此作业的选项 |
OcrEngineName,OcrEngineStartupParameters,OcrEngineSettings | 用于此作业的OCR引擎或其选项 |
跑步者使用DocumentConverter执行操作。控件的实例可以使用上面描述的选项DocumentConverter或简单的选项(以XML形式)来使用。
成员 | 描述 |
---|---|
InputCache,InputCacheConfiguration | 标识用于保存输入文档的缓存。 |
InputDocumentId | 要转换的源文档的ID |
InputDocumentFirstPageNumber,InputDocumentLastPageNumber | 要转换的文档的可选第一和最后页码 |
这些成员必须初始化为要转换的缓存中输入文档的信息。
成员 | 描述 |
---|---|
OutputCache,OutputCacheConfiguration,OutputCacheItemPolicy | 标识用于存储输出文档的缓存和策略。 |
OutputDocumentID | 用于输出文档的可选ID |
OutputDocumentUri | 上传用于输出文档的URI |
OutputDocumentName | 分配给输出文档的可选名称 |
转换的结果输出文档被上传到缓存中。这些成员定义如何存储文档。
成员 | 描述 |
---|---|
DocumentFormat,RasterImageFormat,RasterImageBitsPerPixel | 用于输出文档的格式 |
JobName | 可选作业名称 |
AnnotationsMode | 标注输出方式 |
最后,本节指定要使用的输出文档类型和注释模式。
有关完整示例,请参阅StatusJobDataRunner.
帮助收藏
光栅net|C API|c++类库|HTML5 JavaScript
文档net|C API|c++类库|HTML5 JavaScript
医疗net|C API|c++类库|HTML5 JavaScript
医疗网页查看器net
188宝金博怎么下载
支持的平台上
.NET、Java、Android和iOS/macOS程序集
C API/ c++类库
HTML5 JavaScript库
您的邮件已经发送到支持!应该有人保持联系!如果你有急事,请回来再谈。
聊天时间:
周一至周五,上午8:30至下午6点
感谢您的反馈!
请重新填写表格以开始新的聊天。
所有代理当前都处于离线状态。
聊天时间:
星期一至星期五
上午8:30 -下午6点
要联系我们,请填写此表格,我们将通过电子邮件与您联系。