本教程展示了如何配置和运行 .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进行处理,非常感谢!