DocumentConverter支持文档转换状态更新。这个特性利用LEADTOOLS缓存:
转换文档在缓存中并自动上传。
执行操作在一个单独的进程(如果缓存允许多个进程访问相同的值)。
使用缓存来保存和获得的状态转换。
主类为运行状态的转换StatusJobDataRunner使用的实例StatusJobData对于每一个转换。一个简单的工作流应用程序的使用状态转换器工作如下:
/ /创建一个新的工作状态数据跑:
StatusJobDataRunner跑=新StatusJobDataRunner ();
/ /创建一个新的状态工作数据:
StatusJobData jobData =新StatusJobData ();
/ /把它填平
jobData。InputDocumentId =“MyDocumentId”;
/ /等。
/ /准备跑
runner.Prepare (jobData);
/ /运行它
runner.Run ();
runner.Dispose ();
这个工作流执行转换工作,但不允许在工作中获取状态信息。要做到这一点,修改代码如下:
/ /创建一个新的工作状态数据跑:
StatusJobDataRunner跑=新StatusJobDataRunner ();
/ /创建一个新的状态工作数据:
StatusJobData jobData =新StatusJobData ();
/ /把它填平
jobData。InputDocumentId =“MyDocumentId”;
/ /等。
/ /准备跑
runner.Prepare (jobData);
/ /创建一个线程来查询作业状态
AutoResetEvent完成=新AutoResetEvent (假);
ThreadPool.QueueUserWorkItem ((对象状态)= >
{
而(结束)
{
/ /得到的状态工作
StatusJobData StatusJobData = StatusJobDataRunner。QueryJobStatus (statusCache jobData。UserToken jobData.JobToken);
/ /做一些信息
Console.WriteLine (“状态”+ statusJobData。
ShowJobStatus (“工作”,statusJobData.JobStatus);
如果(statusJobData.IsCompleted)
{
/ /通知的工作是完成
finished.Set ();
}
thread . sleep (100);
}
});
/ /运行它
runner.Run ();
runner.Dispose ();
finished.WaitOne ();
/ /完成的工作
StatusJobData可以只使用简单的字符串参数初始化,因此,应用程序可以运行工作从一个进程和线程中执行上述状态查询一个完全独立的过程。指StatusJobDataRunner一个完整的示例。
转换开始时,运动员将创建一个新的缓存项与区域/关键的设置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
医疗Web查看器net
188宝金博怎么下载
支持的平台上
net, Java, Android和iOS / macOS组件
C / c++类库的API
HTML5 JavaScript库
你的邮件已经发送到支持!有人应该联系!如果你的问题是紧急请回到聊天。
聊天时间:
周一——周五,上午6点等
谢谢你的反馈!
请填写表单重新开始一个新的聊天。
所有代理目前离线。
聊天时间:
周一-周五
早上8:30 - 6点
联系我们请填写这张表格,我们将通过电子邮件联系你。