English | 中文 | 日本語 | Русский | العربية | فارسی
تطبيق سطح مكتب يقوم بتحويل مستندات PDF إلى تنسيق Markdown باستخدام التعرف البصري لنماذج اللغة الكبيرة (LLM).
- دعم نماذج LLM متعددة: OpenAI وAnthropic Claude وGoogle Gemini وOllama (نماذج محلية) وOpenAI Responses API
- تحويل عالي الجودة: يستفيد من قدرات الرؤية في LLM لتحويل دقيق من PDF إلى Markdown
- معاينة جنبًا إلى جنب: عرض صفحات PDF الأصلية بجانب Markdown المُنشأ
- دعم الرياضيات والأكواد: دعم كامل لمعادلات LaTeX (KaTeX) وكتل الأكواد مع تمييز بناء الجملة
- واجهة متعددة اللغات: الإنجليزية والصينية واليابانية والروسية والعربية والفارسية
- المعالجة المتوازية: مثيلات عمل قابلة للتكوين لتحويل أسرع
- تتبع التقدم: تحديثات الحالة في الوقت الفعلي ودعم إعادة المحاولة لكل صفحة
- التخزين المحلي: قاعدة بيانات SQLite لحفظ المهام
التشغيل مباشرة باستخدام npx (يتطلب Node.js 18+):
npx -y markpdfdownقم بتحميل أحدث إصدار لمنصتك من صفحة Releases:
- Windows:
MarkPDFdown-{version}-x64.exe - macOS:
MarkPDFdown-{version}-arm64.dmg/MarkPDFdown-{version}-x64.dmg - Linux:
MarkPDFdown-{version}-x86_64.AppImage
- تكوين المزود: انتقل إلى الإعدادات وأضف بيانات اعتماد مزود LLM (مفتاح API، عنوان URL الأساسي)
- إضافة النموذج: قم بتكوين النموذج الذي تريد استخدامه للتحويل
- رفع PDF: اسحب وأفلت أو انقر لاختيار ملف PDF
- اختيار النموذج: اختر نموذج LLM للتحويل
- التحويل: ابدأ عملية التحويل
- المعاينة: عرض النتائج صفحة بصفحة مع المقارنة جنبًا إلى جنب
- التحميل: تصدير ملف Markdown المدمج
- Node.js 18+
- npm 8+
# تثبيت التبعيات
npm install
# إنشاء عميل Prisma
npm run generate
# تشغيل ترحيلات قاعدة البيانات
npm run migrate:dev
# تشغيل خادم التطوير
npm run dev# بناء الإنتاج
npm run build
# مثبتات خاصة بالمنصة
npm run build:win # مثبت Windows NSIS
npm run build:mac # macOS DMG
npm run build:linux # Linux AppImagenpm test # تشغيل جميع الاختبارات
npm run test:unit # اختبارات الوحدة فقط
npm run test:renderer # اختبارات المكونات فقط
npm run test:coverage # إنشاء تقرير التغطيةsrc/
├── main/ # العملية الرئيسية لـ Electron
│ ├── index.ts # نقطة الدخول، إنشاء النافذة، إعداد IPC
│ └── ipc/ # معالجات IPC
├── preload/ # سكربتات التحميل المسبق (window.api)
├── renderer/ # واجهة React الأمامية
│ ├── components/ # مكونات واجهة المستخدم
│ ├── pages/ # صفحات المسارات
│ └── locales/ # ترجمات i18n
├── core/ # منطق الأعمال (العمارة النظيفة)
│ ├── infrastructure/ # قاعدة البيانات، الخدمات الخارجية
│ ├── application/ # العمال، التنسيق
│ ├── domain/ # الواجهات، أنواع المجال
│ └── shared/ # ناقل الأحداث، الأدوات المساعدة
└── shared/ # الأنواع المشتركة بين main/renderer
- الإطار: Electron 35 + React 18 + TypeScript
- أداة البناء: Vite 6
- واجهة المستخدم: Ant Design 5
- قاعدة البيانات: Prisma ORM + SQLite
- معالجة PDF: pdf-lib، pdf-to-png-converter، Sharp
- Markdown: react-markdown، remark-gfm، remark-math، rehype-katex، rehype-prism-plus
- الاختبار: Vitest + Testing Library
| المزود | النماذج | ملاحظات |
|---|---|---|
| OpenAI | GPT-4o، GPT-4-turbo، إلخ. | يتطلب مفتاح API |
| Anthropic | Claude 3.5، Claude 3، إلخ. | يتطلب مفتاح API |
| Google Gemini | Gemini Pro، Gemini Flash، إلخ. | يتطلب مفتاح API |
| Ollama | LLaVA، Llama 3.2 Vision، إلخ. | محلي، لا يحتاج مفتاح API |
| OpenAI Responses | أي نموذج متوافق مع OpenAI | دعم نقطة النهاية المخصصة |
المساهمات مرحب بها! يرجى قراءة ملف AGENTS.md للاطلاع على إرشادات التطوير.