Dim failure As Boolean = True
Dim gdpicturePDF As New GdPicturePDF()
If gdpicturePDF.NewPDF() = GdPictureStatus.OK Then
gdpicturePDF.SetOrigin(PdfOrigin.PdfOriginTopLeft)
gdpicturePDF.SetMeasurementUnit(PdfMeasurementUnit.PdfMeasurementUnitCentimeter)
Dim fontResName As String = gdpicturePDF.AddStandardFont(PdfStandardFont.PdfStandardFontHelvetica)
Dim status As GdPictureStatus = gdpicturePDF.GetStat()
If status = GdPictureStatus.OK Then
Dim actionFirstPageID As Integer = gdpicturePDF.NewActionNamed(PdfActionNamed.ActionNamedFirstPage)
status = gdpicturePDF.GetStat()
Dim actionPrevPageID As Integer = -1
If status = GdPictureStatus.OK Then
actionPrevPageID = gdpicturePDF.NewActionNamed(PdfActionNamed.ActionNamedPrevPage)
status = gdpicturePDF.GetStat()
End If
Dim actionNextPageID As Integer = -1
If status = GdPictureStatus.OK Then
actionNextPageID = gdpicturePDF.NewActionNamed(PdfActionNamed.ActionNamedNextPage)
status = gdpicturePDF.GetStat()
End If
Dim actionLastPageID As Integer = -1
If status = GdPictureStatus.OK Then
actionLastPageID = gdpicturePDF.NewActionNamed(PdfActionNamed.ActionNamedLastPage)
status = gdpicturePDF.GetStat()
End If
If status = GdPictureStatus.OK Then
Dim i As Integer = 0, annotID As Integer = -1
Do
i += 1
failure = True
If (gdpicturePDF.NewPage(21, 29.7F) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.SetFillColor(255, 0, 0) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.SetTextSize(12) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.DrawText(fontResName, 1, 0.5F, "This is the page " + i.ToString()) = GdPictureStatus.OK) AndAlso
(gdpicturePDF.DrawTextBox(fontResName, 1, 1, 4, 2, TextAlignment.TextAlignmentCenter, TextAlignment.TextAlignmentCenter, "First page") = GdPictureStatus.OK) AndAlso
(gdpicturePDF.DrawTextBox(fontResName, 4, 1, 7, 2, TextAlignment.TextAlignmentCenter, TextAlignment.TextAlignmentCenter, "Prev. page") = GdPictureStatus.OK) AndAlso
(gdpicturePDF.DrawTextBox(fontResName, 7, 1, 10, 2, TextAlignment.TextAlignmentCenter, TextAlignment.TextAlignmentCenter, "Next page") = GdPictureStatus.OK) AndAlso
(gdpicturePDF.DrawTextBox(fontResName, 10, 1, 13, 2, TextAlignment.TextAlignmentCenter, TextAlignment.TextAlignmentCenter, "Last page") = GdPictureStatus.OK) Then
annotID = gdpicturePDF.AddLinkAnnotation(1, 1, 3, 1, True, 255, 0, 0)
status = gdpicturePDF.GetStat()
If (status = GdPictureStatus.OK) AndAlso (gdpicturePDF.SetAnnotationAction(annotID, actionFirstPageID) = GdPictureStatus.OK) Then
annotID = gdpicturePDF.AddLinkAnnotation(4, 1, 3, 1, True, 255, 0, 0)
status = gdpicturePDF.GetStat()
If (status = GdPictureStatus.OK) AndAlso (gdpicturePDF.SetAnnotationAction(annotID, actionPrevPageID) = GdPictureStatus.OK) Then
annotID = gdpicturePDF.AddLinkAnnotation(7, 1, 3, 1, True, 255, 0, 0)
status = gdpicturePDF.GetStat()
If (status = GdPictureStatus.OK) AndAlso (gdpicturePDF.SetAnnotationAction(annotID, actionNextPageID) = GdPictureStatus.OK) Then
annotID = gdpicturePDF.AddLinkAnnotation(10, 1, 3, 1, True, 255, 0, 0)
status = gdpicturePDF.GetStat()
If status = GdPictureStatus.OK Then
status = gdpicturePDF.SetAnnotationAction(annotID, actionLastPageID)
failure = (status <> GdPictureStatus.OK)
End If
End If
End If
End If
End If
Loop While (Not failure) AndAlso (i < 5)
If Not failure Then
failure = (gdpicturePDF.SaveToFile("annots_with_actions.pdf") <> GdPictureStatus.OK)
End If
End If
End If
End If
If failure Then
MessageBox.Show("The example HAS NOT been followed successfully. The presumed status: " + gdpicturePDF.GetStat().ToString(), "Example: SetAnnotationAction")
Else
MessageBox.Show("The example HAS been followed successfully." + vbCrLf + "The PDF document has been saved.", "Example: SetAnnotationAction")
End If
gdpicturePDF.Dispose()
bool failure = true;
GdPicturePDF gdpicturePDF = new GdPicturePDF();
if (gdpicturePDF.NewPDF() == GdPictureStatus.OK)
{
gdpicturePDF.SetOrigin(PdfOrigin.PdfOriginTopLeft);
gdpicturePDF.SetMeasurementUnit(PdfMeasurementUnit.PdfMeasurementUnitCentimeter);
string fontResName = gdpicturePDF.AddStandardFont(PdfStandardFont.PdfStandardFontHelvetica);
GdPictureStatus status = gdpicturePDF.GetStat();
if (status == GdPictureStatus.OK)
{
int actionFirstPageID = gdpicturePDF.NewActionNamed(PdfActionNamed.ActionNamedFirstPage);
status = gdpicturePDF.GetStat();
int actionPrevPageID = -1;
if (status == GdPictureStatus.OK)
{
actionPrevPageID = gdpicturePDF.NewActionNamed(PdfActionNamed.ActionNamedPrevPage);
status = gdpicturePDF.GetStat();
}
int actionNextPageID = -1;
if (status == GdPictureStatus.OK)
{
actionNextPageID = gdpicturePDF.NewActionNamed(PdfActionNamed.ActionNamedNextPage);
status = gdpicturePDF.GetStat();
}
int actionLastPageID = -1;
if (status == GdPictureStatus.OK)
{
actionLastPageID = gdpicturePDF.NewActionNamed(PdfActionNamed.ActionNamedLastPage);
status = gdpicturePDF.GetStat();
}
if (status == GdPictureStatus.OK)
{
int i = 0, annotID = -1;
do
{
i++; failure = true;
if ((gdpicturePDF.NewPage(21, 29.7f) == GdPictureStatus.OK) &&
(gdpicturePDF.SetFillColor(255, 0, 0) == GdPictureStatus.OK) &&
(gdpicturePDF.SetTextSize(12) == GdPictureStatus.OK) &&
(gdpicturePDF.DrawText(fontResName, 1, 0.5f, "This is the page " + i.ToString()) == GdPictureStatus.OK) &&
(gdpicturePDF.DrawTextBox(fontResName, 1, 1, 4, 2, TextAlignment.TextAlignmentCenter, TextAlignment.TextAlignmentCenter, "First page") == GdPictureStatus.OK) &&
(gdpicturePDF.DrawTextBox(fontResName, 4, 1, 7, 2, TextAlignment.TextAlignmentCenter, TextAlignment.TextAlignmentCenter, "Prev. page") == GdPictureStatus.OK) &&
(gdpicturePDF.DrawTextBox(fontResName, 7, 1, 10, 2, TextAlignment.TextAlignmentCenter, TextAlignment.TextAlignmentCenter, "Next page") == GdPictureStatus.OK) &&
(gdpicturePDF.DrawTextBox(fontResName, 10, 1, 13, 2, TextAlignment.TextAlignmentCenter, TextAlignment.TextAlignmentCenter, "Last page") == GdPictureStatus.OK))
{
annotID = gdpicturePDF.AddLinkAnnotation(1, 1, 3, 1, true, 255, 0, 0);
status = gdpicturePDF.GetStat();
if ((status == GdPictureStatus.OK) && (gdpicturePDF.SetAnnotationAction(annotID, actionFirstPageID) == GdPictureStatus.OK))
{
annotID = gdpicturePDF.AddLinkAnnotation(4, 1, 3, 1, true, 255, 0, 0);
status = gdpicturePDF.GetStat();
if ((status == GdPictureStatus.OK) && (gdpicturePDF.SetAnnotationAction(annotID, actionPrevPageID) == GdPictureStatus.OK))
{
annotID = gdpicturePDF.AddLinkAnnotation(7, 1, 3, 1, true, 255, 0, 0);
status = gdpicturePDF.GetStat();
if ((status == GdPictureStatus.OK) && (gdpicturePDF.SetAnnotationAction(annotID, actionNextPageID) == GdPictureStatus.OK))
{
annotID = gdpicturePDF.AddLinkAnnotation(10, 1, 3, 1, true, 255, 0, 0);
status = gdpicturePDF.GetStat();
if (status == GdPictureStatus.OK)
{
status = gdpicturePDF.SetAnnotationAction(annotID, actionLastPageID);
failure = (status != GdPictureStatus.OK);
}
}
}
}
}
} while ((!failure) && (i < 5));
if (!failure)
failure = (gdpicturePDF.SaveToFile("annots_with_actions.pdf") != GdPictureStatus.OK);
}
}
}
if (failure)
MessageBox.Show("The example HAS NOT been followed successfully. The presumed status: " + gdpicturePDF.GetStat().ToString(), "Example: SetAnnotationAction");
else
MessageBox.Show("The example HAS been followed successfully.\nThe PDF document has been saved.", "Example: SetAnnotationAction");
gdpicturePDF.Dispose();