Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
다음 시나리오에서는 ID, 이름 및 성별이라는 세 개의 양식 필드가 포함된 PDF 양식을 사용할 것입니다.
위의 양식에는 “ID”, “이름” 및 “성별"이라는 세 개의 필드가 있는 한 페이지가 있습니다. 우리는 다음 Excel 시트에서 데이터를 DataTable 객체로 추출할 것입니다.
AutoFiller 클래스의 객체를 생성하고 위 그림에 있는 PDF 양식을 바인딩한 다음 ImportDataTable 메서드를 사용하여 DataTable 객체에 있는 데이터를 사용하여 양식 필드를 채워야 합니다. 메서드가 호출되면 Excel 시트의 데이터를 기반으로 채워진 양식이 포함된 새로운 PDF 양식 파일이 생성됩니다. 입력 PDF 양식은 단일 페이지였고 결과는 5페이지입니다. 이는 Excel 시트의 데이터 행 수가 5이기 때문입니다. DataTable 클래스는 시트의 첫 번째 행을 열 이름으로 사용할 수 있는 기능을 제공합니다.
![]() |
![]() |
---|---|
![]() |
![]() |
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ExportExcelToPdfForm()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Excel();
var workbook = new Workbook();
// Creating a file stream containing the Excel file to be opened
using (FileStream fstream = new FileStream(dataDir + "newBook1.xls", FileMode.Open))
{
// Opening the Excel file through the file stream
workbook.Open(fstream);
// Accessing the first worksheet in the Excel file
var worksheet = workbook.Worksheets[0];
// Exporting the contents of 7 rows and 2 columns starting from 1st cell to DataTable
System.Data.DataTable dataTable = worksheet.Cells.ExportDataTable(0, 0, worksheet.Cells.MaxRow + 1, worksheet.Cells.MaxColumn + 1, true);
// Create an object of AutoFiller class
using (var autoFiller = new Aspose.Pdf.Facades.AutoFiller())
{
// The input pdf file that contains form fields
autoFiller.InputFileName = dataDir + "DataTableExample.pdf";
// The resultant pdf, that will contain the form fields filled with information from DataTable
autoFiller.OutputFileName = dataDir + "DataTableExample_out.pdf";
// Call the method to import the data from DataTable object into Pdf form fields
autoFiller.ImportDataTable(dataTable);
// Save PDF document
autoFiller.Save();
}
}
}
XLSX에서 채우려면 다음 코드 스니펫을 사용하십시오:
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void FillFromXLSX()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Excel();
// Create an object of AutoFiller class
using (var autoFiller = new Aspose.Pdf.Facades.AutoFiller())
{
// Bind PDF document
autoFiller.BindPdf(dataDir + "Sample-Form-01.pdf");
System.Data.DataTable dataTable = GenerateDataTable();
// Call the method to import the data from DataTable object into Pdf form fields
autoFiller.ImportDataTable(dataTable);
// Save PDF document
autoFiller.Save(dataDir + "Sample-Form-01_out.pdf");
}
}
Aspose.PDF for .NET은 PDF 문서에서 데이터 테이블을 생성할 수 있습니다:
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static System.Data.DataTable GenerateDataTable()
{
string[] names = new[] { "Olivia", "Oliver", "Amelia", "George", "Isla", "Harry", "Ava", "Noah" };
// Create a new DataTable
var table = new System.Data.DataTable("Students");
// Create new DataColumn, set DataType,
// ColumnName and add to DataTable
var column = new System.Data.DataColumn
{
DataType = System.Type.GetType("System.Int32"),
ColumnName = "id",
ReadOnly = true,
Unique = true
};
// Add the Column to the DataColumnCollection
table.Columns.Add(column);
// Create second column
column = new System.Data.DataColumn
{
DataType = System.Type.GetType("System.String"),
ColumnName = "First Name",
AutoIncrement = false,
Caption = "First Name",
ReadOnly = false,
Unique = false
};
// Add the column to the table
table.Columns.Add(column);
// Make the ID column the primary key column
var primaryKeyColumns = new System.Data.DataColumn[1];
primaryKeyColumns[0] = table.Columns["id"];
table.PrimaryKey = primaryKeyColumns;
// Create three new DataRow objects and add
// them to the DataTable
var rand = new Random();
System.Data.DataRow row;
for (int i = 1; i <= 4; i++)
{
row = table.NewRow();
row["id"] = i;
row["First Name"] = names[rand.Next(names.Length)];
table.Rows.Add(row);
}
return table;
}
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.