skill

ملف PDF

استخدم هذه المهارة كلما أراد المستخدم القيام بأي شيء يتعلق بملفات PDF. يشمل ذلك قراءة أو استخراج النصوص/الجداول من ملفات PDF، دمج ملفات PDF متعددة في ملف واحد، تقسيم ملفات PDF، تدوير الصفحات، إضافة علامات مائية، إنشاء ملفات PDF جديدة، تعبئة نماذج PDF، تشفير/فك تشفير ملفات PDF، استخراج الصور، وإجراء OCR على ملفات PDF الممسوحة ضوئيا لجعلها قابلة للبحث. إذا ذكر المستخدم ملف .pdf أو طلب إنتاج واحد، فاستخدم هذه المهارة.

Anthropic4.80+ تثبيتموثوق

نبذة

# دليل معالجة ملفات PDF

## نظرة عامة

يغطي هذا الدليل عمليات معالجة ملفات PDF الأساسية باستخدام مكتبات Python وأدوات سطر الأوامر. للحصول على الميزات المتقدمة ومكتبات JavaScript والأمثلة التفصيلية، راجع REFERENCE.md. إذا كنت بحاجة إلى تعبئة نموذج PDF، فاقرأ FORMS.md واتبع تعليماته.

## البدء السريع

```python from pypdf import PdfReader, PdfWriter

# Read a PDF reader = PdfReader("document.pdf") print(f"Pages: {len(reader.pages)}")

# Extract text text = "" for page in reader.pages: text += page.extract_text() ```

## مكتبات Python

### pypdf - العمليات الأساسية

#### دمج ملفات PDF ```python from pypdf import PdfWriter, PdfReader

writer = PdfWriter() for pdf_file in ["doc1.pdf", "doc2.pdf", "doc3.pdf"]: reader = PdfReader(pdf_file) for page in reader.pages: writer.add_page(page)

with open("merged.pdf", "wb") as output: writer.write(output) ```

#### تقسيم ملف PDF ```python reader = PdfReader("input.pdf") for i, page in enumerate(reader.pages): writer = PdfWriter() writer.add_page(page) with open(f"page_{i+1}.pdf", "wb") as output: writer.write(output) ```

#### استخراج البيانات الوصفية (Metadata) ```python reader = PdfReader("document.pdf") meta = reader.metadata print(f"Title: {meta.title}") print(f"Author: {meta.author}") print(f"Subject: {meta.subject}") print(f"Creator: {meta.creator}") ```

#### تدوير الصفحات ```python reader = PdfReader("input.pdf") writer = PdfWriter()

page = reader.pages[0] page.rotate(90) # Rotate 90 degrees clockwise writer.add_page(page)

with open("rotated.pdf", "wb") as output: writer.write(output) ```

### pdfplumber - استخراج النصوص والجداول

#### استخراج النص مع التخطيط ```python import pdfplumber

with pdfplumber.open("document.pdf") as pdf: for page in pdf.pages: text = page.extract_text() print(text) ```

#### استخراج الجداول ```python with pdfplumber.open("document.pdf") as pdf: for i, page in enumerate(pdf.pages): tables = page.extract_tables() for j, table in enumerate(tables): print(f"Table {j+1} on page {i+1}:") for row in table: print(row) ```

#### استخراج الجداول المتقدم ```python import pandas as pd

with pdfplumber.open("document.pdf") as pdf: all_tables = [] for page in pdf.pages: tables = page.extract_tables() for table in tables: if table: # Check if table is not empty df = pd.DataFrame(table[1:], columns=table[0]) all_tables.append(df)

# Combine all tables if all_tables: combined_df = pd.concat(all_tables, ignore_index=True) combined_df.to_excel("extracted_tables.xlsx", index=False) ```

### reportlab - إنشاء ملفات PDF

#### إنشاء ملف PDF أساسي ```python from reportlab.lib.pagesizes import letter from reportlab.pdfgen import canvas

c = canvas.Canvas("hello.pdf", pagesize=letter) width, height = letter

# Add text c.drawString(100, height - 100, "Hello World!") c.drawString(100, height - 120, "This is a PDF created with reportlab")

# Add a line c.line(100, height - 140, 400, height - 140)

# Save c.save() ```

#### إنشاء ملف PDF متعدد الصفحات ```python from reportlab.lib.pagesizes import letter from reportlab.platypus import SimpleDocTemplate, Paragraph, Spacer, PageBreak from reportlab.lib.styles import getSampleStyleSheet

doc = SimpleDocTemplate("report.pdf", pagesize=letter) styles = getSampleStyleSheet() story = []

# Add content title = Paragraph("Report Title", styles['Title']) story.append(title) story.append(Spacer(1, 12))

body = Paragraph("This is the body of the report. " * 20, styles['Normal']) story.append(body) story.append(PageBreak())

# Page 2 story.append(Paragraph("Page 2", styles['Heading1'])) story.append(Paragraph("Content for page 2", styles['Normal']))

# Build PDF doc.build(story) ```

#### الأحرف السفلية والعلوية (Subscripts and Superscripts)

**هام**: لا تستخدم أبدا أحرف Unicode السفلية/العلوية (₀₁₂₃₄₅₆₇₈₉, ⁰¹²³⁴⁵⁶⁷⁸⁹) في ملفات PDF التي تم إنشاؤها باستخدام ReportLab. لا تتضمن الخطوط المضمنة هذه الرموز الرسومية، مما يتسبب في عرضها كمربعات سوداء صلبة.

