إضافة نص وصورة إلى رأس ملف PDF

عندما يتعلق الأمر بإنشاء مستندات PDF احترافية وجذابة بصريًا، فإن القدرة على إضافة الصور والنص إلى الرأس هي ميزة ضرورية. يعد قسم الرأس أحد أهم مناطق المستند، لأنه يوفر للقراء معلومات أساسية مثل العنوان والمؤلف والتاريخ. في حين أن إضافة نص إلى الرأس عملية مباشرة نسبيًا، فإن إضافة الصور يمكن أن تكون أكثر تحديًا، خاصة بالنسبة لمطوري Python الجدد في إنشاء مستندات PDF. في هذه المقالة، سنستكشف كيفية إضافة صورة ونص إلى رأس مستند PDF باستخدام Python Cloud SDK.

يمكنك إضافة الصور والشعارات والتاريخ والوقت الذي قمت فيه بإنشاء المستند وعنوان المستند ورقم الإصدار أو المراجعة والمسودة واسم المؤلف وأسماء الفصول في رأس ملف PDF.

واجهة برمجة التطبيقات REST لتجميع مستندات PDF

Aspose.PDF Cloud SDK for Python توفر مجموعة متنوعة من الوظائف والطرق التي تسمح للمطورين بالتلاعب بملفات PDF برمجيًا. كما توفر مجموعة قوية ومرنة من الأدوات لإضافة الصور والنصوص إلى رؤوس مستندات PDF، ويمكن دمجها بسهولة في تطبيقات Python لمعالجة مستندات PDF تلقائيًا. الآن فيما يتعلق بعملية إضافة صورة إلى الرأس، فإنها تتضمن تحديد موقع وأبعاد الصورة، بالإضافة إلى رقم الصفحة التي يجب أن تظهر فيها الصورة. وبالمثل، تتطلب إضافة نص إلى الرأس تحديد محتوى النص وحجم الخط وخيارات التنسيق الأخرى. توفر SDK أيضًا خيارات للتحكم في محاذاة محتوى الرأس وموضعه، بالإضافة إلى تحديد لون خلفية الرأس.

الآن، نحتاج أولاً إلى تثبيت SDK الذي يتوفر مجانًا للتنزيل عبر مستودع PIP وGitHub. ما عليك سوى تنفيذ الأمر التالي لتثبيت أحدث إصدار من SDK.

pip install asposepdfcloud

للوصول إلى واجهة برمجة التطبيقات REST، يتعين عليك التسجيل والحصول على بيانات الاعتماد الشخصية الخاصة بك. يُرجى إلقاء نظرة على دليل البدء السريع للحصول على معلومات ذات صلة.

إضافة نص إلى رأس ملف PDF باستخدام Python

تتيح لك مجموعة أدوات التطوير البرمجية (SDK) إضافة سلاسل نصية إلى قسم رأس المستند، ويمكن إنجاز هذا المطلب باستخدام الخطوات التالية.

  • أولاً، قم بإنشاء مثيل لفئة ApiClient مع توفير معرف العميل وسر العميل كوسائط.
  • ثانيًا، قم بإنشاء كائن من فئة PdfApi والذي يأخذ كائن ApiClient كحجة إدخال.
  • ثالثًا، قم بإنشاء كائن من TextHeader يحدد خصائص مثيل TextHeader.
  • لتعيين تنسيق النص لـ TextHeader، قم بإنشاء كائن TextState حيث نقوم بتحديد لون المقدمة وحجم الخط واسم الخط وما إلى ذلك.
  • أخيرًا، اتصل بطريقة postdocumenttextheader(..) لإضافة رأس النص إلى مستند PDF وحفظ الملف الناتج في التخزين السحابي.
