LEADTOOLS 入门教程: 使用 AWS Lambda 转换文档 – C# .NET Core

本文介绍在leadtools中,使用 AWS Lambda 转换文档,欢迎查阅~

本教程展示了如何配置和运行 .NET Core 文档服务。

概括 本教程介绍如何设置 AWS Lambda 以与 LEADTOOLS SDK 一起使用以及如何使用 .NET Core 转换文档。
完成时间 60分钟
平台 下载教程项目 (774 KB)
IDE Visual Studio 2019、2022、AWS Lambda Visual Studio 扩展
开发许可证 下载 LEADTOOLS

在学习从 LEADDocument中添加和删除页面 – C# .NET Core 教程之前,通过查看添加引用和设置许可教程来熟悉创建项目的基本步骤。

完成 Visual Studio 的 AWS 设置;

要设置开发环境以在 Visual Studio 中使用 AWS,请完成来自 Amazon 的以下 2 个教程:

  • 在 AWS Toolkit for Visual Studio 中使用 AWS Lambda 模板
  • 在 AWS Toolkit for Visual Studio 中使用 AWS Lambda 项目

完成这些教程后,应安装适用于 Visual Studio 的 AWS 工具包,并基本了解如何为 .NET Core 创建新的 AWS Lambda 项目并发布到 AWS。

创建一个空函数

在 Visual Studio 中,创建一个新的AWS Lambda 项目(.NET Core – C#)项目。为项目命名和位置,然后单击创建

选择一个空函数并单击确定

添加 LEADTOOLS 参考

所需的参考取决于项目的目的。对于这个项目,需要以下 NuGet 包:

  • Leadtools.Document.Sdk

在解决方案资源管理器中右键单击 C# 项目,然后选择管理 NuGet 包…。

浏览LEADTOOLS,然后选择Leadtools.Document.SdkNuGet 包并安装它。接受 LEAD 的最终用户许可协议。

有关特定格式所需的编解码器 DLL 的完整列表,请参阅文件格式支持。

添加 LEADRequest.cs 类

右键单击 C# 项目并选择Add,然后选择Class。为其命名LEADRequest.cs并单击添加

将以下内容添加到using块中:

【C#】

using Leadtools.Document.Writer;

【C#】

public class LEADRequest{public string InputUrl { get; set; }public DocumentFormat DocumentFormat { get; set; }public LEADRequest(){}}
添加 LEADLambdaHandler 类

右键单击 C# 项目并选择Add,然后选择Class。为其命名LEADLambdaHandler.cs并单击添加。

在新类中,将以下内容添加到using块中:

【C#】

using System;using System.Diagnostics;using System.IO;using System.Net.Http;using Amazon.Lambda.Core;using Leadtools;using Leadtools.Document;using Leadtools.Document.Converter;using Leadtools.Document.Writer;using Leadtools.Ocr;

复制下面的代码以将所需的功能添加到类中:

【C#】

public class LEADLambdaHandler{// Global VariablesIOcrEngine ocrEngine;DocumentConverter documentConverter;static HttpClient httpClient = new HttpClient();// Constructor which handles all initialization to make sure the function is as fast as possible once it is warmed uppublic LEADLambdaHandler(){InitEnvironment();Platform.LibraryPath = "/opt/native-runtimes/";InitLEADTOOLS();}// Method which initializes the Lambda environment for use by the LEADTOOLS SDKvoid InitEnvironment(){// Set the LD_LIBRARY_PATH in function console to include:// /var/lang/lib:/lib64:/usr/lib64:/var/runtime:/var/runtime/lib:/var/task:/var/task/lib:/opt/lib:/tmpExecuteBashCommand("ln -s /lib64/libdl.so.2 /tmp/libdl.so");}// Initialize the LEADTOOLS SDK Classesvoid InitLEADTOOLS(){SetLicense();RasterDefaults.TemporaryDirectory = "/tmp";RasterDefaults.SetResourceDirectory(LEADResourceDirectory.Fonts, "/opt/ShadowFonts");ocrEngine = OcrEngineManager.CreateEngine(OcrEngineType.LEAD);ocrEngine.Startup(null, null, "/tmp", "/opt/OcrLEADRuntime");documentConverter = new DocumentConverter();documentConverter.SetOcrEngineInstance(ocrEngine, true);}// Helper method for executing shell scripts in the Lambda environmentstring ExecuteBashCommand(string command){command = command.Replace("""

来源:慧都

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年10月12日
下一篇 2022年10月12日

相关推荐

发表回复

登录后才能评论