Получить поля из региона в PDF-файле

В этом уроке мы покажем вам, как получить поля определенного региона в PDF-файле с помощью Aspose.PDF для .NET. Мы шаг за шагом объясним исходный код C#, чтобы помочь вам в этом процессе.

Шаг 1: Подготовка

Убедитесь, что вы импортировали необходимые библиотеки и указали путь к каталогу с вашими документами:

string dataDir = "YOUR DOCUMENTS DIRECTORY";

Шаг 2. Откройте PDF-файл.

Откройте PDF-файл:

Aspose.Pdf.Document doc = new Aspose.Pdf.Document(dataDir + "GetFieldsFromRegion.pdf");

Шаг 3. Создайте прямоугольный объект, чтобы ограничить область.

Создайте объект-прямоугольник, чтобы ограничить область, в которой вы хотите получить поля:

Aspose.Pdf.Rectangle rectangle = new Aspose.Pdf.Rectangle(35, 30, 500, 500);

Шаг 4. Получите PDF-форму.

Получите PDF-форму документа:

Aspose.Pdf.Forms.Form form = doc.Form;

Шаг 5. Получите поля в прямоугольной области.

Получите поля, расположенные в указанной прямоугольной области:

Aspose.Pdf.Forms.Field[] fields = form.GetFieldsInRect(rectangle);

Шаг 6. Отобразите имена и значения полей

Переберите полученные поля и отобразите их имена и значения:

foreach (Field field in fields)
{
Console.Out.WriteLine("Field name: " + field.FullName + "-" + "Field value: " + field.Value);
}

Пример исходного кода для получения полей из региона с использованием Aspose.PDF для .NET

// Путь к каталогу документов.
string dataDir = "YOUR DOCUMENT DIRECTORY";
// Открыть PDF-файл
Aspose.Pdf.Document doc = new Aspose.Pdf.Document(dataDir + "GetFieldsFromRegion.pdf");
// Создайте прямоугольный объект, чтобы получить поля в этой области.
Aspose.Pdf.Rectangle rectangle = new Aspose.Pdf.Rectangle(35, 30, 500, 500);
// Получить PDF-форму
Aspose.Pdf.Forms.Form form = doc.Form;
// Получить поля в прямоугольной области
Aspose.Pdf.Forms.Field[] fields = form.GetFieldsInRect(rectangle);
// Отображение названий и значений полей
foreach (Field field in fields)
{
	// Отображать свойства размещения изображений для всех мест размещения
	Console.Out.WriteLine("Field Name: " + field.FullName + "-" + "Field Value: " + field.Value);
}

Заключение

В этом уроке мы узнали, как получить поля определенного региона в PDF-документе с помощью Aspose.PDF для .NET. Следуя этим шагам, вы можете легко извлечь поля, расположенные в заданной прямоугольной области вашего PDF-документа, с помощью Aspose.PDF.

Часто задаваемые вопросы

Вопрос: Могу ли я использовать этот метод для получения полей из непрямоугольной области PDF-документа?

О: Нет, предоставленный методGetFieldsInRect специально разработан для извлечения полей, расположенных в прямоугольной области PDF-документа. Если вам нужно извлечь поля из непрямоугольной области, вам потребуется реализовать специальную логику для идентификации и извлечения полей на основе других критериев, таких как координаты или имена полей.

Вопрос: Как изменить размер или положение прямоугольника, чтобы получить поля из другого региона?

О: Чтобы получить поля из другого региона, вы можете изменитьAspose.Pdf.Rectangle параметры объекта, используемые для определения ограничивающего прямоугольника.Rectangle конструктор принимает четыре параметра:x, y, width , иheightкоторые представляют координаты верхнего левого угла и размеры прямоугольника. Настройка этих параметров приведет к изменению региона, из которого извлекаются поля.

Вопрос: Что делать, если в указанной прямоугольной области нет полей?

О: Если в указанной прямоугольной области нет полей,GetFieldsInRect метод вернет пустой массив. Вы можете проверить длину массива, чтобы определить, есть ли в этом регионе какие-либо поля.

Вопрос: Могу ли я получить поля из перекрывающихся областей PDF-документа?

О: Да, вы можете получить поля из перекрывающихся областей PDF-документа, создав несколькоAspose.Pdf.Rectangle объекты и вызываяGetFieldsInRect метод для каждого из них. Перекрывающиеся регионы будут обрабатываться независимо, и вы получите отдельные массивы полей для каждого региона.

Вопрос: Можно ли получить поля с определенной страницы или нескольких страниц PDF-документа?

О: Да, вы можете получить поля с определенной страницы или нескольких страниц PDF-документа. Для этого вы можете загрузить PDF-документ, получить доступ к нужным страницам с помощьюdoc.Pages коллекцию, а затем применитеGetFieldsInRect метод для конкретного региона каждой страницы.