def addTextHeader():
    try:
        #Client credentials
        client_secret = "1c9379bb7d701c26cc87e741a29987bb"
        client_id = "bbf94a2c-6d7e-4020-b4d2-b9809741374e"

        #initialize PdfApi client instance using client credetials
        pdf_api_client = asposepdfcloud.api_client.ApiClient(client_secret, client_id)

        # إنشاء مثيل PdfApi أثناء تمرير PdfApiClient كحجة
        pdf_api = PdfApi(pdf_api_client)

        #source PDF file
        input_file = 'awesomeTable.pdf'
        
        # إنشاء كائن يحدد رأس النص
        textHeader = asposepdfcloud.TextHeader()
        # تعيين القيمة لعرض الرأس في الخلفية
        textHeader.background = False
        # تعيين المحاذاة الأفقية لرأس النص في المنتصف
        textHeader.horizontal_alignment = 'Center'
        # ضبط تعتيم الرأس إلى 0.5
        textHeader.opacity = 0.5
        # لا زاوية دوران
        textHeader.rotate = None
        textHeader.rotate_angle = 0
        # تعيين قيمة المسافة البادئة X وY
        textHeader.x_indent = 100
        textHeader.y_indent = 100
        # ضبط عامل التكبير إلى 1.0
        textHeader.zoom = 1.0
        # قيمة النص المراد عرضها داخل الرأس
        textHeader.value = 'Aspose.PDF Cloud'

        # إنشاء مثيل لـ TextState لتحديد تنسيق النص
        textState = asposepdfcloud.TextState(font_size=15, font='Arial', foreground_color=
              {"A": 0,
              "R": 252,
              "G": 173,
              "B": 3},font_style=2)
        # تمرير كائن TextState إلى TextHeader
        textHeader.text_state = textState

        # اتصل بواجهة برمجة التطبيقات لإضافة رأس النص إلى مستند PDF
        response = pdf_api.post_document_text_header(name = input_file, text_header = textHeader)
        
        # طباعة رمز الاستجابة في وحدة التحكم
        print(response)
        # طباعة الرسالة في وحدة التحكم (اختياري)
        print('Text Header successfully added to PDF !')    
    except ApiException as e:
        print("Exception while calling PdfApi: {0}".format(e))
        print("Code:" + str(e.code))
        print("Message:" + e.message)
رأس النص في ملف PDF

الصورة 2:- معاينة رأس النص في مستند PDF.

يمكن تنزيل ملفات PDF المدخلة والناتجة من awesomeTable.pdf و awecomeTable-TextHeader.pdf.

إضافة صورة إلى رأس ملف PDF باستخدام Python

يرجى اتباع الإرشادات أدناه لإضافة كائن صورة إلى قسم رأس ملف PDF. يتم تحميل الملف الناتج إلى التخزين السحابي.

  • أولاً، قم بإنشاء مثيل لفئة ApiClient مع توفير معرف العميل وسر العميل كوسائط.
  • ثانيًا، قم بإنشاء كائن من فئة PdfApi والذي يأخذ كائن ApiClient كحجة إدخال.
  • الآن قم بإنشاء كائن من ImageHeader يحدد خصائص ImageHeader.
  • من أجل التحكم في عرض الرأس في صفحات معينة، يتم تعيين قيم إلى المعلمات الاختيارية startpagenumber و endpagenumber.
  • أخيرًا، اتصل بطريقة postdocumentimageheader(..) لإضافة رأس الصورة إلى مستند PDF وحفظ الملف الناتج في التخزين السحابي. لاحظ أن الرأس يُضاف فقط إلى أول صفحتين من المستند (كما هو محدد في الكود).
def addImageHeader():
    try:
        #Client credentials
        client_secret = "1c9379bb7d701c26cc87e741a29987bb"
        client_id = "bbf94a2c-6d7e-4020-b4d2-b9809741374e"

        #initialize PdfApi client instance using client credetials
        pdf_api_client = asposepdfcloud.api_client.ApiClient(client_secret, client_id)

        # إنشاء مثيل PdfApi أثناء تمرير PdfApiClient كحجة
        pdf_api = PdfApi(pdf_api_client)

        #source PDF file
        input_file = 'awesomeTable.pdf'
        
        # إنشاء مثيل ImageHeader
        imageHeader = asposepdfcloud.ImageHeader()
        # تعيين خاصية الخلفية على true
        imageHeader.background = True
        # تعيين المحاذاة الأفقية على اليمين
        imageHeader.horizontal_alignment = 'Right'
        imageHeader.opacity = 0.7
        imageHeader.rotate = None
        imageHeader.rotate_angle = 0
        imageHeader.x_indent = 10
        imageHeader.y_indent = 10
        imageHeader.zoom = .5
        # اسم ملف الصورة المتاح في التخزين السحابي ليتم إضافته في الرأس
        imageHeader.file_name = 'Koala.jpg'
        # عرض الصورة في الرأس
        imageHeader.width = 120
        # ارتفاع الصورة في العنوان
        imageHeader.height = 120
        imageHeader.left_margin = 0
        imageHeader.top_margin = 10
        imageHeader.right_margin = 10
        
        # صفحة البدء للمستند لإضافة الرأس
        startPage = 1
        # الصفحة الأخيرة من المستند لإضافة الرأس
        endPage = 2

        # اتصل بواجهة برمجة التطبيقات لإضافة رأس الصورة في مستند PDF وحفظ الملف الناتج في التخزين السحابي
        response = pdf_api.post_document_image_header(name = input_file, image_header = imageHeader, start_page_number = startPage, end_page_number=endPage)
        
        # طباعة رمز الاستجابة في وحدة التحكم
        print(response)
        
        # طباعة الرسالة في وحدة التحكم (اختياري)
        print('Image Header successfully added to PDF !')    
    except ApiException as e:
        print("Exception while calling PdfApi: {0}".format(e))
        print("Code:" + str(e.code))
        print("Message:" + e.message)
