activities
latest
false
UiPath logo, featuring letters U and I in white

Document Understanding 活动

上次更新日期 2024年12月5日

OCR 代码活动类

定义

  • 命名空间: UiPath.OCR.Contracts.Activities
  • 程序集: UiPath.OCR.Contracts

描述

必须实现的抽象类,才能从 Workflow Foundation 框架构造 CodeActivity

成员

方法
  • BeforeExecute(System.Activities.CodeActivityContext) System.Collections.Generic.Dictionary<string, object> - 覆盖此方法以计算并提供除图像参数以外的所有活动输入参数,并以字典形式返回活动输入参数,其中键为参数名称,值为参数值。
    注意: 在设计时,如果没有可用的上下文,则方法的参数为 null。 在这种情况下,无法读取活动参数,因此您可能需要为其提供默认值。
  • Execute(System.Activities.CodeActivityContext) System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<System.Drawing.Rectangle, string>>
  • OCR 代码活动 ()
  • OnSuccess(System.Activities.CodeActivityContext, UiPath.OCR.Contracts.DataContracts.OCRResult) void OnSuccess(System.Activities.CodeActivityContext context, UiPath.OCR.Contracts.DataContracts.OCRResult result) - 计算 OCR 结果后调用此方法。 它可用于设置输出参数或任何其他最终操作。
  • PerformOCRAsync(System.Drawing.Image, System.Collections.Generic.Dictionary<string, object>, System.Threading.CancellationToken) System.Threading.Tasks.Task<UiPath.OCR.Contracts.DataContracts.OCRResult> - 处理图像并返回提取的文本信息。 “选项” 参数是一个活动参数字典,其中键为参数名称,值为参数值。
属性
  • ExtractWords - 获取或设置是否应提取单词。
  • Image System.Activities.InArgument<System.Drawing.Image> - 要处理的图像。
  • Language System.Activities.InArgument<string> -
  • Output System.Activities.OutArgument<UiPath.OCR.Contracts.OcrActivityResult> -
  • Text System.Activities.OutArgument<UiPath.OCR.Contracts.OcrActivityResult> -

代码示例

[DisplayName("Sample OCRCodeActivity")]
internal class SampleOCRCodeActivity : OCRCodeActivity
    {
        public InArgument<string> CustomInput { get; set; }

        public OutArgument<string> CustomOutput { get; set; }

        public override Task<OCRResult> PerformOCRAsync(Image image, Dictionary<string, object> options, CancellationToken ct)
        {
            string customInput = options[nameof(CustomInput)] as string;
            string text = $"Text from {nameof(SampleOCRCodeActivity)} with custom input: {customInput}";
            return Task.FromResult(OCRResultHelper.FromText(text));
        }

        protected override void OnSuccess(CodeActivityContext context, OCRResult result)
        {
            CustomOutput.Set(context, $"Custom output: '{result.Text}' has {result.Words.Length} words.");
        }

        protected override Dictionary<string, object> BeforeExecute(CodeActivityContext context)
        {
            return new Dictionary<string, object>
            {
                { nameof(CustomInput), CustomInput.Get(context) }
            };
        }
    }[DisplayName("Sample OCRCodeActivity")]
internal class SampleOCRCodeActivity : OCRCodeActivity
    {
        public InArgument<string> CustomInput { get; set; }

        public OutArgument<string> CustomOutput { get; set; }

        public override Task<OCRResult> PerformOCRAsync(Image image, Dictionary<string, object> options, CancellationToken ct)
        {
            string customInput = options[nameof(CustomInput)] as string;
            string text = $"Text from {nameof(SampleOCRCodeActivity)} with custom input: {customInput}";
            return Task.FromResult(OCRResultHelper.FromText(text));
        }

        protected override void OnSuccess(CodeActivityContext context, OCRResult result)
        {
            CustomOutput.Set(context, $"Custom output: '{result.Text}' has {result.Words.Length} words.");
        }

        protected override Dictionary<string, object> BeforeExecute(CodeActivityContext context)
        {
            return new Dictionary<string, object>
            {
                { nameof(CustomInput), CustomInput.Get(context) }
            };
        }
    }
  • 定义
  • 描述
  • 成员
  • 代码示例

此页面有帮助吗?

获取您需要的帮助
了解 RPA - 自动化课程
UiPath Community 论坛
Uipath Logo White
信任与安全
© 2005-2024 UiPath。保留所有权利。