بدلا من ذلك، استخدم علامات ترميز XML الخاصة ب ReportLab في كائنات Paragraph: ```python from reportlab.platypus import Paragraph from reportlab.lib.styles import getSampleStyleSheet

styles = getSampleStyleSheet()

# Subscripts: use <sub> tag chemical = Paragraph("H<sub>2</sub>O", styles['Normal'])

# Superscripts: use <super> tag squared = Paragraph("x<super>2</super> + y<super>2</super>", styles['Normal']) ```

بالنسبة للنص المرسوم على canvas (وليس كائنات Paragraph)، اضبط حجم الخط وموضعه يدويا بدلا من استخدام أحرف Unicode السفلية/العلوية.

## أدوات سطر الأوامر

### pdftotext (poppler-utils) ```bash # Extract text pdftotext input.pdf output.txt

# Extract text preserving layout pdftotext -layout input.pdf output.txt

# Extract specific pages pdftotext -f 1 -l 5 input.pdf output.txt # Pages 1-5 ```

### qpdf ```bash # Merge PDFs qpdf --empty --pages file1.pdf file2.pdf -- merged.pdf

# Split pages qpdf input.pdf --p ```

التثبيت

شغل هذا الأمر

git clone https://github.com/anthropics/skills && cp -r skills/skills/pdf ~/.claude/skills/

يعمل مع

claude appclaude codeclaude apicursorcodexwindsurfclinezed

خطوات التثبيت

استنسخ المستودع وانسخ مجلد `pdf` إلى دليل مهارات Claude الخاص بك. متوافق مع Claude Code وCursor وCodex وأي وكيل متوافق مع Agent Skills.

عرض المصدر
الرخصة: Proprietary. LICENSE.txt has complete termsبواسطة Anthropic

أسئلة شائعة

ما هي مهارة ملف PDF؟

استخدم هذه المهارة كلما أراد المستخدم القيام بأي شيء يتعلق بملفات PDF. يشمل ذلك قراءة أو استخراج النصوص/الجداول من ملفات PDF، دمج ملفات PDF متعددة في ملف واحد، تقسيم ملفات PDF، تدوير الصفحات، إضافة علامات مائية، إنشاء ملفات PDF جديدة، تعبئة نماذج PDF، تشفير/فك تشفير ملفات PDF، استخراج الصور، وإجراء OCR على ملفات PDF الممسوحة ضوئيا لجعلها قابلة للبحث. إذا ذكر المستخدم ملف .pdf أو طلب إنتاج واحد، فاستخدم هذه المهارة.

كيف أثبت ملف PDF؟

شغل هذا الأمر في الطرفية:

git clone https://github.com/anthropics/skills && cp -r skills/skills/pdf ~/.claude/skills/
مع أي أدوات ذكاء اصطناعي تعمل ملف PDF؟

تعمل مع claude_app، claude_code، claude_api، cursor، codex، windsurf، cline، zed.

من طور ملف PDF؟

طورها Anthropic، وتصدر بترخيص Proprietary. LICENSE.txt has complete terms.

هل ملف PDF مجانية؟

نعم، يمكنك استخدامها مجانا وفق ترخيص Proprietary. LICENSE.txt has complete terms.

أصول ذات صلة

مختارات أخرى في الإنتاجية والمكتب.

كل بدائل ملف PDF ←
skillclaude_appclaude_codeclaude_api
npx skills add vercel-labs/skills
البحث عن المهارات
يساعد المستخدمين على اكتشاف وتثبيت مهارات الوكلاء عندما يطرحون أسئلة مثل "كيف أفعل X؟"، "ابحث عن مهارة ل X"، "هل توجد مهارة يمكنها..."، أو يعبرون عن ا…3,611,572+
skillclaude_appclaude_codeclaude_api
npx skills add mattpocock/skills
تحسين هيكلية قاعدة الكود
افحص قاعدة بيانات برمجية بحثا عن فرص للتحسين والتعميق، وقدمها كتقرير HTML مرئي، ثم تعمق في أي فرصة تختارها.1,040,100+
skillclaude_appclaude_codeclaude_api
npx skills add mattpocock/skills
تسليم المهام
لخص المحادثة الحالية في وثيقة تسليم ليتابعها وكيل آخر.946,569+
skillclaude_appclaude_codeclaude_api
npx skills add mattpocock/skills
فرز أولي
نقل المشكلات وطلبات السحب الخارجية عبر آلة حالة لأدوار الفرز، وتصنيفها، والتحقق منها، والتدقيق فيها عند الحاجة، وكتابة ملخصات جاهزة للوكلاء.881,979+
skillclaude_appclaude_codeclaude_api
npx skills add mattpocock/skills
تعليم
علم المستخدم مهارة أو مفهوما جديدا ضمن مساحة العمل هذه.778,928+
skillclaude_appclaude_codeclaude_api
npx skills add genmedia-labs/skills
تحرير الفيديو
تعديل فيديو على RunComfy — هذه المهارة هي موجه ذكي يطابق نية المستخدم بنموذج التعديل الصحيح في كتالوج RunComfy. تختار Wan 2.7 Edit-Video (إعادة تصميم…719,176+

افحص قبل التثبيت

شغل أي مصدر عبر فحوصاتنا - الظهور في الذكاء الاصطناعي والأمان والأداء واكتشاف التقنيات.

المزيد في الإنتاجية والمكتب