التسمية التوضيحية

Image 3:- Preview of Image Header added in PDF.

يمكن تنزيل ملفات المصدر والملف الناتج الناتج في المثال أعلاه من

إضافة رأس النص إلى ملف PDF باستخدام الأمر cURL

توفر أوامر cURL آلية ملائمة للوصول إلى واجهات برمجة تطبيقات REST من خلال محطات سطر الأوامر. ونظرًا لأن Aspose.PDF Cloud تم تطويره أيضًا وفقًا لهندسة REST، فيمكننا أيضًا الوصول إلى واجهة برمجة التطبيقات باستخدام أوامر cURL. يمكن أن يكون هذا النهج مفيدًا للمطورين الذين يفضلون العمل باستخدام أدوات سطر الأوامر أو الذين يحتاجون إلى دمج تحرير رأس PDF في سير عمل أتمتة أكبر.

الآن لاستخدام واجهة برمجة التطبيقات REST، نحتاج إلى إنشاء رمز وصول ويب JSON (JWT) استنادًا إلى بيانات اعتماد العميل الخاصة بك عن طريق تنفيذ الأمر التالي.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=88d1cda8-b12c-4a80-b1ad-c85ac483c5c5&client_secret=406b404b2df649611e508bbcfcd2a77f" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

بمجرد حصولنا على رمز JWT، يرجى محاولة استخدام الأمر التالي لإضافة نص في قسم الرأس من المستند في الصفحتين الأولى والثانية.

curl -X POST "https://api.aspose.cloud/v3.0/pdf/awesomeTable.pdf/header/text?startPageNumber=1&endPageNumber=2" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-H  "Content-Type: application/json" \
-d "{  \"Background\": false,  \"HorizontalAlignment\": \"Center\",  \"Opacity\": 0.5,  \"Rotate\": \"None\",  \"RotateAngle\": 0,  \"XIndent\": 100,  \"YIndent\": 10,  \"Zoom\": 1.0,  \"TextAlignment\": \"None\",  \"Value\": \"Aspose.PDF Cloud\",  \"TextState\": {    \"FontSize\": 15,    \"Font\": \"Arial\",    \"ForegroundColor\": {      \"A\": 0,      \"R\": 252,      \"G\": 173,      \"B\": 3    },    \"BackgroundColor\": {      \"A\": 10,      \"R\": 0,      \"G\": 0,      \"B\": 0    }  },  \"LeftMargin\": 0,  \"TopMargin\": 0,  \"RightMargin\": 0}"

إضافة رأس الصورة إلى ملف PDF باستخدام الأمر cURL

يرجى محاولة استخدام الأمر cURL التالي لإضافة رأس صورة إلى مستند PDF وحفظ الملف الناتج في التخزين السحابي. في الأمر التالي، رأس الصورة للصفحة الأولى والثانية من المستند حيث يتم تعريف العتامة على أنها 0.7، وعامل التكبير هو 0.5، وخصائص ارتفاع وعرض الصورة محددة على أنها 120 نقطة.

curl -X POST "https://api.aspose.cloud/v3.0/pdf/awesomeTable.pdf/header/image?startPageNumber=1&endPageNumber=2" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-H  "Content-Type: application/json" \
-d "{  \"Background\": true,  \"HorizontalAlignment\": \"Right\",  \"Opacity\": 0.7,  \"Rotate\": \"None\",  \"RotateAngle\": 0,  \"XIndent\": 10,  \"YIndent\": 10,  \"Zoom\": .5,  \"FileName\": \"Koala.jpg\",  \"Width\": 120,  \"Height\": 120,  \"LeftMargin\": 0,  \"TopMargin\": 10,  \"RightMargin\": 10}"

خاتمة

في الختام، فإن إضافة صورة ونص إلى رأس مستند PDF هي ميزة مفيدة يمكنها تعزيز الجاذبية البصرية والعلامة التجارية لمستنداتك. مع Aspose.PDF Cloud SDK for Python، إنها مهمة بسيطة يمكن إنجازها ببضعة أسطر فقط من التعليمات البرمجية. سواء كنت تقوم بإنشاء فواتير أو تقارير أو أي مستند آخر يتطلب رأسًا، يمكن لهذه الميزة أن توفر لك الوقت والجهد مع تحسين جودة الناتج الخاص بك. بالإضافة إلى استخدام Aspose.PDF Cloud SDK for Python، تعلمنا أيضًا أنه من الممكن أيضًا إضافة صور ونص إلى رؤوس PDF باستخدام أوامر cURL.

نأمل أن تكون هذه المقالة قد زودتك بكل الإرشادات والإلهام اللازمين لإضافة هذه الوظيفة إلى تطبيق Python الخاص بك.

روابط مفيدة

مقالات ذات صلة

ننصحك بزيارة المقالات التالية للتعرف على: