|           
 
 复制代码// 第一个示例:获取屏幕截图并进行 OCR 文字识别(简体中文)
var img1 = screen.screenShotFull();
var ocr1 = img1.MLKitOcr('zhs');
var text1 = ocr1.getAllString();
printl(text1);
img1.recycle();
/*
说明:
- 这是一个最基本的 OCR 示例。
- 使用 MLKitOcr 方法通过简体中文词库识别截图中的文字。
- 最终输出识别到的全文本信息。
*/
// 第二个示例:指定区域内的 OCR 文字识别(中文)
var img2 = screen.screenShotFull();
var ocrRegion2 = [0, 0.2, 1, 0.6];
var ocrResult2 = img2.MLKitOcrRect('zh', ocrRegion2);
var recognizedText2 = ocrResult2.getAllString();
printl("OCR识别结果: " + recognizedText2);
img2.recycle();
/*
说明:
- 此示例中,OCR 定义了一个特定的屏幕区域来识别文本,避免了全屏识别的开销。
- 使用 MLKitOcrRect 方法优化了识别区域。
*/
// 第三个示例:使用 PaddleOCR 识别并查找特定文本
var img3 = screen.screenShotFull();
var ocrResult3 = img3.paddleOCR(640, [0, 0, 1, 1]);
var target3 = ocrResult3.findIncludeText("雷电");
if (target3) {
    target3.hidClick();
    printl("成功点击目标区域: 雷电");
} else {
    printl("目标区域未找到: 雷电");
}
img3.recycle();
/*
说明:
- 示例使用 PaddleOCR 技术识别文本。
- 识别完成后,查找特定文本,并对找到目标进行点击操作。
*/
// 第四个示例:全屏 OCR 查找文本内容并点击
var img4 = screen.screenShotFull();
var ocrResult4 = img4.paddleOCR(640, [0, 0, 1, 1]);
var target4 = ocrResult4.findIncludeText("雷电");
if (target4) {
    target4.click();
} else {
    printl("未找到指定文本");
}
img4.recycle();
/*
说明:
- 该示例与第三个类似,但更高效地处理了查找和目标动作操作。
*/
// 第五个示例:查找包含目标文字的多个区域
var img5 = screen.screenShotFull();
var ocrResult5 = img5.MLKitOcr('zh');
var targets5 = ocrResult5.findIncludeTexts("雷电");
if (targets5.length > 0) {
    targets5.forEach(target => {
        target.click();
    });
} else {
    printl("未找到指定文本");
}
img5.recycle();
/*
说明:
- 查找包含目标文字的多个区域,返回所有目标的列表。
- 遍历所有目标,逐一对其执行点击操作。
*/
// 第六个示例:获取 OCR 识别到的所有文本并打印
var img6 = screen.screenShotFull();
var ocrResult6 = img6.paddleOCR(640, [0, 0, 1, 1]);
var allText6 = ocrResult6.getAllString();
if (!allText6) {
    printl("未检测到任何文本");
} else {
    printl("检测到的文本内容: " + allText6);
}
img6.recycle();
/*
说明:
- 示例展示如何提取 OCR 识别结果中的所有字符信息。
*/
// 第七个示例:通过 MLKitOcr 完全读出屏幕文字
var img7 = screen.screenShotFull();
var ocrResult7 = img7.MLKitOcr('zh');
printl(ocrResult7.getAllString());
img7.recycle();
/*
说明:
- 示例使用 MLKitOcr 在全屏范围内提取所有文本信息。
*/
// 第八个示例:获取 JSON 格式的 OCR 识别结果
var img8 = screen.screenShotFull();
var ocrResult8 = img8.MLKitOcr('zh');
var jsonResult8 = ocrResult8.getJson();
printl(JSON.stringify(jsonResult8, null, 2));
img8.recycle();
/*
说明:
- 此示例展示了如何将 OCR 结果以 JSON 格式获取。
*/
// 第九个示例:获取 OCR 的 JSON 表示
var img9 = screen.screenShotFull();
var ocrResult9 = img9.MLKitOcr('zh');
var ocrJson9 = ocrResult9.getJson();
printl("OCR 结果 JSON: " + JSON.stringify(ocrJson9));
img9.recycle();
/*
说明:
- 将 OCR 输出结果以 JSON 格式显示,便于程序进一步处理。
*/
// 第十个示例:OpenCV OCR 使用
var mat10 = screen.screenShot(720, 1280, 100).getMat();
var seek10 = opencv.OCR(mat10, '自己的库.ocr', 0.95, 0);
if (seek10) {
    printl(seek10.findIncludeText('蜂'));
} else {
    printl("未找到了");
}
/*
说明:
- 使用 OpenCV 库执行 OCR,匹配的置信度为 0.95。
- 根据内容查找包含特定文本的区域。
*/
// 第十一个示例:OpenCV OCR 扩展功能使用
var seek11 = opencv.OCREx('多点比色.cv');
if (seek11) {
    printl(seek11.findIncludeText('雷电模拟器'));
} else {
    printl("未找到了");
}
var seek11Alt = opencv.OCREx('多点比色.cv');
if (opencv.checkColorsEx('多点比色.cv')) {
    printl(seek11Alt.getAllString());
} else {
    printl("未找到了");
}
/*
说明:
- 使用 opencv.OCREx 对指定的 cv 文件进行 OCR 识别。
- 扩展功能 checkColorsEx 用于进一步处理颜色匹配和文本识别结果。
*/
将说明单独列在代码块下面。 //第一个var img = screen.screenShotFull();var ocr = img.MLKitOcr('zhs');var text = ocr.getAllString();printl(text);img.recycle();
 
 说明:截取全屏截图,使用 MLKitOcr(简体中文)进行 OCR 识别,获取识别到的所有文字,并打印结果。最后释放图片资源。 //第二个var img = screen.screenShotFull();var ocrRegion = [0, 0.2, 1, 0.6];var ocrResult = img.MLKitOcrRect('zh', ocrRegion);var recognizedText = ocrResult.getAllString();printl("OCR识别结果: " + recognizedText);img.recycle();
 
 说明:定义屏幕中特定区域作为 OCR 识别的范围,使用 MLKitOcrRect 进行区域内的文字识别,并打印结果。释放图片资源。 //第三个var img = screen.screenShotFull();let ocrResult = img.paddleOCR(640, [0, 0, 1, 1]);var target = ocrResult.findIncludeText("雷电");if (target) {    target.hidClick();    printl("成功点击目标区域: 雷电");} else {    printl("目标区域未找到: 雷电");}img.recycle();
 
 说明:全屏截图,使用 paddleOCR 进行 OCR 识别,全屏范围包含的输出结果中查找包含“雷电”的目标,并点击目标区域。 //第四个let img = screen.screenShotFull();let ocrResult = img.paddleOCR(640, [0, 0, 1, 1]);let target = ocrResult.findIncludeText("雷电");if (target) {    target.click();} else {    printl("未找到指定文本");}img.recycle();
 
 说明:与第三个类似,全屏 OCR 识别,寻找包含“雷电”的文本目标并执行点击操作。 //第五个let img = screen.screenShotFull();let ocrResult = img.MLKitOcr('zh');let targets = ocrResult.findIncludeTexts("雷电");if (targets.length > 0) {    targets.forEach(target => {        target.click();    });} else {    printl("未找到指定文本");}img.recycle();
 
 说明:全屏使用 MLKitOcr 执行 OCR 识别,寻找多个包含特定文字(如“雷电”)的目标,并依次点击。 //第六个let img = screen.screenShotFull();let ocrResult = img.paddleOCR(640, [0, 0, 1, 1]);let allText = ocrResult.getAllString();if (!allText) {    printl("未检测到任何文本");} else {    printl("检测到的文本内容: " + allText);}img.recycle();
 
 说明:全屏截图后,通过 paddleOCR 获取屏幕内所有的文字信息,并打印检测到的内容。 //第七个let img = screen.screenShotFull();let ocrResult = img.MLKitOcr('zh');printl(ocrResult.getAllString());img.recycle();
 
 说明:截屏并调用 MLKitOcr,直接获取所有识别到的字符串并打印。 //第八个let img = screen.screenShotFull();let ocrResult = img.MLKitOcr('zh');let jsonResult = ocrResult.getJson();printl(JSON.stringify(jsonResult, null, 2));img.recycle();
 
 说明:通过 MLKitOcr 执行 OCR 识别后,获取 JSON 格式的结果并以美化的形式输出。 //第九个let img = screen.screenShotFull();let ocrResult = img.MLKitOcr('zh');let ocrJson = ocrResult.getJson();printl("OCR 结果 JSON: " + JSON.stringify(ocrJson));img.recycle();
 
 说明:OCR 识别后直接打印 JSON 格式的内容。 //第十个var mat = screen.screenShot(720, 1280, 100).getMat();var seek = opencv.OCR(mat, '蜂群课堂.ocr', 0.95, 0);if (seek) {    printl(seek.findIncludeText('蜂'))} else {    printl("未找到了");}
 
 说明:使用 opencv 库对指定截图获取的矩阵内容通过训练的 .ocr 文件进行 OCR 并查找特定内容。 //第十一个var seek = opencv.OCREx('多点比色.cv');if (seek) {    printl(seek.findIncludeText('雷电模拟器'));} else {    printl("未找到了");}
 
 说明:使用 opencv.OCREx 根据配置文件查找目标文字内容。 
 这些代码块中展示了如何使用 OCR 工具进行从简单到复杂的文字识别操作,说明部分逐一概述了各代码段的主要功能和处理过程。 |