|
15 | 15 | - **线程池管理**:简单高效的线程池实现,支持任务队列和任务等待 |
16 | 16 | - **JavaScript执行**:支持两种执行方式,JintRunner(纯.NET实现,无需Node.js)和NodeJsRunner(需要Node.js),支持代码字符串和文件执行、方法调用、变量管理、函数调用等丰富功能 |
17 | 17 | - **身份证验证**:提供中国身份证号码验证、地址提取、性别识别等功能,支持18位身份证号码的完整校验 |
18 | | -- **OCR 识别**:集成 UmiOCR,支持图片文字识别,可配置识别语言、输出格式、角度检测、忽略区域等参数 |
| 18 | +- **OCR 识别**:集成 UmiOCR,支持图片与文档文字识别,提供图片 OCR(`OCR`)与文档 OCR(`Doc`),可配置识别语言、输出格式、角度检测、忽略区域等参数 |
19 | 19 | - **Base64 编码**:提供文件、字节数组、字符串等多种数据格式的 Base64 编码功能 |
20 | 20 | - **.NET Standard 2.1兼容**:支持.NET Core、.NET Framework和其他兼容平台 |
21 | 21 | - **模块化设计**:各功能模块相互独立,便于扩展和维护 |
@@ -533,41 +533,37 @@ else |
533 | 533 | using WodToolkit.src.UmiOCR; |
534 | 534 | using System.Collections.Generic; |
535 | 535 |
|
536 | | -// 1. 创建 UmiOCR 实例(默认连接本地服务 http://127.0.0.1:1224) |
537 | | -var umiOcr = new UmiOCR(); |
| 536 | +// 1. 创建图片 OCR 实例(默认连接本地服务 http://127.0.0.1:1224) |
| 537 | +var ocr = new OCR(); |
538 | 538 |
|
539 | | -// 2. 基本 OCR 识别(使用默认参数) |
540 | | -string result = umiOcr.Ocr("image.jpg"); |
541 | | -Console.WriteLine($"识别结果: {result}"); |
| 539 | +// 2. 基本图片 OCR 识别(使用默认参数) |
| 540 | +string imgResult = ocr.Ocr("image.jpg"); |
| 541 | +Console.WriteLine($"识别结果: {imgResult}"); |
542 | 542 |
|
543 | 543 | // 3. 指定识别语言和输出格式 |
544 | | -string result2 = umiOcr.Ocr("image.jpg", language: "简体中文", format: "json"); |
545 | | -Console.WriteLine($"JSON 格式结果: {result2}"); |
| 544 | +string imgResult2 = ocr.Ocr("image.jpg", language: "简体中文", format: "json"); |
| 545 | +Console.WriteLine($"JSON 格式结果: {imgResult2}"); |
546 | 546 |
|
547 | 547 | // 4. 启用角度检测 |
548 | | -string result3 = umiOcr.Ocr("image.jpg", angle: true); |
| 548 | +string imgResult3 = ocr.Ocr("image.jpg", angle: true); |
549 | 549 |
|
550 | 550 | // 5. 指定忽略区域(忽略图片中的某些区域) |
551 | 551 | var ignoreAreas = new List<int[][]> |
552 | 552 | { |
553 | 553 | new int[][] { new int[] { 10, 20 }, new int[] { 100, 200 } }, // 第一个忽略区域 |
554 | 554 | new int[][] { new int[] { 150, 250 }, new int[] { 300, 400 } } // 第二个忽略区域 |
555 | 555 | }; |
556 | | -string result4 = umiOcr.Ocr("image.jpg", ignoreArea: ignoreAreas); |
557 | | - |
558 | | -// 6. 完整参数示例 |
559 | | -string result5 = umiOcr.Ocr( |
560 | | - file: "image.jpg", |
561 | | - language: "简体中文", |
562 | | - format: "text", |
563 | | - parser: "merge_line", |
564 | | - angle: true, |
565 | | - ignoreArea: ignoreAreas |
566 | | -); |
567 | | - |
568 | | -// 7. 使用自定义 UmiOCR 服务地址 |
569 | | -var customOcr = new UmiOCR("http://192.168.1.100:1224"); |
570 | | -string customResult = customOcr.Ocr("image.jpg"); |
| 556 | +string imgResult4 = ocr.Ocr("image.jpg", ignoreArea: ignoreAreas); |
| 557 | + |
| 558 | +// 6. 文档 OCR(PDF 等):仅需传入文件路径 |
| 559 | +var doc = new Doc(); |
| 560 | +var docResult = doc.Recognize("document.pdf"); |
| 561 | + |
| 562 | +// 想要保存结果文件路径: |
| 563 | +Console.WriteLine(docResult.SavedFilePath); |
| 564 | + |
| 565 | +// 想要识别文本内容: |
| 566 | +Console.WriteLine(docResult.TextContent); |
571 | 567 | ``` |
572 | 568 |
|
573 | 569 | ### Base64 编码示例 |
@@ -611,7 +607,8 @@ WodToolKit |
611 | 607 | │ ├── JintRunner # Jint JavaScript执行器(纯.NET) |
612 | 608 | │ └── NodeJsRunner # Node.js脚本执行器 |
613 | 609 | ├── UmiOCR/ # OCR 识别 |
614 | | -│ └── UmiOCR # UmiOCR 集成 |
| 610 | +│ ├── OCR # 图片 OCR(/api/ocr) |
| 611 | +│ └── Doc # 文档 OCR(/api/doc) |
615 | 612 | └── Common/ # 通用工具 |
616 | 613 | ├── IDCard # 身份证验证与信息提取 |
617 | 614 | └── Common # 通用工具方法(Base64编码等) |
|
0 commit comments