# PhoneViewer / 万能看图 手机 / 平板上的本地 DWG、PDF、EPUB、FB2、XPS/OXPS、CBZ 和图片浏览器。 - DWG 渲染:`@flyfish-dev/cad-viewer`(AGPL-3.0,GitHub: `flyfish-dev/cad-viewer`),WebGL 常驻渲染,支持块展开、图层、文字、填充、线型、样条、标注和常用 DWG 2006–2026 版本。 - 文档渲染:MuPDF.js。 - 前端:Vite + TypeScript;DWG 解析在 Web Worker 中执行,运行时 WASM 位于 `public/wasm/`。 - Android:Kotlin WebView 壳,离线内置全部前端资源,支持文件关联、返回键和 PNG 保存。 - 代理对象只有在文件中包含代理图形数据时才会显示;没有任何图形数据的字典代理不可见。 ## 开发 ```bash npm install npm run dev npm run typecheck npm run build ``` ## 构建 Android APK 需要 JDK 17、Android SDK 34 和 Gradle 的 Kotlin 编译器(脚本位于 `E:\AiCodeGitea\ven\AndroidDev`,可在 `scripts/build-apk.mjs` 中调整路径)。 签名信息不写入仓库。构建前设置: ```bash PHONEVIEWER_KEYSTORE_PASS=your-keystore-password PHONEVIEWER_KEY_PASS=your-key-password npm run apk ``` `android/keystore/`、测试 DWG、APK、`dist/`、`node_modules/` 均已加入 `.gitignore`。图纸不会上传,解析完全在本地进行。 ## 许可 本项目以 AGPL-3.0-or-later 发布。第三方组件许可见应用内“关于 → 开源组件与许可”。