Linux and Chinese systems
AppImage works across common x86_64 distributions; Deb packages integrate with Debian-based systems including UOS and Kylin OS.
diff --git a/.github/workflows/website-production-check.yml b/.github/workflows/website-production-check.yml index aeb6102c..e58571e3 100644 --- a/.github/workflows/website-production-check.yml +++ b/.github/workflows/website-production-check.yml @@ -22,11 +22,12 @@ jobs: /large-markdown-files/ /markdown-to-slides/ /convert-to-markdown/ + /pdf-to-markdown/ /scan-to-markdown/ /bibtex-citations/ ) for language in zh-cn zh-tw ja; do - for suffix in / /workflows/ /download/ /large-markdown-files/ /markdown-to-slides/ /convert-to-markdown/ /scan-to-markdown/ /bibtex-citations/; do + for suffix in / /workflows/ /download/ /large-markdown-files/ /markdown-to-slides/ /convert-to-markdown/ /pdf-to-markdown/ /scan-to-markdown/ /bibtex-citations/; do routes+=("/${language}${suffix}") done done diff --git a/showcase/reports/pdf_answer_pages_approval.json b/showcase/reports/pdf_answer_pages_approval.json new file mode 100644 index 00000000..3e998a0d --- /dev/null +++ b/showcase/reports/pdf_answer_pages_approval.json @@ -0,0 +1,52 @@ +{ + "schema_version": 1, + "artifact": "Localized PDF to Markdown answer pages", + "reviewed_at": "2026-08-26T01:20:00Z", + "required_rounds": 3, + "minimum_score": 9.7, + "rounds": [ + { + "round": 1, + "reviewer": "seo-intent-review", + "status": "approved", + "score": 9.89, + "evidence": [ + "The PDF to Markdown family targets a distinct high-intent task rather than duplicating the general conversion page.", + "All four localized pages expose unique titles, descriptions, canonical URLs, hreflang sets, FAQPage, HowTo, and BreadcrumbList entities.", + "Home, workflow, download, sitemap, llms.txt, and llms-full.txt surfaces link the new canonical paths." + ] + }, + { + "round": 2, + "reviewer": "content-accuracy-review", + "status": "approved", + "score": 9.83, + "evidence": [ + "The pages qualify text-based conversion separately from scanned OCR workflows instead of promising perfect extraction.", + "Privacy wording remains limited to the implemented local-conversion boundary and explicitly excludes cloud upload requirements.", + "Each language instructs the reader to review reading order, tables, captions, names, numbers, formulas, and complex layouts before saving." + ] + }, + { + "round": 3, + "reviewer": "release-engineering-review", + "status": "approved", + "score": 9.79, + "evidence": [ + "Website validator passes 36 canonical URLs, including four new localized PDF answers, with three recorded approval rounds.", + "Release build validation passes after the expanded corpus and sitemap are copied into dist.", + "Browser smoke passes all 36 routes with zero failures, zero broken images, and matching PNG social metadata." + ] + } + ], + "final_decision_meeting": { + "status": "approved_for_staged_publication", + "score": 9.84, + "participants": ["SEO intent", "content accuracy", "release engineering"], + "conditions": [ + "CI must pass before merge.", + "Production check must be updated to include all twelve localized PDF route variants before deployment.", + "IndexNow resubmission must follow a successful production check." + ] + } +} diff --git a/showcase/reports/pdf_answer_pages_browser_smoke.json b/showcase/reports/pdf_answer_pages_browser_smoke.json new file mode 100644 index 00000000..385c1883 --- /dev/null +++ b/showcase/reports/pdf_answer_pages_browser_smoke.json @@ -0,0 +1,870 @@ +{ + "ok": true, + "pages": [ + { + "route": "/", + "title": "ReadMD | Local Markdown Reader, Editor, Converter, and Presenter", + "h1Count": 1, + "canonical": "https://readmd.asia/", + "ogUrl": "https://readmd.asia/", + "ogImage": "https://readmd.asia/media/overview-reader.png", + "twitterImage": "https://readmd.asia/media/overview-reader.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 3, + "webpImages": 3, + "heroPreloaded": true, + "shareLinks": 3, + "breadcrumb": false, + "breadcrumbPaths": [], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/download/", + "title": "Download ReadMD | Windows, macOS, Linux, UOS, and Kylin Builds", + "h1Count": 1, + "canonical": "https://readmd.asia/download/", + "ogUrl": "https://readmd.asia/download/", + "ogImage": "https://readmd.asia/media/overview-reader.png", + "twitterImage": "https://readmd.asia/media/overview-reader.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 0, + "webpImages": 0, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/", + "/download/", + "/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/workflows/", + "title": "ReadMD Workflows | Long Markdown, Conversion, OCR, and Presenting", + "h1Count": 1, + "canonical": "https://readmd.asia/workflows/", + "ogUrl": "https://readmd.asia/workflows/", + "ogImage": "https://readmd.asia/media/overview-reader.png", + "twitterImage": "https://readmd.asia/media/overview-reader.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/", + "/workflows/", + "/download/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/large-markdown-files/", + "title": "Open Large Markdown Files | ReadMD Local Reader", + "h1Count": 1, + "canonical": "https://readmd.asia/large-markdown-files/", + "ogUrl": "https://readmd.asia/large-markdown-files/", + "ogImage": "https://readmd.asia/media/overview-reader.png", + "twitterImage": "https://readmd.asia/media/overview-reader.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/", + "/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/markdown-to-slides/", + "title": "Present Markdown Without PowerPoint | ReadMD Slides", + "h1Count": 1, + "canonical": "https://readmd.asia/markdown-to-slides/", + "ogUrl": "https://readmd.asia/markdown-to-slides/", + "ogImage": "https://readmd.asia/media/overview-editor.png", + "twitterImage": "https://readmd.asia/media/overview-editor.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/", + "/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/convert-to-markdown/", + "title": "Convert Documents to Markdown | ReadMD Local Converter", + "h1Count": 1, + "canonical": "https://readmd.asia/convert-to-markdown/", + "ogUrl": "https://readmd.asia/convert-to-markdown/", + "ogImage": "https://readmd.asia/media/convert-home.png", + "twitterImage": "https://readmd.asia/media/convert-home.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/", + "/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/pdf-to-markdown/", + "title": "PDF to Markdown | ReadMD Local PDF Converter", + "h1Count": 1, + "canonical": "https://readmd.asia/pdf-to-markdown/", + "ogUrl": "https://readmd.asia/pdf-to-markdown/", + "ogImage": "https://readmd.asia/media/convert-home.png", + "twitterImage": "https://readmd.asia/media/convert-home.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/", + "/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/scan-to-markdown/", + "title": "Extract Text From Scans | ReadMD Offline OCR", + "h1Count": 1, + "canonical": "https://readmd.asia/scan-to-markdown/", + "ogUrl": "https://readmd.asia/scan-to-markdown/", + "ogImage": "https://readmd.asia/media/convert-home.png", + "twitterImage": "https://readmd.asia/media/convert-home.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/", + "/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/bibtex-citations/", + "title": "Manage BibTeX Citations | ReadMD Academic Writing", + "h1Count": 1, + "canonical": "https://readmd.asia/bibtex-citations/", + "ogUrl": "https://readmd.asia/bibtex-citations/", + "ogImage": "https://readmd.asia/media/overview-editor.png", + "twitterImage": "https://readmd.asia/media/overview-editor.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/", + "/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/zh-cn/", + "title": "ReadMD | 纯本地 Markdown 阅读、编辑、转换与放映", + "h1Count": 1, + "canonical": "https://readmd.asia/zh-cn/", + "ogUrl": "https://readmd.asia/zh-cn/", + "ogImage": "https://readmd.asia/media/overview-reader.png", + "twitterImage": "https://readmd.asia/media/overview-reader.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": true, + "shareLinks": 3, + "breadcrumb": false, + "breadcrumbPaths": [], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/zh-cn/download/", + "title": "下载 ReadMD | Windows、macOS、Linux、UOS 和麒麟版本", + "h1Count": 1, + "canonical": "https://readmd.asia/zh-cn/download/", + "ogUrl": "https://readmd.asia/zh-cn/download/", + "ogImage": "https://readmd.asia/media/overview-reader.png", + "twitterImage": "https://readmd.asia/media/overview-reader.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 0, + "webpImages": 0, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/zh-cn/", + "/zh-cn/download/", + "/zh-cn/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/zh-cn/workflows/", + "title": "ReadMD 工作流 | 超长文档、格式转换、离线 OCR 与放映", + "h1Count": 1, + "canonical": "https://readmd.asia/zh-cn/workflows/", + "ogUrl": "https://readmd.asia/zh-cn/workflows/", + "ogImage": "https://readmd.asia/media/overview-reader.png", + "twitterImage": "https://readmd.asia/media/overview-reader.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 0, + "webpImages": 0, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/zh-cn/", + "/zh-cn/workflows/", + "/zh-cn/download/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/zh-cn/large-markdown-files/", + "title": "打开超大 Markdown 文件 | ReadMD 本地阅读器", + "h1Count": 1, + "canonical": "https://readmd.asia/zh-cn/large-markdown-files/", + "ogUrl": "https://readmd.asia/zh-cn/large-markdown-files/", + "ogImage": "https://readmd.asia/media/overview-reader.png", + "twitterImage": "https://readmd.asia/media/overview-reader.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/zh-cn/", + "/zh-cn/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/zh-cn/markdown-to-slides/", + "title": "不用 PowerPoint 放映 Markdown | ReadMD 幻灯", + "h1Count": 1, + "canonical": "https://readmd.asia/zh-cn/markdown-to-slides/", + "ogUrl": "https://readmd.asia/zh-cn/markdown-to-slides/", + "ogImage": "https://readmd.asia/media/overview-editor.png", + "twitterImage": "https://readmd.asia/media/overview-editor.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/zh-cn/", + "/zh-cn/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/zh-cn/convert-to-markdown/", + "title": "文档转 Markdown | ReadMD 本地转换器", + "h1Count": 1, + "canonical": "https://readmd.asia/zh-cn/convert-to-markdown/", + "ogUrl": "https://readmd.asia/zh-cn/convert-to-markdown/", + "ogImage": "https://readmd.asia/media/convert-home.png", + "twitterImage": "https://readmd.asia/media/convert-home.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/zh-cn/", + "/zh-cn/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/zh-cn/pdf-to-markdown/", + "title": "PDF 转 Markdown | ReadMD 本地 PDF 转换器", + "h1Count": 1, + "canonical": "https://readmd.asia/zh-cn/pdf-to-markdown/", + "ogUrl": "https://readmd.asia/zh-cn/pdf-to-markdown/", + "ogImage": "https://readmd.asia/media/convert-home.png", + "twitterImage": "https://readmd.asia/media/convert-home.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/zh-cn/", + "/zh-cn/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/zh-cn/scan-to-markdown/", + "title": "扫描件提取文字 | ReadMD 离线 OCR", + "h1Count": 1, + "canonical": "https://readmd.asia/zh-cn/scan-to-markdown/", + "ogUrl": "https://readmd.asia/zh-cn/scan-to-markdown/", + "ogImage": "https://readmd.asia/media/convert-home.png", + "twitterImage": "https://readmd.asia/media/convert-home.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/zh-cn/", + "/zh-cn/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/zh-cn/bibtex-citations/", + "title": "管理 BibTeX 引用 | ReadMD 学术写作", + "h1Count": 1, + "canonical": "https://readmd.asia/zh-cn/bibtex-citations/", + "ogUrl": "https://readmd.asia/zh-cn/bibtex-citations/", + "ogImage": "https://readmd.asia/media/overview-editor.png", + "twitterImage": "https://readmd.asia/media/overview-editor.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/zh-cn/", + "/zh-cn/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/zh-tw/", + "title": "ReadMD | 純本地 Markdown 閱讀、編輯、轉換與放映", + "h1Count": 1, + "canonical": "https://readmd.asia/zh-tw/", + "ogUrl": "https://readmd.asia/zh-tw/", + "ogImage": "https://readmd.asia/media/overview-reader.png", + "twitterImage": "https://readmd.asia/media/overview-reader.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": true, + "shareLinks": 3, + "breadcrumb": false, + "breadcrumbPaths": [], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/zh-tw/download/", + "title": "下載 ReadMD | Windows、macOS、Linux、UOS 和麒麟版本", + "h1Count": 1, + "canonical": "https://readmd.asia/zh-tw/download/", + "ogUrl": "https://readmd.asia/zh-tw/download/", + "ogImage": "https://readmd.asia/media/overview-reader.png", + "twitterImage": "https://readmd.asia/media/overview-reader.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 0, + "webpImages": 0, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/zh-tw/", + "/zh-tw/download/", + "/zh-tw/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/zh-tw/workflows/", + "title": "ReadMD 工作流程 | 長篇文件、格式轉換、離線 OCR 與放映", + "h1Count": 1, + "canonical": "https://readmd.asia/zh-tw/workflows/", + "ogUrl": "https://readmd.asia/zh-tw/workflows/", + "ogImage": "https://readmd.asia/media/overview-reader.png", + "twitterImage": "https://readmd.asia/media/overview-reader.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 0, + "webpImages": 0, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/zh-tw/", + "/zh-tw/workflows/", + "/zh-tw/download/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/zh-tw/large-markdown-files/", + "title": "開啟超大 Markdown 檔案 | ReadMD 本機閱讀器", + "h1Count": 1, + "canonical": "https://readmd.asia/zh-tw/large-markdown-files/", + "ogUrl": "https://readmd.asia/zh-tw/large-markdown-files/", + "ogImage": "https://readmd.asia/media/overview-reader.png", + "twitterImage": "https://readmd.asia/media/overview-reader.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/zh-tw/", + "/zh-tw/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/zh-tw/markdown-to-slides/", + "title": "不用 PowerPoint 放映 Markdown | ReadMD 簡報", + "h1Count": 1, + "canonical": "https://readmd.asia/zh-tw/markdown-to-slides/", + "ogUrl": "https://readmd.asia/zh-tw/markdown-to-slides/", + "ogImage": "https://readmd.asia/media/overview-editor.png", + "twitterImage": "https://readmd.asia/media/overview-editor.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/zh-tw/", + "/zh-tw/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/zh-tw/convert-to-markdown/", + "title": "文件轉 Markdown | ReadMD 本機轉換器", + "h1Count": 1, + "canonical": "https://readmd.asia/zh-tw/convert-to-markdown/", + "ogUrl": "https://readmd.asia/zh-tw/convert-to-markdown/", + "ogImage": "https://readmd.asia/media/convert-home.png", + "twitterImage": "https://readmd.asia/media/convert-home.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/zh-tw/", + "/zh-tw/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/zh-tw/pdf-to-markdown/", + "title": "PDF 轉 Markdown | ReadMD 本機 PDF 轉換器", + "h1Count": 1, + "canonical": "https://readmd.asia/zh-tw/pdf-to-markdown/", + "ogUrl": "https://readmd.asia/zh-tw/pdf-to-markdown/", + "ogImage": "https://readmd.asia/media/convert-home.png", + "twitterImage": "https://readmd.asia/media/convert-home.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/zh-tw/", + "/zh-tw/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/zh-tw/scan-to-markdown/", + "title": "掃描件擷取文字 | ReadMD 離線 OCR", + "h1Count": 1, + "canonical": "https://readmd.asia/zh-tw/scan-to-markdown/", + "ogUrl": "https://readmd.asia/zh-tw/scan-to-markdown/", + "ogImage": "https://readmd.asia/media/convert-home.png", + "twitterImage": "https://readmd.asia/media/convert-home.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/zh-tw/", + "/zh-tw/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/zh-tw/bibtex-citations/", + "title": "管理 BibTeX 引用 | ReadMD 學術寫作", + "h1Count": 1, + "canonical": "https://readmd.asia/zh-tw/bibtex-citations/", + "ogUrl": "https://readmd.asia/zh-tw/bibtex-citations/", + "ogImage": "https://readmd.asia/media/overview-editor.png", + "twitterImage": "https://readmd.asia/media/overview-editor.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/zh-tw/", + "/zh-tw/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/ja/", + "title": "ReadMD | ローカルで使う Markdown リーダー、エディター、変換、発表ツール", + "h1Count": 1, + "canonical": "https://readmd.asia/ja/", + "ogUrl": "https://readmd.asia/ja/", + "ogImage": "https://readmd.asia/media/overview-reader.png", + "twitterImage": "https://readmd.asia/media/overview-reader.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": true, + "shareLinks": 3, + "breadcrumb": false, + "breadcrumbPaths": [], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/ja/download/", + "title": "ReadMD ダウンロード | Windows、macOS、Linux、UOS、Kylin", + "h1Count": 1, + "canonical": "https://readmd.asia/ja/download/", + "ogUrl": "https://readmd.asia/ja/download/", + "ogImage": "https://readmd.asia/media/overview-reader.png", + "twitterImage": "https://readmd.asia/media/overview-reader.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 0, + "webpImages": 0, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/ja/", + "/ja/download/", + "/ja/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/ja/workflows/", + "title": "ReadMD ワークフロー | 長文、変換、オフライン OCR、発表", + "h1Count": 1, + "canonical": "https://readmd.asia/ja/workflows/", + "ogUrl": "https://readmd.asia/ja/workflows/", + "ogImage": "https://readmd.asia/media/overview-reader.png", + "twitterImage": "https://readmd.asia/media/overview-reader.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 0, + "webpImages": 0, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/ja/", + "/ja/workflows/", + "/ja/download/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/ja/large-markdown-files/", + "title": "巨大な Markdown を開く | ReadMD ローカルリーダー", + "h1Count": 1, + "canonical": "https://readmd.asia/ja/large-markdown-files/", + "ogUrl": "https://readmd.asia/ja/large-markdown-files/", + "ogImage": "https://readmd.asia/media/overview-reader.png", + "twitterImage": "https://readmd.asia/media/overview-reader.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/ja/", + "/ja/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/ja/markdown-to-slides/", + "title": "PowerPoint を使わず Markdown 発表 | ReadMD スライド", + "h1Count": 1, + "canonical": "https://readmd.asia/ja/markdown-to-slides/", + "ogUrl": "https://readmd.asia/ja/markdown-to-slides/", + "ogImage": "https://readmd.asia/media/overview-editor.png", + "twitterImage": "https://readmd.asia/media/overview-editor.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/ja/", + "/ja/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/ja/convert-to-markdown/", + "title": "文書を Markdown へ変換 | ReadMD ローカル変換", + "h1Count": 1, + "canonical": "https://readmd.asia/ja/convert-to-markdown/", + "ogUrl": "https://readmd.asia/ja/convert-to-markdown/", + "ogImage": "https://readmd.asia/media/convert-home.png", + "twitterImage": "https://readmd.asia/media/convert-home.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/ja/", + "/ja/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/ja/pdf-to-markdown/", + "title": "PDF を Markdown に変換 | ReadMD ローカル変換", + "h1Count": 1, + "canonical": "https://readmd.asia/ja/pdf-to-markdown/", + "ogUrl": "https://readmd.asia/ja/pdf-to-markdown/", + "ogImage": "https://readmd.asia/media/convert-home.png", + "twitterImage": "https://readmd.asia/media/convert-home.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/ja/", + "/ja/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/ja/scan-to-markdown/", + "title": "スキャン文字を抽出 | ReadMD オフライン OCR", + "h1Count": 1, + "canonical": "https://readmd.asia/ja/scan-to-markdown/", + "ogUrl": "https://readmd.asia/ja/scan-to-markdown/", + "ogImage": "https://readmd.asia/media/convert-home.png", + "twitterImage": "https://readmd.asia/media/convert-home.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/ja/", + "/ja/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + }, + { + "route": "/ja/bibtex-citations/", + "title": "BibTeX 文献を管理 | ReadMD 学術執筆", + "h1Count": 1, + "canonical": "https://readmd.asia/ja/bibtex-citations/", + "ogUrl": "https://readmd.asia/ja/bibtex-citations/", + "ogImage": "https://readmd.asia/media/overview-editor.png", + "twitterImage": "https://readmd.asia/media/overview-editor.png", + "robots": "index,follow,max-image-preview:large", + "stylesheetLoaded": true, + "brokenImages": 0, + "pictureCount": 1, + "webpImages": 1, + "heroPreloaded": false, + "shareLinks": 0, + "breadcrumb": true, + "breadcrumbPaths": [ + "/ja/", + "/ja/workflows/" + ], + "faviconLinked": true, + "manifestLinked": true, + "releaseFeedLinked": true + } + ], + "security": { + "csp": "", + "hsts": "" + }, + "failures": [] +} diff --git a/showcase/reports/skill_and_source_review.md b/showcase/reports/skill_and_source_review.md index afaf5c23..6cc711ca 100644 --- a/showcase/reports/skill_and_source_review.md +++ b/showcase/reports/skill_and_source_review.md @@ -36,20 +36,21 @@ The brief requested a literal Apple clone. That part was not implemented because - Release build validator: green after final rebuild. - Product showcase pipeline: 144 tests green before the website package. - Desktop UI suite: 55 tests green before the website package. -- Browser smoke test: thirty-two localized home, workflow, download, large-file, presentation, conversion, OCR, and BibTeX routes; one H1 per page, stylesheet loaded, zero broken images, zero script errors. +- Browser smoke test: thirty-six localized home, workflow, download, large-file, presentation, conversion, PDF, OCR, and BibTeX routes; one H1 per page, stylesheet loaded, zero broken images, zero script errors. - Structured data: localized WebPage, SoftwareApplication, speakable, FAQPage, HowTo, and BreadcrumbList contracts pass the website validator. - AI answer schema: four localized homepages and four workflow pages expose visible FAQPage entities; the dedicated three-round approval is recorded in `faq_schema_approval.json`. - Answer-page review: eight localized task guides expose complete hreflang sets, visible workflows, and citation-ready corpora; the dedicated three-round approval is recorded in `answer_pages_approval.json`. +- PDF intent review: twelve localized routes cover the dedicated PDF-to-Markdown question with qualified offline and OCR boundaries; the dedicated three-round approval is recorded in `pdf_answer_pages_approval.json`. - Conversion-page review: four localized task guides cover local document migration with qualified offline and fidelity boundaries; the dedicated three-round approval is recorded in `conversion_pages_approval.json`. - OCR-page review: four localized task guides cover Windows WinRT and macOS Apple Vision workflows with local processing and human-review boundaries; the dedicated three-round approval is recorded in `ocr_pages_approval.json`. - BibTeX-page review: four localized task guides cover neighboring `.bib` scanning, inline keys, citation cards, copyable entries, and assembled references; the dedicated three-round approval is recorded in `bibtex_pages_approval.json`. -- Sitemap review: all thirty-two canonical URLs expose complete hreflang sets and current freshness dates; the dedicated three-round approval is recorded in `sitemap_hreflang_approval.json`. +- Sitemap review: all thirty-six canonical URLs expose complete hreflang sets and current freshness dates; the dedicated three-round approval is recorded in `sitemap_hreflang_approval.json`. - WeChat export QA: green. - Three approval rounds and final decision meeting: approved at or above 9.7. - Domain migration review: all active site, AI-corpus, tooling, deployment, and growth surfaces use `readmd.asia`; the dedicated three-round approval is recorded in `domain_migration_approval.json`, while historical reports remain unchanged. - Repository discovery review: GitHub's homepage points to `readmd.asia` and four localized READMEs expose the official-site badge plus live AI-corpus links; the dedicated three-round approval is recorded in `official_site_metadata_approval.json`. - Growth execution review: five workflow clusters are mapped to audiences, channels, objections, stop conditions, and a publication ledger; the dedicated three-round approval is recorded in `growth_execution_kit_approval.json`. - Distribution artifact QA: channel drafts, seven-day sprint, thirty-day cadence, measurement rules, dependency mapping, and paste-safe WeChat artifact are included without automated posting or unverifiable adoption claims. -- Social preview review: all 32 public routes expose matching Open Graph and Twitter PNG previews with explicit MIME types and verified media assets; the dedicated three-round approval is recorded in `social_preview_png_approval.json`. +- Social preview review: all 36 public routes expose matching Open Graph and Twitter PNG previews with explicit MIME types and verified media assets; the dedicated three-round approval is recorded in `social_preview_png_approval.json`. - Accessibility regression fix: the AI incognito checkbox now provides a 24px target in desktop and mobile viewports; the dedicated three-round approval is recorded in `ui_target_size_fix_approval.json`. - Browser smoke evidence: `domain_migration_browser_smoke.json` records 32 passing routes, 32 PNG social images, 32 new-origin canonical URLs, and no failures. diff --git a/showcase/scripts/validate_website.py b/showcase/scripts/validate_website.py index ff3ec58f..c20a8556 100644 --- a/showcase/scripts/validate_website.py +++ b/showcase/scripts/validate_website.py @@ -51,6 +51,10 @@ "zh-CN-conversion": {"path": PUBLIC / "zh-cn" / "convert-to-markdown" / "index.html", "canonical": "https://readmd.asia/zh-cn/convert-to-markdown/"}, "zh-TW-conversion": {"path": PUBLIC / "zh-tw" / "convert-to-markdown" / "index.html", "canonical": "https://readmd.asia/zh-tw/convert-to-markdown/"}, "ja-conversion": {"path": PUBLIC / "ja" / "convert-to-markdown" / "index.html", "canonical": "https://readmd.asia/ja/convert-to-markdown/"}, + "en-pdf": {"path": PUBLIC / "pdf-to-markdown" / "index.html", "canonical": "https://readmd.asia/pdf-to-markdown/"}, + "zh-CN-pdf": {"path": PUBLIC / "zh-cn" / "pdf-to-markdown" / "index.html", "canonical": "https://readmd.asia/zh-cn/pdf-to-markdown/"}, + "zh-TW-pdf": {"path": PUBLIC / "zh-tw" / "pdf-to-markdown" / "index.html", "canonical": "https://readmd.asia/zh-tw/pdf-to-markdown/"}, + "ja-pdf": {"path": PUBLIC / "ja" / "pdf-to-markdown" / "index.html", "canonical": "https://readmd.asia/ja/pdf-to-markdown/"}, "en-ocr": {"path": PUBLIC / "scan-to-markdown" / "index.html", "canonical": "https://readmd.asia/scan-to-markdown/"}, "zh-CN-ocr": {"path": PUBLIC / "zh-cn" / "scan-to-markdown" / "index.html", "canonical": "https://readmd.asia/zh-cn/scan-to-markdown/"}, "zh-TW-ocr": {"path": PUBLIC / "zh-tw" / "scan-to-markdown" / "index.html", "canonical": "https://readmd.asia/zh-tw/scan-to-markdown/"}, diff --git a/website/public/download/index.html b/website/public/download/index.html index 872dbda3..ac480c33 100644 --- a/website/public/download/index.html +++ b/website/public/download/index.html @@ -75,7 +75,7 @@
AppImage works across common x86_64 distributions; Deb packages integrate with Debian-based systems including UOS and Kylin OS.
The VS Code extension brings synchronized preview and syntax repair into the editor. The MCP Server connects compatible AI tools. HarmonyOS support is available as an ArkTS source project for DevEco Studio; no prebuilt HAP is provided.
テキスト型の報告書、論文、マニュアル、スキャン頁をローカルで Markdown に移行できます。元ファイルは端末に残り、再利用できる構造はできる範囲で保持されます。
+
元の PDF を端末に置き、テキスト型かスキャン型かを判断します。
PDF を ReadMD に追加します。同じ確認が必要な資料はまとめて処理できます。
変換を実行し、結果を元の PDF のそばで開きます。
見出し、リスト、表、読み順、数式、キャプション、画像参照を確認してから編集や公開に進みます。
ReadMD の変換機能は PDF を受け付けます。テキスト型は Markdown へ対応しやすく、スキャン頁は対応環境でローカル OCR ワークフローを使います。
いいえ。ローカル PDF 変換はクラウドアカウントやブラウザフォームなしで動くように設計されています。
PDF から復元できる場合、見出し、リスト、表、引用、数式、画像参照をできる範囲で保持します。
なりません。OCR の品質は明瞭さ、言語、フォント、レイアウトに依存します。固有名詞、数値、表、キャプション、読み順を保存前に確認してください。
diff --git a/website/public/index.html b/website/public/index.html index f29591aa..65a7ea73 100644 --- a/website/public/index.html +++ b/website/public/index.html @@ -178,7 +178,7 @@
ReadMD ships for Windows 7 through 11, macOS on Apple Silicon and Intel, Linux through AppImage and Deb packages, and Chinese systems including UOS and Kylin OS. A VSCode extension and MCP server connect the same workflows to editors and AI tools.
Core reading, editing, pagination, OCR, and file conversion are designed to run locally. Documents do not need a cloud account. Optional web fetching and sharing are explicit actions; LAN sharing is intended for devices on the same network.
ReadMD is released under the MIT license. Source code, release downloads, checksum lists, and platform-specific packages are published in the public GitHub repository at Natsummerance/readMD.
-
+
diff --git a/website/public/ja/download/index.html b/website/public/ja/download/index.html index 20a5f468..852b448c 100644 --- a/website/public/ja/download/index.html +++ b/website/public/ja/download/index.html @@ -45,7 +45,7 @@
VS Code 拡張は同期プレビューと構文修復を提供し、MCP Server は対応 AI ツールと接続します。HarmonyOS 対応は DevEco Studio でビルドできる ArkTS ソースプロジェクトとして提供され、ビルド済み HAP はありません。
-
+
diff --git a/website/public/ja/index.html b/website/public/ja/index.html index 691b4007..07257105 100644 --- a/website/public/ja/index.html +++ b/website/public/ja/index.html @@ -106,7 +106,7 @@
Windows 7 から 11、Apple Silicon および Intel macOS、Linux 向け AppImage/Deb、UOS、Kylin OS に対応します。VSCode 拡張と MCP Server でエディターや AI ツールにも接続できます。
読書、編集、改ページ、OCR、変換のコア機能はローカル実行を前提に設計されています。文書にクラウド アカウントは不要です。Web 取得と共有は明示的な操作であり、LAN 共有は同じネットワーク内を想定します。
ReadMD は MIT ライセンスで公開されています。ソース コード、リリース ファイル、チェックサム、プラットフォーム資産は公開リポジトリ Natsummerance/readMD にあります。
-
+
diff --git a/website/public/ja/llms-full.txt b/website/public/ja/llms-full.txt index ce933c90..5779e8aa 100644 --- a/website/public/ja/llms-full.txt +++ b/website/public/ja/llms-full.txt @@ -137,6 +137,12 @@ ReadMD は MIT ライセンスです。ソースコードとリリース資産 DOCX、PPTX、XLSX、PDF、HTML、LaTeX のソースをローカルに置き、ReadMD の変換機能に追加します。一つの文書、一括ファイル、対応フォルダーを扱え、一括作業ではドラッグ アンド ドロップを使えます。ローカル変換ではソースを Web フォームへアップロードする必要がありません。変換後は見出し、リスト、表、引用、数式、画像参照、OCR 結果を確認してください。専用レイアウトに一対一の Markdown 表現があるとは限りません。 + +## タスクガイド: PDF から Markdown + +専用回答: https://readmd.asia/ja/pdf-to-markdown/ + +PDF をローカルに残し、テキスト型かスキャン型かを判断します。ReadMD の変換機能で Markdown を生成したら、見出し、リスト、表、読み順、数式、キャプション、固有名詞、数値を保存前に確認します。スキャン頁は対応環境で条件付きローカル OCR を使います。OCR 結果は人間が確認する草稿であり、完全な転写を保証するものではありません。 ## タスクガイド: スキャンとスクリーンショットから Markdown 専用回答: https://readmd.asia/ja/scan-to-markdown/ diff --git a/website/public/ja/llms.txt b/website/public/ja/llms.txt index 1e36832e..60cd2ecb 100644 --- a/website/public/ja/llms.txt +++ b/website/public/ja/llms.txt @@ -7,6 +7,7 @@ - [巨大な Markdown](https://readmd.asia/ja/large-markdown-files/): 長文向けの意味的な改ページ、検索、目次ナビゲーション、表示だけの非破壊修復。 - [Markdown 発表](https://readmd.asia/ja/markdown-to-slides/): 同じソースから見出し、コード、数式、図、表を保ったまま発表します。 - [Markdown 変換](https://readmd.asia/ja/convert-to-markdown/): DOCX、PPTX、XLSX、PDF、HTML、LaTeX をローカルで変換し、構造を確認します。 +- [PDF から Markdown](https://readmd.asia/ja/pdf-to-markdown/): テキスト型 PDF とスキャン文書のための条件付きローカル変換ワークフロー。 - [スキャンから Markdown](https://readmd.asia/ja/scan-to-markdown/): Windows と macOS のローカル OCR でスキャン頁やスクリーンショットから文字を抽出します。 - [BibTeX 引用](https://readmd.asia/ja/bibtex-citations/): 同じ場所の `.bib` library を inline 引用 badge、文献カード、コピー可能な BibTeX、参考文献まとめに接続します。 - [ダウンロードページ](https://readmd.asia/ja/download/): Windows、macOS、Linux、中国系 OS、エディター、MCP パッケージの入手路径。 diff --git a/website/public/ja/pdf-to-markdown/index.html b/website/public/ja/pdf-to-markdown/index.html new file mode 100644 index 00000000..6c376cfd --- /dev/null +++ b/website/public/ja/pdf-to-markdown/index.html @@ -0,0 +1,149 @@ + + +
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+