Modifing AcroForm

Следующий фрагмент кода также работает с библиотекой Aspose.PDF.Drawing.

Получение или установка лимита поля

Класс FormEditor и метод SetFieldLimit(field, limit) позволяют установить лимит поля, максимальное количество символов, которое можно ввести в поле.

// Для полных примеров и файлов данных, пожалуйста, перейдите на https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Путь к директории документов.
string dataDir = RunExamples.GetDataDir_AsposePdf_Forms();

// Добавление поля с лимитом
FormEditor form = new FormEditor();

form.BindPdf(dataDir + "input.pdf");
form.SetFieldLimit("textbox1", 15);
dataDir = dataDir + "SetFieldLimit_out.pdf";
form.Save(dataDir);

Аналогично, Aspose.PDF имеет метод, который получает лимит поля с использованием подхода DOM. Следующий фрагмент кода показывает шаги.

// Для полных примеров и файлов данных, пожалуйста, перейдите на https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Путь к директории документов.
string dataDir = RunExamples.GetDataDir_AsposePdf_Forms();
// Получение максимального лимита поля с использованием DOM
Document doc = new Document(dataDir + "FieldLimit.pdf");
Console.WriteLine("Limit: " + (doc.Form["textbox1"] as TextBoxField).MaxLen);

Вы также можете получить тот же результат, используя пространство имён Aspose.PDF.Facades, используя следующий фрагмент кода.

// Для полных примеров и файлов данных, пожалуйста, перейдите по ссылке https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Путь к директории документов.
string dataDir = RunExamples.GetDataDir_AsposePdf_Forms();
// Получение максимального лимита поля с использованием Facades
Aspose.Pdf.Facades.Form form = new Aspose.Pdf.Facades.Form();
form.BindPdf(dataDir + "FieldLimit.pdf");
Console.WriteLine("Limit: " + form.GetFieldLimit("textbox1"));

Установка пользовательского шрифта для поля формы

Поля форм в файлах Adobe PDF могут быть настроены для использования определённых шрифтов по умолчанию. Поля форм в файлах Adobe PDF могут быть настроены на использование специфических шрифтов по умолчанию.

Следующий фрагмент кода показывает, как установить шрифт по умолчанию для полей формы PDF.

// Для полных примеров и файлов данных, пожалуйста, перейдите на https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Путь к директории документов.
string dataDir = RunExamples.GetDataDir_AsposePdf_Forms();

// Открыть документ
Document pdfDocument = new Document(dataDir + "FormFieldFont14.pdf");

// Получить конкретное поле формы из документа
Aspose.Pdf.Forms.Field field = pdfDocument.Form["textbox1"] as Aspose.Pdf.Forms.Field;

// Создать объект шрифта
Aspose.Pdf.Text.Font font = FontRepository.FindFont("ComicSansMS");

// Установить информацию о шрифте для поля формы
// Field.DefaultAppearance = new Aspose.Pdf.Forms.in.DefaultAppearance(font, 10, System.Drawing.Color.Black);

dataDir = dataDir + "FormFieldFont14_out.pdf";
// Сохранить обновленный документ
pdfDocument.Save(dataDir);

Добавление/удаление полей в существующей форме

Все поля формы содержатся в коллекции Form объекта Document. Все поля формы содержатся в коллекции Form объекта Document.

// Для полных примеров и файлов данных, пожалуйста, перейдите на https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// Путь к каталогу документов.
string dataDir = RunExamples.GetDataDir_AsposePdf_Forms();

// Открыть документ
Document pdfDocument = new Document(dataDir + "DeleteFormField.pdf");

// Удалить конкретное поле по имени
pdfDocument.Form.Delete("textbox1");
dataDir = dataDir + "DeleteFormField_out.pdf";
// Сохранить измененный документ
pdfDocument.Save(dataDir);