跳到正文
cccskills
免费在 GitHub 公开

e2e-ocr

E2E OCR assertions with Tesseract.js for canvas-only UI such as PDF pages in Cypress page objects. Use when asserting canvas-only E2E text with OCR.

中文简介正在准备中。当前显示原文说明。

nerds-odd-e/doughnut星标 50(GitHub 50 + cccskills 0)

实测评分 未实测

查看安装方法

包含的文件(1)

  • SKILL.md1.6 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

E2E OCR Rules

Use this skill when asserting text that is not in the DOM, such as PDF content drawn only to <canvas>. Keep OCR in test infrastructure, not product code.

Tesseract Setup

  • Use tesseract.js, a root devDependency, for canvas-only assertions via cy.task.
  • Register a Node task in e2e_test/config/common.ts.
  • The task should call tesseract.js createWorker and recognize on image bytes, such as base64 PNG without the data:image/png;base64, prefix.
  • Example task name: ocrCanvasImage.

Language Data

  • Commit e2e_test/tesseract/eng.traineddata uncompressed.
  • Pass langPath and cachePath to that directory when creating the worker.
  • This prevents Tesseract from writing eng.traineddata to the repo root. Root-level traineddata files are gitignored as a fallback.

Page Object Pattern

  • Wait until the canvas has real ink before OCR. Sampling getImageData for dark pixels is better than checking only non-zero alpha, because an empty white fill can still have alpha.
  • Export with toDataURL("image/png").
  • Strip the data URL prefix.
  • Use cy.task(..., { timeout: ... }) for slow OCR.
  • Assert the returned string contains the expected substring with a clear message.
  • Reference: e2e_test/start/pageObjects/bookReadingPage.ts, from expectPdfBeginningVisible through expectCurrentPage(1).expectVisibleOCRContains.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

backend

免费

Backend Java — Spring Boot controllers/services, JUnit controller tests, MakeMe. Read this first for any backend work. Use when working on the Java Spring backend.

中文简介正在准备中。当前显示原文说明。

nerds-odd-e/doughnut502026年10月26日 更新

Backend Java production code, Spring Boot controllers/services/repositories, controller return values, imports, schema ERD pointer. Use when editing backend production Java.

中文简介正在准备中。当前显示原文说明。

nerds-odd-e/doughnut502026年10月26日 更新

Backend Java tests, controller-level stable-boundary tests, JUnit, @Nested, MakeMe builders, @Transactional, parameterized tests. Use when writing or changing backend JUnit tests.

中文简介正在准备中。当前显示原文说明。

nerds-odd-e/doughnut502026年10月26日 更新

cli

免费

related to donut CLI. Use when working on donut-cli.

中文简介正在准备中。当前显示原文说明。

nerds-odd-e/doughnut502026年10月26日 更新

Set up and run the Donut dev environment on Cursor Cloud VM (no Nix). Use when working on Cloud VM, running tests on Cloud VM, or encountering command errors related to missing nix. Triggers on: cloud VM, cloud agent, no nix available, /workspace path.

中文简介正在准备中。当前显示原文说明。

nerds-odd-e/doughnut502026年10月26日 更新

Regenerate docs/database-erd.md from MySQL information_schema (Mermaid ERD: foreign keys and key columns). Use after Flyway schema changes, new migrations, or when the diagram is stale. Triggers on: database ERD, database-erd.md, export_database_erd, schema diagram, ER diagram after migration.

中文简介正在准备中。当前显示原文说明。

nerds-odd-e/doughnut502026年10月26日 更新

查看 nerds-odd-e 的全部技能

报告此技能的问题