سؤال

هل توجد مكتبات PHP يمكن استخدامها لملء نماذج PDF ثم حفظها (تسويتها) في ملفات PDF؟

هل كانت مفيدة؟

المحلول

المكتبات والأطر المذكورة هنا جيدة، ولكن إذا كان كل ما تريد فعله هو ملء نموذج وتسويته، فإنني أوصي باستخدام أداة سطر الأوامر التي تسمى pdftk (مجموعة أدوات PDF).

يرى https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/

يمكنك استدعاء سطر الأوامر من PHP، والأمر هو

pdftk ملف النموذج.pdf fill_form fieldinfo.fdf output ملف الإخراج.pdf flatten

ستحتاج إلى العثور على تنسيق ملف FDF لإنشاء المعلومات اللازمة لملء الحقول.وهنا رابط جيد لذلك:

http://www.tgreer.com/fdfServe.html

[يحرر:يبدو أن الرابط أعلاه خارج الخدمة.اليك المزيد من المعلومات...]

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

...
<< /T(f1-1) /V(text of field) >>
<< /T(f1-2) /V(text of another field) >>
...

يمكنك أيضًا التحقق من ذلك php-pdftk, وهي مكتبة خاصة بـ PHP.لم أستخدمه، لكن المعلق ألفارو (أدناه) يوصي به.

نصائح أخرى

إجراء 1+ كبير للإجابة المقبولة، ونصيحة صغيرة إذا واجهت مشكلات في تشفير ملف fdf.إذا قمت بإنشاء الحقول.fdf وعند التشغيل

file -bi fields.fdf

لقد حصلت

application/octet-stream; charset=binary

فمن المرجح أنك واجهت مشكلة في مجموعة أحرف UTF-16.حاول تحويل ftf عن طريق

cat fields.fdf | sed -e's/\x00//g' | sed -e's/\xFE\xFF//g' > better.fdf

تمكنت بعد ذلك من تحرير واستيراد ملف Better.fdf إلى نموذج PDF الخاص بي.

نأمل أن يوفر هذا لشخص ما بعضًا من استخدام Google

لقد حققت نجاحًا كبيرًا في استخدام نموذج يرسل إلى برنامج نصي php يستخدم fpdf ويمرر في حقول النموذج كمتغيرات (ربما لا تكون هذه أفضل ممارسة رائعة، ولكنها تعمل).

 <?php
require('fpdf.php');
$pdf=new PDF();
$pdf->AddPage();
$pdf->SetY(30);
$pdf->SetX(100);
$pdf->MultiCell(10,4,$_POST['content'],0,'J');
$pdf->Output();
?>

ويمكن أن يكون لديك شيء من هذا القبيل.

  <form action="fooPDF.php" method="post">
     <p>PDF CONTENT: <textarea name="content" ></textarea></p>
     <p><input type="submit" /></p>
    </form>

يجب أن يساعدك هذا المثال الهيكلي على البدء.

إنشاء ملف fdf باستخدام php:يرى http://www.php.net/manual/en/book.fdf.php

ثم املأه في ملف pdf باستخدام pdftk (انظر أعلاه)

ل:

  • تنسيق إدخال أسهل ثم XFDF
  • دعم حقيقي لـ UTF-8 (الروسي).
  • مثال كامل لاستخدام PHP

لا تتردد في التحقق من بلدي PDFFormFillerUTF-8.

يبدو أن هذا كان مغطاة من قبل.انقر للحصول على التعليمات البرمجية ذات الصلة باستخدام مكتبة Zend Framework PDF.

نحن نستخدم PDFLib في العمل.النسخة المدفوعة ليست باهظة الثمن، وهناك نسخة محدودة مفتوحة المصدر، إذا لم تتمكن من شراء النسخة المدفوعة.

لقد كتبت مكتبة بيرل، الكاميرا::PDF, ، مع واجهة خط الأوامر التي يمكن أن تحل هذا.لقد حاولت استخدام حل FDF منذ سنوات، لكنني وجدته معقدًا للغاية ولهذا السبب كتبت CAM::PDF في المقام الأول.تستخدم مكتبتي بعض الأساليب الاستدلالية لاستبدال النموذج بالنص المطلوب، لذا فهو ليس مثاليًا.ولكنه يعمل في معظم الأوقات، وهو سريع ومجاني وسهل الاستخدام تمامًا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top