Explorando las características de la clase FormEditor

Detalles de implementación

Los desarrolladores pueden usar el espacio de nombres Aspose.Pdf.Facades no solo para agregar nuevos formularios y campos de formulario en un documento PDF, sino también para permitirte editar campos existentes. El alcance de este artículo se limita a las características de Aspose.PDF for .NET que tratan con la edición de formularios.

FormEditor es la clase que contiene la mayoría de los métodos y propiedades que permiten a los desarrolladores editar campos de formulario. No solo puedes agregar nuevos campos, sino también eliminar campos existentes, mover un campo a otra posición, cambiar el nombre del campo o atributos, etc. La lista de características proporcionadas por esta clase es bastante completa, y es muy fácil trabajar con los campos de formulario utilizando esta clase.

Estos métodos se pueden dividir en dos categorías principales, una de las cuales se utiliza para manipular los campos, y la otra se utiliza para establecer los nuevos atributos de estos campos. Los métodos que podemos agrupar bajo la primera categoría incluyen AddField, AddListItem, RemoveListItem, CopyInnerField, CopyOuterField, DelListItem, MoveField, RemoveField y RenameField, etc. En la segunda categoría de métodos se pueden incluir SetFieldAlignment, SetFieldAppearance, SetFieldAttribute, SetFieldLimit, SetFieldScript. El siguiente fragmento de código te muestra algunos de los métodos de la clase FormEditor.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.Pdf-for-.NET
private static void ExploringFormEditorFeatures()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdfFacades_TechnicalArticles();

    // Open PDF document
    using (var document = new Aspose.Pdf.Document(dataDir + "inFile.pdf"))
    {
        // Create instance of FormEditor
        using (var editor = new Aspose.Pdf.Facades.FormEditor(document))
        {
            // Add field in the PDF file
            editor.AddField(Aspose.Pdf.Facades.FieldType.Text, "field1", 1, 300, 500, 350, 525);

            // Add List field in PDF file
            editor.AddField(Aspose.Pdf.Facades.FieldType.ListBox, "field2", 1, 300, 200, 350, 225);

            // Add list items
            editor.AddListItem("field2", "item 1");
            editor.AddListItem("field2", "item 2");

            // Add submit button
            editor.AddSubmitBtn("submitbutton", 1, "Submit Form", "http:// Testwebsite.com/testpage", 200, 200, 250, 225);

            // Delete list item
                editor.DelListItem("field2", "item 1");

            // Move field to new position
            editor.MoveField("field1", 10, 10, 50, 50);

            // Remove existing field from the PDF
            editor.RemoveField("field1");

            // Rename an existing field
            editor.RenameField("field1", "newfieldname");

            // Reset all visual attributes to empty value
            editor.ResetFacade();

            // Set the alignment style of a text field
            editor.SetFieldAlignment("field1", Aspose.Pdf.Facades.FormFieldFacade.AlignLeft);

            // Set appearance of the field
            editor.SetFieldAppearance("field1", Aspose.Pdf.Annotations.AnnotationFlags.NoRotate);

            // Set field attributes i.e. ReadOnly, Required
            editor.SetFieldAttribute("field1", Aspose.Pdf.Facades.PropertyFlag.ReadOnly);

            // Set field limit
            editor.SetFieldLimit("field1", 25);

            // Save modifications in the output file
            editor.Save(dataDir + "FormEditorFeatures2_out.pdf");                    
        }
    }
}