GdPicture.NET.14.API
GdPicture14 Namespace / GdPicturePDF Class / SetFormFieldLocation Method
A unique form field identifier specifying a required form field object. You can obtain this identifier using methods like GdPicturePDF.GetFormFieldId, GdPicturePDF.GetFormFieldChildID or methods intended to add form fields.
The horizontal (X) coordinate of the closest point to the currently defined origin, where the form field's bounding box is to be located, expressed in the current units specified by the SetMeasurementUnit method.
The vertical (Y) coordinate of the closest point to the currently defined origin, where the form field's bounding box is to be located, expressed in the current units specified by the SetMeasurementUnit method.
The horizontal (X) coordinate of the furthest point to the currently defined origin, where the form field's bounding box is to be located, expressed in the current units specified by the SetMeasurementUnit method.
The vertical (Y) coordinate of the furthest point to the currently defined origin, where the form field's bounding box is to be located, expressed in the current units specified by the SetMeasurementUnit method.
Example





In This Topic
SetFormFieldLocation Method (GdPicturePDF)
In This Topic
Sets the location on the page of a required form field, that is specified by its unique form field's identifier and it is related to the currently loaded PDF document. This location is represented by the bounding box of the form field on that page, where the form field is currently located. The coordinates of the field's bounding box are expressed in the current units used in this document with respect to the currently defined origin. The page, where the form field is located, is not affected in any way using this method.

You can use the GdPicturePDF.SetMeasurementUnit method to reset the units and the GdPicturePDF.SetOrigin method to reset the origin's location according to your preference.

Syntax
'Declaration
 
Public Function SetFormFieldLocation( _
   ByVal FieldId As Integer, _
   ByVal Left As Single, _
   ByVal Top As Single, _
   ByVal Right As Single, _
   ByVal Bottom As Single _
) As GdPictureStatus
public GdPictureStatus SetFormFieldLocation( 
   int FieldId,
   float Left,
   float Top,
   float Right,
   float Bottom
)
public function SetFormFieldLocation( 
    FieldId: Integer;
    Left: Single;
    Top: Single;
    Right: Single;
    Bottom: Single
): GdPictureStatus; 
public function SetFormFieldLocation( 
   FieldId : int,
   Left : float,
   Top : float,
   Right : float,
   Bottom : float
) : GdPictureStatus;
public: GdPictureStatus SetFormFieldLocation( 
   int FieldId,
   float Left,
   float Top,
   float Right,
   float Bottom
) 
public:
GdPictureStatus SetFormFieldLocation( 
   int FieldId,
   float Left,
   float Top,
   float Right,
   float Bottom
) 

Parameters

FieldId
A unique form field identifier specifying a required form field object. You can obtain this identifier using methods like GdPicturePDF.GetFormFieldId, GdPicturePDF.GetFormFieldChildID or methods intended to add form fields.
Left
The horizontal (X) coordinate of the closest point to the currently defined origin, where the form field's bounding box is to be located, expressed in the current units specified by the SetMeasurementUnit method.
Top
The vertical (Y) coordinate of the closest point to the currently defined origin, where the form field's bounding box is to be located, expressed in the current units specified by the SetMeasurementUnit method.
Right
The horizontal (X) coordinate of the furthest point to the currently defined origin, where the form field's bounding box is to be located, expressed in the current units specified by the SetMeasurementUnit method.
Bottom
The vertical (Y) coordinate of the furthest point to the currently defined origin, where the form field's bounding box is to be located, expressed in the current units specified by the SetMeasurementUnit method.

Return Value

A member of the GdPictureStatus enumeration. If the method has been successfully followed, then the return value is GdPictureStatus.OK.

We strongly recommend always checking this status first.

Remarks
This method is only allowed for use with non-encrypted documents.

Just to inform you, that the page, where the form field is currently located, is not affected in any way using this method and can not be changed as well.

Be aware that the values of the coordinates are expressed in the current units defined by the GdPicturePDF.SetMeasurementUnit method according to the current coordinate space defined by the GdPicturePDF.SetOrigin method.

