GetAnnotationColor Method (GdPicturePDF)
In This Topic
Returns the color of a required annotation object specified by its index related to the currently selected page of the loaded PDF document.
This color is used for the following purposes:
- The background of the annotation's icon when closed.
- The title bar of the annotation's pop-up window.
- The border of a link annotation.
Syntax
Parameters
- AnnotationIdx
- The 0-based index of the required annotation within the current page. It must be a value from 0 to GdPicturePDF.GetAnnotationCount-1.
Return Value
The color of the specified annotation object. The
GdPicturePDF.GetStat method can be subsequently used to determine if this method has been successful.
Example
How to retrieve the color and some other properties of all stamp annotation objects within the PDF document.
Dim caption As String = "Example: GetAnnotationColor"
Dim gdpicturePDF As GdPicturePDF = New GdPicturePDF()
Dim status As GdPictureStatus = gdpicturePDF.LoadFromFile("test.pdf", False)
If status = GdPictureStatus.OK Then
Dim message As String = ""
Dim pageCount As Integer = gdpicturePDF.GetPageCount()
For i As Integer = 1 To pageCount
status = gdpicturePDF.SelectPage(i)
If status = GdPictureStatus.OK Then
message = message + "The page nr." + i.ToString()
Dim annotCount As Integer = gdpicturePDF.GetAnnotationCount()
status = gdpicturePDF.GetStat()
If status = GdPictureStatus.OK Then
If annotCount = 0 Then
message = message + " does not contain any annotations."
Else
Dim annotSubType As String = ""
Dim color As Color = Color.Black, fillColor As Color = Color.Black
Dim opacity As Byte = 0
Dim l As Single = 0, t As Single = 0, w As Single = 0, h As Single = 0
For j As Integer = 0 To annotCount - 1
annotSubType = gdpicturePDF.GetAnnotationSubType(j)
If gdpicturePDF.GetStat() = GdPictureStatus.OK Then
If annotSubType.Equals("Stamp") Then
message = message + vbCrLf + "AnnotID: " + j.ToString()
message = message + vbCrLf + " color: "
color = gdpicturePDF.GetAnnotationColor(j)
status = gdpicturePDF.GetStat()
If status = GdPictureStatus.OK Then message = message + color.ToString() Else message = message + status.ToString()
message = message + " fill color: "
fillColor = gdpicturePDF.GetAnnotationFillColor(j)
status = gdpicturePDF.GetStat()
If status = GdPictureStatus.OK Then message = message + fillColor.ToString() Else message = message + status.ToString()
message = message + " opacity: "
opacity = gdpicturePDF.GetAnnotationOpacity(j)
status = gdpicturePDF.GetStat()
If status = GdPictureStatus.OK Then message = message + opacity.ToString() Else message = message + status.ToString()
message = message + " rectangle: "
status = gdpicturePDF.GetAnnotationRect(j, l, t, w, h)
If status = GdPictureStatus.OK Then message = message + "[" + l.ToString() + "," + t.ToString() + " ; w:" + w.ToString() + " h:" + h.ToString() + "]" Else message = message + status.ToString()
End If
Else
message = message + vbCrLf + "The GetAnnotationSubType() method has failed with the status: " + status.ToString()
End If
Next
End If
Else
message = message + ": the GetAnnotationCount() method has failed with the status: " + status.ToString()
End If
message = message + vbCrLf
Else
message = message + "The SelectPage(" + i.ToString() + ") method has failed with the status: " + status.ToString() + vbCrLf
End If
Next
MessageBox.Show(message, caption)
Else
MessageBox.Show("The file can't be loaded.", caption)
End If
gdpicturePDF.Dispose()
string caption = "Example: GetAnnotationColor";
GdPicturePDF gdpicturePDF = new GdPicturePDF();
GdPictureStatus status = gdpicturePDF.LoadFromFile("test.pdf", false);
if (status == GdPictureStatus.OK)
{
string message = "";
int pageCount = gdpicturePDF.GetPageCount();
for (int i = 1; i <= pageCount; i++)
{
status = gdpicturePDF.SelectPage(i);
if (status == GdPictureStatus.OK)
{
message = message + "The page nr." + i.ToString();
int annotCount = gdpicturePDF.GetAnnotationCount();
status = gdpicturePDF.GetStat();
if (status == GdPictureStatus.OK)
{
if (annotCount == 0)
{
message = message + " does not contain any annotations.";
}
else
{
string annotSubType = "";
Color color = Color.Black, fillColor = Color.Black;
byte opacity = 0;
float l = 0, t = 0, w = 0, h = 0;
for (int j = 0; j < annotCount; j++)
{
annotSubType = gdpicturePDF.GetAnnotationSubType(j);
if (gdpicturePDF.GetStat() == GdPictureStatus.OK)
{
if (annotSubType.Equals("Stamp"))
{
message = message + "\nAnnotID: " + j.ToString();
message = message + "\n color: ";
color = gdpicturePDF.GetAnnotationColor(j);
status = gdpicturePDF.GetStat();
if (status == GdPictureStatus.OK) message = message + color;
else message = message + status.ToString();
message = message + " fill color: ";
fillColor = gdpicturePDF.GetAnnotationFillColor(j);
status = gdpicturePDF.GetStat();
if (status == GdPictureStatus.OK) message = message + fillColor;
else message = message + status.ToString();
message = message + " opacity: ";
opacity = gdpicturePDF.GetAnnotationOpacity(j);
status = gdpicturePDF.GetStat();
if (status == GdPictureStatus.OK) message = message + opacity.ToString();
else message = message + status.ToString();
message = message + " rectangle: ";
status = gdpicturePDF.GetAnnotationRect(j, ref l, ref t, ref w, ref h);
if (status == GdPictureStatus.OK) message = message + "[" + l.ToString() + "," + t.ToString() + " ; w:" + w.ToString() + " h:" + h.ToString() + "]";
else message = message + status.ToString();
}
}
else
{
message = message + "\nThe GetAnnotationSubType() method has failed with the status: " + status.ToString();
}
}
}
}
else
message = message + ": the GetAnnotationCount() method has failed with the status: " + status.ToString();
message = message + "\n";
}
else
message = message + "The SelectPage(" + i.ToString() + ") method has failed with the status: " + status.ToString() + "\n";
}
MessageBox.Show(message, caption);
}
else
{
MessageBox.Show("The file can't be loaded.", caption);
}
gdpicturePDF.Dispose();
Example
How to retrieve the color and some other properties of all stamp annotation objects within the PDF document.
Dim caption As String = "Example: GetAnnotationColor"
Dim gdpicturePDF As GdPicturePDF = New GdPicturePDF()
Dim status As GdPictureStatus = gdpicturePDF.LoadFromFile("test.pdf", False)
If status = GdPictureStatus.OK Then
Dim message As String = ""
Dim pageCount As Integer = gdpicturePDF.GetPageCount()
For i As Integer = 1 To pageCount
status = gdpicturePDF.SelectPage(i)
If status = GdPictureStatus.OK Then
message = message + "The page nr." + i.ToString()
Dim annotCount As Integer = gdpicturePDF.GetAnnotationCount()
status = gdpicturePDF.GetStat()
If status = GdPictureStatus.OK Then
If annotCount = 0 Then
message = message + " does not contain any annotations."
Else
Dim annotSubType As String = ""
Dim color As Color = Color.Black, fillColor As Color = Color.Black
Dim opacity As Byte = 0
Dim l As Single = 0, t As Single = 0, w As Single = 0, h As Single = 0
For j As Integer = 0 To annotCount - 1
annotSubType = gdpicturePDF.GetAnnotationSubType(j)
If gdpicturePDF.GetStat() = GdPictureStatus.OK Then
If annotSubType.Equals("Stamp") Then
message = message + vbCrLf + "AnnotID: " + j.ToString()
message = message + vbCrLf + " color: "
color = gdpicturePDF.GetAnnotationColor(j)
status = gdpicturePDF.GetStat()
If status = GdPictureStatus.OK Then message = message + color.ToString() Else message = message + status.ToString()
message = message + " fill color: "
fillColor = gdpicturePDF.GetAnnotationFillColor(j)
status = gdpicturePDF.GetStat()
If status = GdPictureStatus.OK Then message = message + fillColor.ToString() Else message = message + status.ToString()
message = message + " opacity: "
opacity = gdpicturePDF.GetAnnotationOpacity(j)
status = gdpicturePDF.GetStat()
If status = GdPictureStatus.OK Then message = message + opacity.ToString() Else message = message + status.ToString()
message = message + " rectangle: "
status = gdpicturePDF.GetAnnotationRect(j, l, t, w, h)
If status = GdPictureStatus.OK Then message = message + "[" + l.ToString() + "," + t.ToString() + " ; w:" + w.ToString() + " h:" + h.ToString() + "]" Else message = message + status.ToString()
End If
Else
message = message + vbCrLf + "The GetAnnotationSubType() method has failed with the status: " + status.ToString()
End If
Next
End If
Else
message = message + ": the GetAnnotationCount() method has failed with the status: " + status.ToString()
End If
message = message + vbCrLf
Else
message = message + "The SelectPage(" + i.ToString() + ") method has failed with the status: " + status.ToString() + vbCrLf
End If
Next
MessageBox.Show(message, caption)
Else
MessageBox.Show("The file can't be loaded.", caption)
End If
gdpicturePDF.Dispose()
string caption = "Example: GetAnnotationColor";
GdPicturePDF gdpicturePDF = new GdPicturePDF();
GdPictureStatus status = gdpicturePDF.LoadFromFile("test.pdf", false);
if (status == GdPictureStatus.OK)
{
string message = "";
int pageCount = gdpicturePDF.GetPageCount();
for (int i = 1; i <= pageCount; i++)
{
status = gdpicturePDF.SelectPage(i);
if (status == GdPictureStatus.OK)
{
message = message + "The page nr." + i.ToString();
int annotCount = gdpicturePDF.GetAnnotationCount();
status = gdpicturePDF.GetStat();
if (status == GdPictureStatus.OK)
{
if (annotCount == 0)
{
message = message + " does not contain any annotations.";
}
else
{
string annotSubType = "";
Color color = Color.Black, fillColor = Color.Black;
byte opacity = 0;
float l = 0, t = 0, w = 0, h = 0;
for (int j = 0; j < annotCount; j++)
{
annotSubType = gdpicturePDF.GetAnnotationSubType(j);
if (gdpicturePDF.GetStat() == GdPictureStatus.OK)
{
if (annotSubType.Equals("Stamp"))
{
message = message + "\nAnnotID: " + j.ToString();
message = message + "\n color: ";
color = gdpicturePDF.GetAnnotationColor(j);
status = gdpicturePDF.GetStat();
if (status == GdPictureStatus.OK) message = message + color;
else message = message + status.ToString();
message = message + " fill color: ";
fillColor = gdpicturePDF.GetAnnotationFillColor(j);
status = gdpicturePDF.GetStat();
if (status == GdPictureStatus.OK) message = message + fillColor;
else message = message + status.ToString();
message = message + " opacity: ";
opacity = gdpicturePDF.GetAnnotationOpacity(j);
status = gdpicturePDF.GetStat();
if (status == GdPictureStatus.OK) message = message + opacity.ToString();
else message = message + status.ToString();
message = message + " rectangle: ";
status = gdpicturePDF.GetAnnotationRect(j, ref l, ref t, ref w, ref h);
if (status == GdPictureStatus.OK) message = message + "[" + l.ToString() + "," + t.ToString() + " ; w:" + w.ToString() + " h:" + h.ToString() + "]";
else message = message + status.ToString();
}
}
else
{
message = message + "\nThe GetAnnotationSubType() method has failed with the status: " + status.ToString();
}
}
}
}
else
message = message + ": the GetAnnotationCount() method has failed with the status: " + status.ToString();
message = message + "\n";
}
else
message = message + "The SelectPage(" + i.ToString() + ") method has failed with the status: " + status.ToString() + "\n";
}
MessageBox.Show(message, caption);
}
else
{
MessageBox.Show("The file can't be loaded.", caption);
}
gdpicturePDF.Dispose();
See Also