mirror of
https://github.com/snapotter-hq/SnapOtter.git
synced 2026-08-03 07:46:42 +02:00
feat(docs-i18n): translate all documentation into 20 languages
All 181 docs markdown files translated into 20 languages (apps/docs/<locale>/**). Companion to the i18n code PR; admin-merged because the file count exceeds GitHub's per-PR CI trigger limit. Validated by pnpm i18n:check (all surfaces, 0 stale/missing) and a clean all-locale docs build.
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
---
|
||||
description: "إنشاء رسوم بيانية شريطية أو خطية أو دائرية من بيانات CSV أو JSON."
|
||||
i18n_source_hash: d3c39384457b
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 86faa18c2007
|
||||
---
|
||||
|
||||
# صانع الرسوم البيانية {#chart-maker}
|
||||
|
||||
أنشئ رسومًا بيانية شريطية أو خطية أو دائرية من بيانات CSV أو JSON. يُرجع صورة PNG للرسم البياني المُصيَّر.
|
||||
|
||||
## نقطة نهاية API {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/files/chart-maker`
|
||||
|
||||
يقبل بيانات نموذج متعدد الأجزاء تحتوي على ملف CSV أو JSON وحقل JSON بصيغة `settings`.
|
||||
|
||||
## المعاملات {#parameters}
|
||||
|
||||
| المعامل | النوع | مطلوب | الافتراضي | الوصف |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| kind | string | لا | `"bar"` | نوع الرسم البياني: `bar`، `line`، `pie` |
|
||||
| title | string | لا | - | عنوان الرسم البياني (بحد أقصى 120 حرفًا) |
|
||||
| width | integer | لا | `960` | عرض الرسم البياني بالبكسل (320-2048) |
|
||||
| height | integer | لا | `540` | ارتفاع الرسم البياني بالبكسل (240-1536) |
|
||||
|
||||
## مثال على الطلب {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/files/chart-maker \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@sales.csv" \
|
||||
-F 'settings={"kind": "line", "title": "Monthly Sales", "width": 960, "height": 540}'
|
||||
```
|
||||
|
||||
## مثال على الاستجابة {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/sales_chart.png",
|
||||
"originalSize": 1024,
|
||||
"processedSize": 48500
|
||||
}
|
||||
```
|
||||
|
||||
## ملاحظات {#notes}
|
||||
|
||||
- يجب أن يكون الدخل ملف `.csv` أو `.json`. ينبغي أن تحتوي ملفات CSV على صف ترويسة يضم أسماء الأعمدة.
|
||||
- يُستخدم العمود الأول كتسمية للفئة؛ ويجب أن يكون العمود الثاني رقميًا ويوفّر قيم البيانات. يُستخدم عمودان فقط.
|
||||
- ينبغي أن يكون دخل JSON مصفوفة من كائنات `{label, value}`، أو كائنًا بسيطًا تصبح مفاتيحه تسميات وقيمه نقاط بيانات.
|
||||
- بحد أقصى 100 نقطة بيانات. يجب أن تكون جميع القيم صفرًا أو أكبر.
|
||||
- الخرج دائمًا صورة PNG بغضّ النظر عن تنسيق الدخل.
|
||||
@@ -0,0 +1,49 @@
|
||||
---
|
||||
description: "التحويل بين تنسيقات Word وOpenDocument وRTF والنص العادي."
|
||||
i18n_source_hash: 89771292569d
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 947adc8e36b8
|
||||
---
|
||||
|
||||
# تحويل المستند {#convert-document}
|
||||
|
||||
حوِّل المستندات بين تنسيقات Word (DOCX) وOpenDocument (ODT) وRTF والنص العادي باستخدام LibreOffice.
|
||||
|
||||
## نقطة نهاية API {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/files/convert-document`
|
||||
|
||||
يقبل بيانات نموذج متعدد الأجزاء تحتوي على ملف Word/ODT/RTF/TXT وحقل JSON بصيغة `settings`.
|
||||
|
||||
## المعاملات {#parameters}
|
||||
|
||||
| المعامل | النوع | مطلوب | الافتراضي | الوصف |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| format | string | نعم | - | تنسيق الخرج: `docx`، `odt`، `rtf`، `txt` |
|
||||
|
||||
## مثال على الطلب {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/files/convert-document \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@report.docx" \
|
||||
-F 'settings={"format": "odt"}'
|
||||
```
|
||||
|
||||
## مثال على الاستجابة {#example-response}
|
||||
|
||||
يُرجع `202 Accepted`. تابع التقدم عبر SSE على `/api/v1/jobs/{jobId}/progress`.
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"async": true
|
||||
}
|
||||
```
|
||||
|
||||
## ملاحظات {#notes}
|
||||
|
||||
- تنسيقات الدخل المقبولة: `.docx`، `.doc`، `.odt`، `.rtf`، `.txt`.
|
||||
- يتولّى LibreOffice المعالجة أثناء تشغيله بلا واجهة رسومية على الخادم.
|
||||
- قد لا يصمد التنسيق المعقّد (وحدات الماكرو، الكائنات المضمّنة) أثناء التحويل بين التنسيقات.
|
||||
- يجب أن يختلف تنسيق الخرج عن تنسيق الدخل.
|
||||
@@ -0,0 +1,49 @@
|
||||
---
|
||||
description: "التحويل بين تنسيقي عروض PowerPoint وOpenDocument."
|
||||
i18n_source_hash: 08ba415d39ac
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: f73f9a990240
|
||||
---
|
||||
|
||||
# تحويل العرض التقديمي {#convert-presentation}
|
||||
|
||||
حوِّل العروض التقديمية بين تنسيقي PowerPoint (PPTX) وOpenDocument Presentation (ODP).
|
||||
|
||||
## نقطة نهاية API {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/files/convert-presentation`
|
||||
|
||||
يقبل بيانات نموذج متعدد الأجزاء تحتوي على ملف PowerPoint/ODP وحقل JSON بصيغة `settings`.
|
||||
|
||||
## المعاملات {#parameters}
|
||||
|
||||
| المعامل | النوع | مطلوب | الافتراضي | الوصف |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| format | string | نعم | - | تنسيق الخرج: `pptx`، `odp` |
|
||||
|
||||
## مثال على الطلب {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/files/convert-presentation \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@slides.pptx" \
|
||||
-F 'settings={"format": "odp"}'
|
||||
```
|
||||
|
||||
## مثال على الاستجابة {#example-response}
|
||||
|
||||
يُرجع `202 Accepted`. تابع التقدم عبر SSE على `/api/v1/jobs/{jobId}/progress`.
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"async": true
|
||||
}
|
||||
```
|
||||
|
||||
## ملاحظات {#notes}
|
||||
|
||||
- تنسيقات الدخل المقبولة: `.pptx`، `.ppt`، `.odp`.
|
||||
- يتولّى LibreOffice المعالجة أثناء تشغيله بلا واجهة رسومية على الخادم.
|
||||
- قد لا تُحفَظ الرسوم المتحركة وتأثيرات الانتقال عبر التنسيقات.
|
||||
- يجب أن يختلف تنسيق الخرج عن تنسيق الدخل.
|
||||
@@ -0,0 +1,49 @@
|
||||
---
|
||||
description: "التحويل بين تنسيقات Excel وOpenDocument وCSV."
|
||||
i18n_source_hash: b813b1b06962
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: be8ee7d025b4
|
||||
---
|
||||
|
||||
# تحويل جدول البيانات {#convert-spreadsheet}
|
||||
|
||||
حوِّل جداول البيانات بين تنسيقات Excel (XLSX) وOpenDocument Spreadsheet (ODS) وCSV. تصدّر المصنّفات متعددة الأوراق الورقة الأولى عند التحويل إلى CSV.
|
||||
|
||||
## نقطة نهاية API {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/files/convert-spreadsheet`
|
||||
|
||||
يقبل بيانات نموذج متعدد الأجزاء تحتوي على ملف Excel/ODS/CSV وحقل JSON بصيغة `settings`.
|
||||
|
||||
## المعاملات {#parameters}
|
||||
|
||||
| المعامل | النوع | مطلوب | الافتراضي | الوصف |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| format | string | نعم | - | تنسيق الخرج: `xlsx`، `ods`، `csv` |
|
||||
|
||||
## مثال على الطلب {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/files/convert-spreadsheet \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@data.xlsx" \
|
||||
-F 'settings={"format": "csv"}'
|
||||
```
|
||||
|
||||
## مثال على الاستجابة {#example-response}
|
||||
|
||||
يُرجع `202 Accepted`. تابع التقدم عبر SSE على `/api/v1/jobs/{jobId}/progress`.
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"async": true
|
||||
}
|
||||
```
|
||||
|
||||
## ملاحظات {#notes}
|
||||
|
||||
- تنسيقات الدخل المقبولة: `.xlsx`، `.xls`، `.ods`، `.csv`.
|
||||
- عند تحويل مصنّف متعدد الأوراق إلى CSV، تُصدَّر الورقة الأولى فقط.
|
||||
- تُقيَّم الصيغ وتُصدَّر كقيم ثابتة في خرج CSV.
|
||||
- يجب أن يختلف تنسيق الخرج عن تنسيق الدخل.
|
||||
@@ -0,0 +1,48 @@
|
||||
---
|
||||
description: "تجميع ملفات متعددة في أرشيف ZIP واحد."
|
||||
i18n_source_hash: 9ff1250dbd36
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: cb11a75c7418
|
||||
---
|
||||
|
||||
# إنشاء ZIP {#create-zip}
|
||||
|
||||
اجمع ملفات متعددة من أي نوع في أرشيف ZIP واحد. تُزال الأسماء المكرّرة للملفات تلقائيًا.
|
||||
|
||||
## نقطة نهاية API {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/files/create-zip`
|
||||
|
||||
يقبل بيانات نموذج متعدد الأجزاء تحتوي على ملفين أو أكثر. لا يلزم حقل إعدادات.
|
||||
|
||||
## المعاملات {#parameters}
|
||||
|
||||
ليس لهذه الأداة معاملات قابلة للتهيئة. ارفع من 2 إلى 50 ملفًا من أي نوع لتجميعها.
|
||||
|
||||
## مثال على الطلب {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/files/create-zip \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@report.pdf" \
|
||||
-F "file=@data.csv" \
|
||||
-F "file=@photo.jpg"
|
||||
```
|
||||
|
||||
## مثال على الاستجابة {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/archive.zip",
|
||||
"originalSize": 3500000,
|
||||
"processedSize": 2800000
|
||||
}
|
||||
```
|
||||
|
||||
## ملاحظات {#notes}
|
||||
|
||||
- يتطلب بين 2 و50 ملف دخل.
|
||||
- يُقبل أي نوع ملف؛ ولا توجد قيود على تنسيق الدخل.
|
||||
- إذا تشارك عدة ملفات الاسم نفسه، تُزال أسماؤها المكرّرة تلقائيًا بلواحق رقمية.
|
||||
- يستخدم أرشيف الخرج ضغط ZIP القياسي (deflate).
|
||||
@@ -0,0 +1,59 @@
|
||||
---
|
||||
description: "التحويل بين CSV وExcel (XLSX)، في الاتجاهين."
|
||||
i18n_source_hash: 213297311e36
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 123daa125641
|
||||
---
|
||||
|
||||
# CSV إلى Excel {#csv-to-excel}
|
||||
|
||||
حوِّل بين تنسيقي CSV وExcel (XLSX) في الاتجاهين. ارفع ملف CSV أو TSV للحصول على XLSX، أو ارفع ملف XLSX للحصول على CSV.
|
||||
|
||||
## نقطة نهاية API {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/files/csv-excel`
|
||||
|
||||
يقبل بيانات نموذج متعدد الأجزاء تحتوي على ملف CSV أو TSV أو XLSX وحقل JSON بصيغة `settings`.
|
||||
|
||||
## المعاملات {#parameters}
|
||||
|
||||
| المعامل | النوع | مطلوب | الافتراضي | الوصف |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| sheet | integer | لا | `1` | رقم ورقة العمل المراد تصديرها عند التحويل من XLSX (الحد الأدنى 1) |
|
||||
|
||||
## مثال على الطلب {#example-request}
|
||||
|
||||
CSV إلى Excel:
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/files/csv-excel \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@data.csv" \
|
||||
-F 'settings={"sheet": 1}'
|
||||
```
|
||||
|
||||
Excel إلى CSV:
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/files/csv-excel \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@report.xlsx" \
|
||||
-F 'settings={"sheet": 2}'
|
||||
```
|
||||
|
||||
## مثال على الاستجابة {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/data.xlsx",
|
||||
"originalSize": 2048,
|
||||
"processedSize": 5120
|
||||
}
|
||||
```
|
||||
|
||||
## ملاحظات {#notes}
|
||||
|
||||
- يُكتشف اتجاه التحويل تلقائيًا من امتداد ملف الدخل: `.csv` أو `.tsv` يُنتج `.xlsx`، و`.xlsx` يُنتج `.csv`.
|
||||
- ينطبق المعامل `sheet` فقط عند التحويل من XLSX. وهو يحدّد ورقة العمل المراد تصديرها.
|
||||
- تُدعَم ملفات TSV (قيم مفصولة بعلامات جدولة) إلى جانب CSV.
|
||||
@@ -0,0 +1,60 @@
|
||||
---
|
||||
description: "التحويل بين CSV وJSON، في الاتجاهين."
|
||||
i18n_source_hash: 978c08ad46d3
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: beb106cfa248
|
||||
---
|
||||
|
||||
# CSV إلى JSON {#csv-to-json}
|
||||
|
||||
حوِّل بين تنسيقي CSV وJSON في الاتجاهين. ارفع ملف CSV أو TSV للحصول على مصفوفة JSON من الكائنات، أو ارفع مصفوفة JSON للحصول على ملف CSV.
|
||||
|
||||
## نقطة نهاية API {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/files/csv-json`
|
||||
|
||||
يقبل بيانات نموذج متعدد الأجزاء تحتوي على ملف CSV أو TSV أو JSON وحقل JSON بصيغة `settings`.
|
||||
|
||||
## المعاملات {#parameters}
|
||||
|
||||
| المعامل | النوع | مطلوب | الافتراضي | الوصف |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| pretty | boolean | لا | `true` | طباعة خرج JSON بتنسيق أنيق مع مسافات بادئة |
|
||||
|
||||
## مثال على الطلب {#example-request}
|
||||
|
||||
CSV إلى JSON:
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/files/csv-json \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@users.csv" \
|
||||
-F 'settings={"pretty": true}'
|
||||
```
|
||||
|
||||
JSON إلى CSV:
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/files/csv-json \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@users.json" \
|
||||
-F 'settings={}'
|
||||
```
|
||||
|
||||
## مثال على الاستجابة {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/users.json",
|
||||
"originalSize": 1500,
|
||||
"processedSize": 2200
|
||||
}
|
||||
```
|
||||
|
||||
## ملاحظات {#notes}
|
||||
|
||||
- يُكتشف اتجاه التحويل تلقائيًا من امتداد ملف الدخل: `.csv` أو `.tsv` يُنتج `.json`، و`.json` يُنتج `.csv`.
|
||||
- يؤثّر المعامل `pretty` في خرج JSON فقط. عند ضبطه على `false`، يكون الخرج سلسلة JSON مضغوطة في سطر واحد.
|
||||
- يجب أن يكون دخل JSON مصفوفة من الكائنات ذات مفاتيح متسقة. يصبح كل كائن صفًّا، ويصبح كل مفتاح ترويسة عمود.
|
||||
- تُدعَم ملفات TSV (قيم مفصولة بعلامات جدولة) إلى جانب CSV.
|
||||
@@ -0,0 +1,49 @@
|
||||
---
|
||||
description: "تحويل EPUB إلى PDF أو DOCX أو HTML أو Markdown."
|
||||
i18n_source_hash: 7d94fc18ca97
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 6aead6a9ebc1
|
||||
---
|
||||
|
||||
# تحويل EPUB {#convert-epub}
|
||||
|
||||
حوِّل كتاب EPUB الإلكتروني إلى PDF أو Word (DOCX) أو HTML أو Markdown. لا تُجلب الموارد البعيدة داخل الكتاب.
|
||||
|
||||
## نقطة نهاية API {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/files/epub-convert`
|
||||
|
||||
يقبل بيانات نموذج متعدد الأجزاء تحتوي على ملف EPUB وحقل JSON بصيغة `settings`.
|
||||
|
||||
## المعاملات {#parameters}
|
||||
|
||||
| المعامل | النوع | مطلوب | الافتراضي | الوصف |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| format | string | نعم | - | تنسيق الخرج: `pdf`، `docx`، `html`، `md` |
|
||||
|
||||
## مثال على الطلب {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/files/epub-convert \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@book.epub" \
|
||||
-F 'settings={"format": "pdf"}'
|
||||
```
|
||||
|
||||
## مثال على الاستجابة {#example-response}
|
||||
|
||||
يُرجع `202 Accepted`. تابع التقدم عبر SSE على `/api/v1/jobs/{jobId}/progress`.
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"async": true
|
||||
}
|
||||
```
|
||||
|
||||
## ملاحظات {#notes}
|
||||
|
||||
- تنسيق الدخل المقبول: `.epub`.
|
||||
- لا تُجلب الموارد البعيدة المضمّنة في EPUB (الصور والخطوط الخارجية) لأسباب أمنية.
|
||||
- قد تتفاوت دقة الصور في الخرج المُحوَّل تبعًا لبنية EPUB.
|
||||
- يتولّى Pandoc المعالجة على الخادم.
|
||||
@@ -0,0 +1,46 @@
|
||||
---
|
||||
description: "تحويل جداول البيانات إلى PDF."
|
||||
i18n_source_hash: 4dbe2a810ea6
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 08913bde74dc
|
||||
---
|
||||
|
||||
# Excel إلى PDF {#excel-to-pdf}
|
||||
|
||||
حوِّل جداول بيانات Excel أو OpenDocument أو CSV إلى PDF. قد تُقسَّم الأوراق العريضة على صفحات متعددة.
|
||||
|
||||
## نقطة نهاية API {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/files/excel-to-pdf`
|
||||
|
||||
يقبل بيانات نموذج متعدد الأجزاء تحتوي على ملف Excel/ODS/CSV.
|
||||
|
||||
## المعاملات {#parameters}
|
||||
|
||||
ليس لهذه الأداة معاملات قابلة للتهيئة. ارفع جدول بيانات وسيُحوَّل إلى PDF.
|
||||
|
||||
## مثال على الطلب {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/files/excel-to-pdf \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@budget.xlsx"
|
||||
```
|
||||
|
||||
## مثال على الاستجابة {#example-response}
|
||||
|
||||
يُرجع `202 Accepted`. تابع التقدم عبر SSE على `/api/v1/jobs/{jobId}/progress`.
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"async": true
|
||||
}
|
||||
```
|
||||
|
||||
## ملاحظات {#notes}
|
||||
|
||||
- تنسيقات الدخل المقبولة: `.xlsx`، `.xls`، `.ods`، `.csv`.
|
||||
- قد تُقسَّم الأوراق العريضة على صفحات متعددة في PDF الناتج.
|
||||
- تُصيَّر الرسوم البيانية والتنسيق الشرطي في خرج PDF.
|
||||
- يتولّى LibreOffice المعالجة أثناء تشغيله بلا واجهة رسومية على الخادم.
|
||||
@@ -0,0 +1,46 @@
|
||||
---
|
||||
description: "استخراج الملفات بأمان من أرشيف ZIP مع الحماية من قنابل الضغط."
|
||||
i18n_source_hash: 484a1f1051b8
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 206f003849a5
|
||||
---
|
||||
|
||||
# استخراج ZIP {#extract-zip}
|
||||
|
||||
استخرج الملفات بأمان من أرشيف ZIP. تُرجع الأرشيفات ذات الملف الواحد الملف المُحتوى مباشرةً؛ وتُرجع الأرشيفات متعددة الملفات ملف ZIP مسطّحًا يضم المحتويات المستخرجة.
|
||||
|
||||
## نقطة نهاية API {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/files/extract-zip`
|
||||
|
||||
يقبل بيانات نموذج متعدد الأجزاء تحتوي على ملف ZIP. لا يلزم حقل إعدادات.
|
||||
|
||||
## المعاملات {#parameters}
|
||||
|
||||
ليس لهذه الأداة معاملات قابلة للتهيئة. ارفع ملف `.zip` لاستخراجه.
|
||||
|
||||
## مثال على الطلب {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/files/extract-zip \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@archive.zip"
|
||||
```
|
||||
|
||||
## مثال على الاستجابة {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/archive_extracted.zip",
|
||||
"originalSize": 2800000,
|
||||
"processedSize": 3500000
|
||||
}
|
||||
```
|
||||
|
||||
## ملاحظات {#notes}
|
||||
|
||||
- تُقبل ملفات `.zip` فقط كدخل.
|
||||
- إذا احتوى الأرشيف على ملف واحد، يُرجع ذلك الملف مباشرةً (دون تغليفه في ZIP).
|
||||
- إذا احتوى الأرشيف على ملفات متعددة، يُرجع ZIP مسطّح بجميع الملفات المستخرَجة إلى المستوى الجذري (تُسطَّح بنية الأدلة المتداخلة).
|
||||
- ترفض الحماية المدمجة من قنابل الضغط الأرشيفات ذات نسب الضغط المفرطة أو أعداد الملفات المفرطة لمنع استنزاف الموارد.
|
||||
@@ -0,0 +1,46 @@
|
||||
---
|
||||
description: "تحويل ملف HTML إلى PDF."
|
||||
i18n_source_hash: 20b9ae147db5
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: b2aca2c04399
|
||||
---
|
||||
|
||||
# HTML إلى PDF {#html-to-pdf}
|
||||
|
||||
حوِّل ملف HTML إلى مستند PDF منسّق. تُعطَّل الموارد البعيدة (الصور وأوراق الأنماط والنصوص البرمجية الخارجية) للحفاظ على الخصوصية.
|
||||
|
||||
## نقطة نهاية API {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/files/html-to-pdf`
|
||||
|
||||
يقبل بيانات نموذج متعدد الأجزاء تحتوي على ملف HTML.
|
||||
|
||||
## المعاملات {#parameters}
|
||||
|
||||
ليس لهذه الأداة معاملات قابلة للتهيئة. ارفع ملف HTML وسيُحوَّل إلى PDF.
|
||||
|
||||
## مثال على الطلب {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/files/html-to-pdf \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@page.html"
|
||||
```
|
||||
|
||||
## مثال على الاستجابة {#example-response}
|
||||
|
||||
يُرجع `202 Accepted`. تابع التقدم عبر SSE على `/api/v1/jobs/{jobId}/progress`.
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"async": true
|
||||
}
|
||||
```
|
||||
|
||||
## ملاحظات {#notes}
|
||||
|
||||
- تنسيقات الدخل المقبولة: `.html`، `.htm`.
|
||||
- لا تُجلب الموارد البعيدة (الصور وأوراق الأنماط والنصوص البرمجية المشار إليها عبر روابط URL) حفاظًا على الخصوصية والأمان.
|
||||
- تُحفَظ الأنماط المضمّنة والصور المدمجة (روابط data URI).
|
||||
- يتولّى WeasyPrint المعالجة على الخادم.
|
||||
@@ -0,0 +1,59 @@
|
||||
---
|
||||
description: "التحويل بين JSON وXML، في الاتجاهين."
|
||||
i18n_source_hash: b3a6ded0c64a
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 710bea199247
|
||||
---
|
||||
|
||||
# JSON إلى XML {#json-to-xml}
|
||||
|
||||
حوِّل بين تنسيقي JSON وXML في الاتجاهين. ارفع ملف JSON للحصول على XML، أو ارفع ملف XML للحصول على JSON.
|
||||
|
||||
## نقطة نهاية API {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/files/json-xml`
|
||||
|
||||
يقبل بيانات نموذج متعدد الأجزاء تحتوي على ملف JSON أو XML وحقل JSON بصيغة `settings`.
|
||||
|
||||
## المعاملات {#parameters}
|
||||
|
||||
| المعامل | النوع | مطلوب | الافتراضي | الوصف |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| pretty | boolean | لا | `true` | طباعة الخرج بتنسيق أنيق مع مسافات بادئة |
|
||||
|
||||
## مثال على الطلب {#example-request}
|
||||
|
||||
JSON إلى XML:
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/files/json-xml \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@config.json" \
|
||||
-F 'settings={"pretty": true}'
|
||||
```
|
||||
|
||||
XML إلى JSON:
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/files/json-xml \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@config.xml" \
|
||||
-F 'settings={"pretty": true}'
|
||||
```
|
||||
|
||||
## مثال على الاستجابة {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/config.xml",
|
||||
"originalSize": 850,
|
||||
"processedSize": 1200
|
||||
}
|
||||
```
|
||||
|
||||
## ملاحظات {#notes}
|
||||
|
||||
- يُكتشف اتجاه التحويل تلقائيًا من امتداد ملف الدخل: `.json` يُنتج `.xml`، و`.xml` يُنتج `.json`.
|
||||
- ينطبق المعامل `pretty` في الاتجاهين. عند `false`، يكون الخرج مضغوطًا بلا مسافات بادئة.
|
||||
- تُحفَظ سمات XML والبنى المتداخلة أثناء التحويل ذهابًا وإيابًا حيثما أمكن.
|
||||
@@ -0,0 +1,46 @@
|
||||
---
|
||||
description: "تحويل ملف Markdown إلى مستند Word (DOCX)."
|
||||
i18n_source_hash: 979cb8ee13f2
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 36c0622bdb4f
|
||||
---
|
||||
|
||||
# Markdown إلى Word {#markdown-to-word}
|
||||
|
||||
حوِّل ملف Markdown إلى مستند Word (DOCX)، مع الحفاظ على العناوين والقوائم وكتل الشيفرة وسائر التنسيق.
|
||||
|
||||
## نقطة نهاية API {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/files/markdown-to-docx`
|
||||
|
||||
يقبل بيانات نموذج متعدد الأجزاء تحتوي على ملف Markdown.
|
||||
|
||||
## المعاملات {#parameters}
|
||||
|
||||
ليس لهذه الأداة معاملات قابلة للتهيئة. ارفع ملف Markdown وسيُحوَّل إلى DOCX.
|
||||
|
||||
## مثال على الطلب {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/files/markdown-to-docx \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@README.md"
|
||||
```
|
||||
|
||||
## مثال على الاستجابة {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/README.docx",
|
||||
"originalSize": 4500,
|
||||
"processedSize": 18200
|
||||
}
|
||||
```
|
||||
|
||||
## ملاحظات {#notes}
|
||||
|
||||
- تنسيقات الدخل المقبولة: `.md`، `.markdown`.
|
||||
- هذه أداة سريعة (متزامنة) تُرجع النتيجة مباشرةً.
|
||||
- تُربَط العناوين والنص العريض والمائل والروابط وكتل الشيفرة والقوائم بأنماط Word.
|
||||
- يتولّى Pandoc المعالجة على الخادم.
|
||||
@@ -0,0 +1,46 @@
|
||||
---
|
||||
description: "تحويل ملف Markdown إلى صفحة HTML مستقلة."
|
||||
i18n_source_hash: 3ef805e8fc8c
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 047ff0e9cd89
|
||||
---
|
||||
|
||||
# Markdown إلى HTML {#markdown-to-html}
|
||||
|
||||
حوِّل ملف Markdown إلى صفحة HTML مستقلة. تُترك الصور البعيدة المشار إليها في المصدر كما هي في الخرج.
|
||||
|
||||
## نقطة نهاية API {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/files/markdown-to-html`
|
||||
|
||||
يقبل بيانات نموذج متعدد الأجزاء تحتوي على ملف Markdown.
|
||||
|
||||
## المعاملات {#parameters}
|
||||
|
||||
ليس لهذه الأداة معاملات قابلة للتهيئة. ارفع ملف Markdown وسيُحوَّل إلى HTML.
|
||||
|
||||
## مثال على الطلب {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/files/markdown-to-html \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@notes.md"
|
||||
```
|
||||
|
||||
## مثال على الاستجابة {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/notes.html",
|
||||
"originalSize": 3200,
|
||||
"processedSize": 5800
|
||||
}
|
||||
```
|
||||
|
||||
## ملاحظات {#notes}
|
||||
|
||||
- تنسيقات الدخل المقبولة: `.md`، `.markdown`.
|
||||
- هذه أداة سريعة (متزامنة) تُرجع النتيجة مباشرةً.
|
||||
- الخرج صفحة HTML قائمة بذاتها بأنماط مضمّنة.
|
||||
- تُحفَظ روابط الصور البعيدة في مصدر Markdown كما هي ولا تُجلب.
|
||||
@@ -0,0 +1,46 @@
|
||||
---
|
||||
description: "تحويل ملف Markdown إلى PDF منسّق."
|
||||
i18n_source_hash: 18474dc8772a
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: cc9d163a23e6
|
||||
---
|
||||
|
||||
# Markdown إلى PDF {#markdown-to-pdf}
|
||||
|
||||
حوّل ملف Markdown إلى مستند PDF منسّق. المصادر البعيدة معطّلة حفاظًا على الخصوصية.
|
||||
|
||||
## نقطة نهاية API {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/files/markdown-to-pdf`
|
||||
|
||||
يقبل بيانات نموذج متعدّد الأجزاء (multipart) مع ملف Markdown.
|
||||
|
||||
## المعاملات {#parameters}
|
||||
|
||||
لا تحتوي هذه الأداة على أي معاملات قابلة للضبط. ارفع ملف Markdown وسيُحوَّل إلى PDF.
|
||||
|
||||
## مثال على الطلب {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/files/markdown-to-pdf \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@document.md"
|
||||
```
|
||||
|
||||
## مثال على الاستجابة {#example-response}
|
||||
|
||||
تُرجع `202 Accepted`. تابِع التقدّم عبر SSE على `/api/v1/jobs/{jobId}/progress`.
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"async": true
|
||||
}
|
||||
```
|
||||
|
||||
## ملاحظات {#notes}
|
||||
|
||||
- صيغ الإدخال المقبولة: `.md`، `.markdown`.
|
||||
- المصادر البعيدة (الصور وأوراق الأنماط المُشار إليها عبر روابط URL) لا تُجلب حفاظًا على الخصوصية والأمان.
|
||||
- يُصيَّر Markdown أولًا إلى HTML، ثم يُحوَّل إلى PDF عبر WeasyPrint.
|
||||
- تُنسَّق كتل الشيفرة والجداول وعناصر Markdown الأخرى في مخرجات PDF.
|
||||
@@ -0,0 +1,48 @@
|
||||
---
|
||||
description: "دمج عدّة ملفات CSV أو TSV ذات أعمدة متطابقة في ملف واحد."
|
||||
i18n_source_hash: 109b5f399ac8
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: b2ce9021384c
|
||||
---
|
||||
|
||||
# دمج ملفات CSV {#merge-csvs}
|
||||
|
||||
ادمج عدّة ملفات CSV أو TSV ذات أعمدة متطابقة في ملف واحد مدمج. يجب أن تحمل جميع ملفات الإدخال رؤوس الأعمدة نفسها.
|
||||
|
||||
## نقطة نهاية API {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/files/merge-csvs`
|
||||
|
||||
يقبل بيانات نموذج متعدّد الأجزاء (multipart) مع ملفَّي CSV أو أكثر. لا يلزم حقل إعدادات.
|
||||
|
||||
## المعاملات {#parameters}
|
||||
|
||||
لا تحتوي هذه الأداة على أي معاملات قابلة للضبط. ارفع من 2 إلى 20 ملف CSV أو TSV ذات رؤوس أعمدة متطابقة.
|
||||
|
||||
## مثال على الطلب {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/files/merge-csvs \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@january.csv" \
|
||||
-F "file=@february.csv" \
|
||||
-F "file=@march.csv"
|
||||
```
|
||||
|
||||
## مثال على الاستجابة {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/merged.csv",
|
||||
"originalSize": 30000,
|
||||
"processedSize": 28500
|
||||
}
|
||||
```
|
||||
|
||||
## ملاحظات {#notes}
|
||||
|
||||
- يتطلّب ما بين 2 و20 ملف إدخال.
|
||||
- يجب أن تشترك جميع الملفات في رؤوس الأعمدة نفسها. سيفشل الدمج إذا لم تتطابق الأعمدة.
|
||||
- يُدرَج صف الرأس مرّة واحدة في المخرجات؛ وتُدمَج صفوف البيانات من جميع الملفات بترتيب الرفع.
|
||||
- تُقبل ملفات CSV وTSV معًا، لكن ينبغي أن تستخدم كل الملفات في الطلب الواحد الفاصل نفسه.
|
||||
@@ -0,0 +1,46 @@
|
||||
---
|
||||
description: "تحويل العروض التقديمية إلى PDF."
|
||||
i18n_source_hash: 49bd71c46bed
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 617c72fc3890
|
||||
---
|
||||
|
||||
# PowerPoint إلى PDF {#powerpoint-to-pdf}
|
||||
|
||||
حوّل عروض PowerPoint أو OpenDocument التقديمية إلى PDF، بشريحة واحدة لكل صفحة.
|
||||
|
||||
## نقطة نهاية API {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/files/powerpoint-to-pdf`
|
||||
|
||||
يقبل بيانات نموذج متعدّد الأجزاء (multipart) مع ملف PowerPoint/ODP.
|
||||
|
||||
## المعاملات {#parameters}
|
||||
|
||||
لا تحتوي هذه الأداة على أي معاملات قابلة للضبط. ارفع عرضًا تقديميًا وسيُحوَّل إلى PDF.
|
||||
|
||||
## مثال على الطلب {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/files/powerpoint-to-pdf \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@slides.pptx"
|
||||
```
|
||||
|
||||
## مثال على الاستجابة {#example-response}
|
||||
|
||||
تُرجع `202 Accepted`. تابِع التقدّم عبر SSE على `/api/v1/jobs/{jobId}/progress`.
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"async": true
|
||||
}
|
||||
```
|
||||
|
||||
## ملاحظات {#notes}
|
||||
|
||||
- صيغ الإدخال المقبولة: `.pptx`، `.ppt`، `.odp`.
|
||||
- تصبح كل شريحة صفحة واحدة في PDF.
|
||||
- يتولّى التحويل LibreOffice المُشغَّل بدون واجهة رسومية على الخادم.
|
||||
- الرسوم المتحركة والانتقالات غير مُدرَجة في مخرجات PDF.
|
||||
@@ -0,0 +1,50 @@
|
||||
---
|
||||
description: "تقسيم ملف CSV إلى ملفات أصغر حسب عدد الصفوف."
|
||||
i18n_source_hash: a35dce4a99a3
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 1d8010ec49a4
|
||||
---
|
||||
|
||||
# تقسيم CSV {#split-csv}
|
||||
|
||||
قسّم ملف CSV أو TSV كبيرًا إلى ملفات أصغر حسب عدد الصفوف. تُرجع أرشيف ZIP يحتوي على الأجزاء.
|
||||
|
||||
## نقطة نهاية API {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/files/split-csv`
|
||||
|
||||
يقبل بيانات نموذج متعدّد الأجزاء (multipart) مع ملف CSV وحقل `settings` بصيغة JSON.
|
||||
|
||||
## المعاملات {#parameters}
|
||||
|
||||
| المعامل | النوع | مطلوب | الافتراضي | الوصف |
|
||||
|-----------|------|----------|---------|-------------|
|
||||
| rowsPerFile | integer | لا | `1000` | عدد صفوف البيانات لكل ملف مخرَج (1-1,000,000) |
|
||||
| keepHeader | boolean | لا | `true` | تكرار صف الرأس في كل ملف مخرَج |
|
||||
|
||||
## مثال على الطلب {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/files/split-csv \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@large-dataset.csv" \
|
||||
-F 'settings={"rowsPerFile": 500, "keepHeader": true}'
|
||||
```
|
||||
|
||||
## مثال على الاستجابة {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/large-dataset_parts.zip",
|
||||
"originalSize": 1048576,
|
||||
"processedSize": 1050000
|
||||
}
|
||||
```
|
||||
|
||||
## ملاحظات {#notes}
|
||||
|
||||
- المخرجات دائمًا أرشيف ZIP يحتوي على أجزاء CSV المقسّمة، مُسمّاة تسلسليًا (مثل `part-1.csv`، `part-2.csv`).
|
||||
- عندما تكون قيمة `keepHeader` هي `true`، يتضمّن كل جزء صف الرأس الأصلي بحيث يمكن استخدام كل ملف بمفرده.
|
||||
- تُقبل ملفات CSV وTSV معًا كمدخلات.
|
||||
- يشير عدد الصفوف إلى صفوف البيانات فقط؛ ولا يُحتسب صف الرأس.
|
||||
@@ -0,0 +1,46 @@
|
||||
---
|
||||
description: "تحويل ملفات Word أو Markdown أو HTML أو النص العادي إلى EPUB."
|
||||
i18n_source_hash: 63e1afa91c52
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 01936141b708
|
||||
---
|
||||
|
||||
# التحويل إلى EPUB {#convert-to-epub}
|
||||
|
||||
حوّل مستندات Word أو Markdown أو HTML أو ملفات النص العادي إلى صيغة كتاب EPUB الإلكتروني.
|
||||
|
||||
## نقطة نهاية API {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/files/to-epub`
|
||||
|
||||
يقبل بيانات نموذج متعدّد الأجزاء (multipart) مع ملف Word/Markdown/HTML/TXT.
|
||||
|
||||
## المعاملات {#parameters}
|
||||
|
||||
لا تحتوي هذه الأداة على أي معاملات قابلة للضبط. ارفع مستندًا وسيُحوَّل إلى EPUB.
|
||||
|
||||
## مثال على الطلب {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/files/to-epub \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@manuscript.docx"
|
||||
```
|
||||
|
||||
## مثال على الاستجابة {#example-response}
|
||||
|
||||
تُرجع `202 Accepted`. تابِع التقدّم عبر SSE على `/api/v1/jobs/{jobId}/progress`.
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"async": true
|
||||
}
|
||||
```
|
||||
|
||||
## ملاحظات {#notes}
|
||||
|
||||
- صيغ الإدخال المقبولة: `.docx`، `.md`، `.html`، `.txt`.
|
||||
- تتّبع مخرجات EPUB مواصفة EPUB 3.
|
||||
- تُستخدم العناوين في المستند المصدر لتوليد جدول المحتويات.
|
||||
- يتولّى التحويل Pandoc على الخادم.
|
||||
@@ -0,0 +1,46 @@
|
||||
---
|
||||
description: "تحويل مستندات Word إلى PDF."
|
||||
i18n_source_hash: f814ba1a1a53
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 708cf09a5c37
|
||||
---
|
||||
|
||||
# Word إلى PDF {#word-to-pdf}
|
||||
|
||||
حوّل مستندات Word أو نصوص OpenDocument أو RTF أو ملفات النص العادي إلى PDF.
|
||||
|
||||
## نقطة نهاية API {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/files/word-to-pdf`
|
||||
|
||||
يقبل بيانات نموذج متعدّد الأجزاء (multipart) مع ملف Word/ODT/RTF/TXT.
|
||||
|
||||
## المعاملات {#parameters}
|
||||
|
||||
لا تحتوي هذه الأداة على أي معاملات قابلة للضبط. ارفع مستندًا وسيُحوَّل إلى PDF.
|
||||
|
||||
## مثال على الطلب {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/files/word-to-pdf \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@report.docx"
|
||||
```
|
||||
|
||||
## مثال على الاستجابة {#example-response}
|
||||
|
||||
تُرجع `202 Accepted`. تابِع التقدّم عبر SSE على `/api/v1/jobs/{jobId}/progress`.
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"async": true
|
||||
}
|
||||
```
|
||||
|
||||
## ملاحظات {#notes}
|
||||
|
||||
- صيغ الإدخال المقبولة: `.docx`، `.doc`، `.odt`، `.rtf`، `.txt`.
|
||||
- يتولّى التحويل LibreOffice المُشغَّل بدون واجهة رسومية على الخادم.
|
||||
- تُستخدم الخطوط المُضمَّنة في المستند عند توفّرها؛ وإلا استُبدلت بخطوط النظام.
|
||||
- تُحفَظ الترويسات والتذييلات والجداول والصور في مخرجات PDF.
|
||||
@@ -0,0 +1,46 @@
|
||||
---
|
||||
description: "استخراج العناصر المتكرّرة من XML إلى جدول CSV."
|
||||
i18n_source_hash: 3ab1019bff8a
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 15935b7b23f0
|
||||
---
|
||||
|
||||
# XML إلى CSV {#xml-to-csv}
|
||||
|
||||
استخرج العناصر المتكرّرة من ملف XML إلى جدول CSV مسطّح. تعثر الأداة تلقائيًا على أول مصفوفة كائنات في شجرة XML وتُطابِق كل عنصر بصف.
|
||||
|
||||
## نقطة نهاية API {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/files/xml-to-csv`
|
||||
|
||||
يقبل بيانات نموذج متعدّد الأجزاء (multipart) مع ملف XML. لا يلزم حقل إعدادات.
|
||||
|
||||
## المعاملات {#parameters}
|
||||
|
||||
لا تحتوي هذه الأداة على أي معاملات قابلة للضبط. يُكتشَف العنصر المتكرّر تلقائيًا من بنية XML.
|
||||
|
||||
## مثال على الطلب {#example-request}
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/files/xml-to-csv \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@catalog.xml"
|
||||
```
|
||||
|
||||
## مثال على الاستجابة {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/catalog.csv",
|
||||
"originalSize": 4500,
|
||||
"processedSize": 1800
|
||||
}
|
||||
```
|
||||
|
||||
## ملاحظات {#notes}
|
||||
|
||||
- تُقبل ملفات `.xml` فقط كمدخلات.
|
||||
- تفحص الأداة شجرة XML بحثًا عن أول مجموعة متكرّرة من العناصر الشقيقة وتستخدمها كصفوف.
|
||||
- يصبح كل اسم عنصر ابن أو سمة فريد رأس عمود في CSV.
|
||||
- هذا تحويل باتجاه واحد. للتحويل ثنائي الاتجاه بين JSON/XML، استخدم أداة [JSON إلى XML](/ar/tools/files/json-xml).
|
||||
@@ -0,0 +1,55 @@
|
||||
---
|
||||
description: "التحويل بين YAML وJSON في الاتجاهين."
|
||||
i18n_source_hash: acf8ca21ee99
|
||||
i18n_provenance: human
|
||||
i18n_output_hash: 3f6fafb6b475
|
||||
---
|
||||
|
||||
# YAML / JSON {#yaml-json}
|
||||
|
||||
حوّل بين صيغتَي YAML وJSON في كلا الاتجاهين. ارفع ملف YAML لتحصل على JSON، أو ارفع ملف JSON لتحصل على YAML.
|
||||
|
||||
## نقطة نهاية API {#api-endpoint}
|
||||
|
||||
`POST /api/v1/tools/files/yaml-json`
|
||||
|
||||
يقبل بيانات نموذج متعدّد الأجزاء (multipart) مع ملف YAML أو JSON. لا يلزم حقل إعدادات.
|
||||
|
||||
## المعاملات {#parameters}
|
||||
|
||||
لا تحتوي هذه الأداة على أي معاملات قابلة للضبط. يُحدَّد اتجاه التحويل من امتداد ملف الإدخال.
|
||||
|
||||
## مثال على الطلب {#example-request}
|
||||
|
||||
من YAML إلى JSON:
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/files/yaml-json \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@config.yaml"
|
||||
```
|
||||
|
||||
من JSON إلى YAML:
|
||||
|
||||
```bash
|
||||
curl -X POST http://localhost:1349/api/v1/tools/files/yaml-json \
|
||||
-H "Authorization: Bearer si_your-api-key" \
|
||||
-F "file=@config.json"
|
||||
```
|
||||
|
||||
## مثال على الاستجابة {#example-response}
|
||||
|
||||
```json
|
||||
{
|
||||
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||||
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/config.json",
|
||||
"originalSize": 620,
|
||||
"processedSize": 780
|
||||
}
|
||||
```
|
||||
|
||||
## ملاحظات {#notes}
|
||||
|
||||
- يُكتشَف اتجاه التحويل تلقائيًا من امتداد ملف الإدخال: `.yaml` أو `.yml` يُنتج `.json`، و`.json` يُنتج `.yaml`.
|
||||
- يُقبل امتدادا `.yaml` و`.yml` معًا.
|
||||
- يُحوَّل المستند الأول فقط في ملف YAML متعدّد المستندات؛ وتُتجاهَل المستندات الإضافية المفصولة بـ `---`.
|
||||
Reference in New Issue
Block a user