GdPicture.NET.14
GdPicture14 Namespace / GdPicturePDF Class / GetPageImageFilters Method
The 0-based index of the image within the current page. It must be a value from 0 to GetPageImageCount-1.
Example





In This Topic
GetPageImageFilters Method (GdPicturePDF)
In This Topic
Returns the filters used to encode an image, specified by its index within the currently selected page of the loaded PDF document.
Syntax
'Declaration
 
Public Function GetPageImageFilters( _
   ByVal ImageIdx As Integer _
) As String()
public string[] GetPageImageFilters( 
   int ImageIdx
)
public function GetPageImageFilters( 
    ImageIdx: Integer
): array of String; 
public function GetPageImageFilters( 
   ImageIdx : int
) : String[];
public: string*[]* GetPageImageFilters( 
   int ImageIdx
) 
public:
array<String^>^ GetPageImageFilters( 
   int ImageIdx
) 

Parameters

ImageIdx
The 0-based index of the image within the current page. It must be a value from 0 to GetPageImageCount-1.

Return Value

An array of strings including the names of the filters used to encode the specified image.

The GetStat method can be subsequently used to determine if this method has been successful.

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

It is recommend to use the GetStat method to identify the specific reason for the method's failure, if any.

Just to inform you that the supported filters are: ASCIIHexDecode, ASCII85Decode, LZWDecode, FlateDecode, RunLengthDecode, CCITTFaxDecode, JBIG2Decode, DCTDecode, JPXDecode, Crypt. For further assistance, please refer to the PDF Reference, Section "Filters".

Example
How to find out used filters of all images contained within the PDF document.
Dim caption As String = "Example: GetPageImageFilters"
Dim gdpicturePDF As New GdPicturePDF()
If gdpicturePDF.LoadFromFile("test.pdf", False) = GdPictureStatus.OK Then
    Dim message As String = ""
    Dim filters As String() = Nothing
    Dim imageCount As Integer = 0
    Dim pageCount As Integer = gdpicturePDF.GetPageCount()
    Dim status As GdPictureStatus = gdpicturePDF.GetStat()
    If (status = GdPictureStatus.OK) AndAlso (pageCount > 0) Then
        For i As Integer = 1 To pageCount
            If gdpicturePDF.SelectPage(i) = GdPictureStatus.OK Then
                message = message + "Page nr." + i.ToString() + ":" + vbCrLf
                imageCount = gdpicturePDF.GetPageImageCount()
                status = gdpicturePDF.GetStat()
                If (status = GdPictureStatus.OK) AndAlso (imageCount > 0) Then
                    For j As Integer = 0 To imageCount - 1
                        filters = gdpicturePDF.GetPageImageFilters(j)
                        status = gdpicturePDF.GetStat()
                        If status = GdPictureStatus.OK Then
                            message = message + "The image indexed as " + j.ToString() + " has the following filters: " + String.Join(",", filters) + "." + vbCrLf
                        Else
                            message = message + "The GetPageImageFilters() method has failed for the image nr. " + j.ToString() + " with the status: " + status.ToString() + vbCrLf
                        End If
                    Next
                Else
                    If status = GdPictureStatus.OK Then
                        message = message + "This page doesn't contain any image." + vbCrLf
                    Else
                        message = message + "The GetPageImageCount() method has failed for the page nr. " + i.ToString() + " with the status: " + status.ToString() + vbCrLf
                    End If
                End If
            Else
                message = message + "The SelectPage() method has failed for the image nr. " + i.ToString() + " with the status: " + gdpicturePDF.GetStat().ToString() + vbCrLf
            End If
        Next
        MessageBox.Show(message, caption)
    Else
        If status = GdPictureStatus.OK Then
            MessageBox.Show("This file doesn't contain any page.", caption)
        Else
            MessageBox.Show("The GetPageCount() method has failed with the status: " + status.ToString(), caption)
        End If
    End If
Else
    MessageBox.Show("The file can't be loaded.", caption)
End If
gdpicturePDF.Dispose()
string caption = "Example: GetPageImageFilters";
GdPicturePDF gdpicturePDF = new GdPicturePDF();
if (gdpicturePDF.LoadFromFile("test.pdf", false) == GdPictureStatus.OK)
{
    string message = "";
    string[] filters = null;
    int imageCount = 0;
    int pageCount = gdpicturePDF.GetPageCount();
    GdPictureStatus status = gdpicturePDF.GetStat();
    if ((status == GdPictureStatus.OK) && (pageCount > 0))
    {
        for (int i = 1; i <= pageCount; i++)
        {
            if (gdpicturePDF.SelectPage(i) == GdPictureStatus.OK)
            {
                message = message + "Page nr." + i.ToString() + ":\n";
                imageCount = gdpicturePDF.GetPageImageCount();
                status = gdpicturePDF.GetStat();
                if ((status == GdPictureStatus.OK) && (imageCount > 0))
                {
                    for (int j = 0; j < imageCount; j++)
                    {
                        filters = gdpicturePDF.GetPageImageFilters(j);
                        status = gdpicturePDF.GetStat();
                        if (status == GdPictureStatus.OK)
                            message = message + "The image indexed as " + j.ToString() + " has the following filters: " + string.Join(",", filters) + "\n";
                        else
                            message = message + "The GetPageImageFilters() method has failed for the image nr. " + j.ToString() + " with the status: " + status.ToString() + "\n";
                    }
                }
                else
                {
                    if (status == GdPictureStatus.OK)
                        message = message + "This page doesn't contain any image.\n";
                    else
                        message = message + "The GetPageImageCount() method has failed for the page nr. " + i.ToString() + " with the status: " + status.ToString() + "\n";
                }
            }
            else
            {
                message = message + "The SelectPage() method has failed for the image nr. " + i.ToString() + " with the status: " + gdpicturePDF.GetStat().ToString() + "\n";
            }
        }
        MessageBox.Show(message, caption);
    }
    else
    {
        if (status == GdPictureStatus.OK)
            MessageBox.Show("This file doesn't contain any page.", caption);
        else
            MessageBox.Show("The GetPageCount() method has failed with the status: " + status.ToString(), caption);
    }
}
else
    MessageBox.Show("The file can't be loaded.", caption);
gdpicturePDF.Dispose();
See Also