سؤال

لدي ملف pdf التي تم إنشاؤها باستخدام برنامج Foxit "مصمم النموذج".على تصميم النظام الباركود الخط مثبتا.الباركود الخط يستخدم في واحدة من AcroFields.يبدو أن قراء لا يتم تضمين الخط في الوثيقة.

أنا أيضا لدي العملاء التي لا تملك الباركود الخط المثبتة في أجهزة الكمبيوتر الخاصة بهم ، وبالتالي أود أن تضمين الخط في PDF.هل هناك طريقة تضمين الخط الذي يستخدم في AcroFields إلى PDF باستخدام iText?

تحرير: الخط يبدو أن تدرج في النص ، ولكن ليس الحقول ، ولذلك الخط(الباركود) لن تتم طباعة.

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

المحلول

أنا تقريبا متأكد من أنك حصلت على إجابة حتى الآن, ولكن الآخرين ربما ترغب في الحصول على عرض تفصيلي على الحل.وفيما يلي عينة كود جافا اعتدت على تضمين الخطوط في إنشاء PDF (مفيدة في بعض الحالات فقط ، كما حجم الوثائق يزيد بشكل كبير).باعتبارها أداة مجانية لإنشاء أشكال PDF, لقد استخدمت أوبن أوفيس الكاتب بإضافة أشكال داخل الوثائق وتصدير المستندات مثل ملفات PDF :

PdfReader pdfTemplate = new PdfReader(templateName);
ByteArrayOutputStream out = new ByteArrayOutputStream();
BaseFont unicode = BaseFont.createFont(unicodeFontPath, BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
PdfStamper stamper = new PdfStamper(pdfTemplate, out);
//assigning the font to the field
stamper.getAcroFields().setFieldProperty("myField", "textfont", unicode, null);
stamper.getAcroFields().setField("myField", someValue);
stamper.close();
pdfTemplate.close();

نصائح أخرى

PdfContentByte ab = yourPDFWriter.getDirectContent();
// field: PdfFormField.createTextField(...);
PdfAppearance ap = ab.createAppearance(320, 30); // size of field
field.setDefaultAppearanceString(ap);

التي ينبغي أن تفعل خدعة.

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