Example
How to shift all form fields in the current document by two centimeters down when keeping their size.
Dim caption As String = "Example: SetFormFieldLocation"
Dim gdpicturePDF As GdPicturePDF = New GdPicturePDF()
If gdpicturePDF.LoadFromFile("forms.pdf", False) = GdPictureStatus.OK Then
            
    gdpicturePDF.SetOrigin(PdfOrigin.PdfOriginTopLeft)
    gdpicturePDF.SetMeasurementUnit(PdfMeasurementUnit.PdfMeasurementUnitCentimeter)
    Dim count As Integer = gdpicturePDF.GetFormFieldsCount()
    If gdpicturePDF.GetStat() = GdPictureStatus.OK Then
        Dim message As String = ""
        If count = 0 Then
            message = "This document does not contain any forms."
        Else
            Dim formID As Integer = 0
            Dim left As Single = 0, top As Single = 0, right As Single = 0, bottom As Single = 0
            For i As Integer = 0 To count - 1
                formID = gdpicturePDF.GetFormFieldId(i)
                If gdpicturePDF.GetStat() = GdPictureStatus.OK Then
                    If (gdpicturePDF.GetFormFieldLocation(formID, left, top, right, bottom) <> GdPictureStatus.OK) OrElse
                       (gdpicturePDF.SetFormFieldLocation(formID, left, top + 2, right, bottom + 2) <> GdPictureStatus.OK) Then
                        message = message + i.ToString() + ": The GetFormFieldLocation()/SetFormFieldLocation() method has failed with the status: " + gdpicturePDF.GetStat().ToString() + vbCrLf
                    End If
                Else
                    message = message + i.ToString() + ": The GetFormFieldId() method has failed with the status: " + gdpicturePDF.GetStat().ToString() + vbCrLf
                End If
            Next
        End If
        If message.Equals("") Then message = "The example has been followed successfully." + vbCrLf
        If gdpicturePDF.SaveToFile("forms_updated.pdf") = GdPictureStatus.OK Then
            message = message + "The file has been saved."
        Else
            message = message + "The file can't be saved. Status: " + gdpicturePDF.GetStat().ToString()
        End If
        MessageBox.Show(message, caption)
    Else
        MessageBox.Show("The GetFormFieldsCount() method has failed with the status: " + gdpicturePDF.GetStat().ToString(), caption)
    End If
Else
    MessageBox.Show("The file can't be loaded.", caption)
End If
gdpicturePDF.Dispose()
string caption = "Example: SetFormFieldLocation";
GdPicturePDF gdpicturePDF = new GdPicturePDF();
if (gdpicturePDF.LoadFromFile("forms.pdf", false) == GdPictureStatus.OK)
{
    gdpicturePDF.SetOrigin(PdfOrigin.PdfOriginTopLeft);
    gdpicturePDF.SetMeasurementUnit(PdfMeasurementUnit.PdfMeasurementUnitCentimeter);
    int count = gdpicturePDF.GetFormFieldsCount();
    if (gdpicturePDF.GetStat() == GdPictureStatus.OK)
    {
        string message = "";
        if (count == 0)
            message = "This document does not contain any forms.";
        else
        {
            int formID = 0;
            float left = 0, top = 0, right = 0, bottom = 0;
            for (int i = 0; i < count; i++)
            {
                formID = gdpicturePDF.GetFormFieldId(i);
                if (gdpicturePDF.GetStat() == GdPictureStatus.OK)
                {
                    if ((gdpicturePDF.GetFormFieldLocation(formID, ref left, ref top, ref right, ref bottom) != GdPictureStatus.OK) ||
                        (gdpicturePDF.SetFormFieldLocation(formID, left, top+2, right, bottom+2) != GdPictureStatus.OK))
                        message = message + i.ToString() + ": The GetFormFieldLocation()/SetFormFieldLocatio() method has failed with the status: " + gdpicturePDF.GetStat().ToString() + "\n";
                }
                else
                    message = message + i.ToString() + ": The GetFormFieldId() method has failed with the status: " + gdpicturePDF.GetStat().ToString() + "\n";
            }
            if (message.Equals("")) message = "The example has been followed successfully.\n";
            if (gdpicturePDF.SaveToFile("forms_updated.pdf") == GdPictureStatus.OK)
                message = message + "The file has been saved.";
            else
                message = message + "The file can't be saved. Status: " + gdpicturePDF.GetStat().ToString();
        }
        MessageBox.Show(message, caption);
    }
    else
        MessageBox.Show("The GetFormFieldsCount() method has failed with the status: " + gdpicturePDF.GetStat().ToString(), caption);
}
else
    MessageBox.Show("The file can't be loaded.", caption);
gdpicturePDF.Dispose();
See Also