iText 8.0.2 API
iText.Kernel.Pdf.Colorspace.PdfShading.FreeFormGouraudShadedTriangleMesh Class Reference

The class that extends PdfShading class and is in charge of Shading Dictionary with free-form Gouraud-shaded triangle mesh type. More...

Inheritance diagram for iText.Kernel.Pdf.Colorspace.PdfShading.FreeFormGouraudShadedTriangleMesh:
iText.Kernel.Pdf.Colorspace.PdfShading iText.Kernel.Pdf.PdfObjectWrapper< PdfDictionary >

Public Member Functions

  FreeFormGouraudShadedTriangleMesh (PdfColorSpace cs, int bitsPerCoordinate, int bitsPerComponent, int bitsPerFlag, float[] decode)
  Creates the new instance of the class. More...
 
  FreeFormGouraudShadedTriangleMesh (PdfColorSpace cs, int bitsPerCoordinate, int bitsPerComponent, int bitsPerFlag, PdfArray decode)
  Creates the new instance of the class. More...
 
virtual int  GetBitsPerCoordinate ()
  Gets the number of bits used to represent each vertex coordinate. More...
 
virtual void  SetBitsPerCoordinate (int bitsPerCoordinate)
  Sets the number of bits used to represent each vertex coordinate. More...
 
virtual int  GetBitsPerComponent ()
  Gets the number of bits used to represent each colour component. More...
 
virtual void  SetBitsPerComponent (int bitsPerComponent)
  Sets the number of bits used to represent each colour component. More...
 
virtual int  GetBitsPerFlag ()
  Gets the number of bits used to represent the edge flag for each vertex. More...
 
virtual void  SetBitsPerFlag (int bitsPerFlag)
  Sets the number of bits used to represent the edge flag for each vertex. More...
 
virtual PdfArray  GetDecode ()
  Gets the iText.Kernel.Pdf.PdfArray of numbers specifying how to map vertex coordinates and colour components into the appropriate ranges of values. More...
 
virtual void  SetDecode (float[] decode)
  Sets the float[] of numbers specifying how to map vertex coordinates and colour components into the appropriate ranges of values. More...
 
virtual void  SetDecode (PdfArray decode)
  Sets the iText.Kernel.Pdf.PdfArray of numbers specifying how to map vertex coordinates and colour components into the appropriate ranges of values. More...
 
- Public Member Functions inherited from iText.Kernel.Pdf.Colorspace.PdfShading
virtual int  GetShadingType ()
  Gets the shading type. More...
 
virtual PdfObject  GetColorSpace ()
  Gets the color space in which colour values shall be expressed. More...
 
virtual PdfObject  GetFunction ()
  Gets the function PdfObject that represents color transitions across the shading geometry. More...
 
virtual void  SetFunction (IPdfFunction function)
  Sets the function that represents color transitions across the shading geometry as one object. More...
 
virtual void  SetFunction (IPdfFunction[] functions)
  Sets the function object that represents color transitions across the shading geometry as an array of functions. More...
 
override void  Flush ()
  To manually flush a PdfObject behind this wrapper, you have to ensure that this object is added to the document, i.e. it has an indirect reference. More...
 
- Public Member Functions inherited from iText.Kernel.Pdf.PdfObjectWrapper< PdfDictionary >
virtual T  GetPdfObject ()
 
virtual iText.Kernel.Pdf.PdfObjectWrapper< T >  MakeIndirect (PdfDocument document, PdfIndirectReference reference)
  Marks object behind wrapper to be saved as indirect. More...
 
virtual iText.Kernel.Pdf.PdfObjectWrapper< T >  MakeIndirect (PdfDocument document)
  Marks object behind wrapper to be saved as indirect. More...
 
virtual iText.Kernel.Pdf.PdfObjectWrapper< T >  SetModified ()
 
virtual bool  IsFlushed ()
 

Additional Inherited Members

- Static Public Member Functions inherited from iText.Kernel.Pdf.Colorspace.PdfShading
static PdfShading  MakeShading (PdfDictionary shadingDictionary)
  Creates the PdfShading object from the existing iText.Kernel.Pdf.PdfDictionary with corresponding type. More...
 

Detailed Description

The class that extends PdfShading class and is in charge of Shading Dictionary with free-form Gouraud-shaded triangle mesh type.

The class that extends PdfShading class and is in charge of Shading Dictionary with free-form Gouraud-shaded triangle mesh type. The area to be shaded is defined by a path composed entirely of triangles. The colour at each vertex of the triangles is specified, and a technique known as Gouraud interpolation is used to colour the interiors. The object shall be represented as stream containing a sequence of vertex data. Each vertex is specified by the following values, in the order shown: f x y c1 ... cn where: f - the vertex's edge flag, that determines the vertex is connected to other vertices of the triangle mesh. For full description, see ISO-320001 Paragraph 8.7.4.5.5 x, y - vertex's horizontal and vertical coordinates, expressed in the shading's target coordinate space. c1...cn - vertex's colour components. If the shading dictionary includes a Function entry, only a single parametric value, t, shall be specified for each vertex in place of the colour components c1...cn.

Constructor & Destructor Documentation

◆ FreeFormGouraudShadedTriangleMesh() [1/2]

iText.Kernel.Pdf.Colorspace.PdfShading.FreeFormGouraudShadedTriangleMesh.FreeFormGouraudShadedTriangleMesh ( PdfColorSpace  cs,
int  bitsPerCoordinate,
int  bitsPerComponent,
int  bitsPerFlag,
float[]  decode 
)
inline

Creates the new instance of the class.

Parameters
cs the PdfColorSpace object in which colour values shall be expressed. The special Pattern space isn't excepted.
bitsPerCoordinate the number of bits used to represent each vertex coordinate. The value shall be 1, 2, 4, 8, 12, 16, 24, or 32.
bitsPerComponent the number of bits used to represent each colour component. The value shall be 1, 2, 4, 8, 12, or 16.
bitsPerFlag the number of bits used to represent the edge flag for each vertex. The value of BitsPerFlag shall be 2, 4, or 8, but only the least significant 2 bits in each flag value shall be used. The value for the edge flag shall be 0, 1, or 2.
decode the int[] of numbers specifying how to map vertex coordinates and colour components into the appropriate ranges of values. The ranges shall be specified as follows: [x_min x_max y_min y_max c1_min c1_max … cn_min cn_max]. Only one pair of color values shall be specified if a Function entry is present.

◆ FreeFormGouraudShadedTriangleMesh() [2/2]

iText.Kernel.Pdf.Colorspace.PdfShading.FreeFormGouraudShadedTriangleMesh.FreeFormGouraudShadedTriangleMesh ( PdfColorSpace  cs,
int  bitsPerCoordinate,
int  bitsPerComponent,
int  bitsPerFlag,
PdfArray  decode 
)
inline

Creates the new instance of the class.

Parameters
cs the PdfColorSpace object in which colour values shall be expressed. The special Pattern space isn't excepted.
bitsPerCoordinate the number of bits used to represent each vertex coordinate. The value shall be 1, 2, 4, 8, 12, 16, 24, or 32.
bitsPerComponent the number of bits used to represent each colour component. The value shall be 1, 2, 4, 8, 12, or 16.
bitsPerFlag the number of bits used to represent the edge flag for each vertex. The value of BitsPerFlag shall be 2, 4, or 8, but only the least significant 2 bits in each flag value shall be used. The value for the edge flag shall be 0, 1, or 2.
decode the iText.Kernel.Pdf.PdfArray of numbers specifying how to map vertex coordinates and colour components into the appropriate ranges of values. The ranges shall be specified as follows: [x_min x_max y_min y_max c1_min c1_max … cn_min cn_max]. Only one pair of color values shall be specified if a Function entry is present.

Member Function Documentation

◆ GetBitsPerComponent()

virtual int iText.Kernel.Pdf.Colorspace.PdfShading.FreeFormGouraudShadedTriangleMesh.GetBitsPerComponent ( )
inlinevirtual

Gets the number of bits used to represent each colour component.

Returns
the number of bits. Can be 1, 2, 4, 8, 12, or 16.

◆ GetBitsPerCoordinate()

virtual int iText.Kernel.Pdf.Colorspace.PdfShading.FreeFormGouraudShadedTriangleMesh.GetBitsPerCoordinate ( )
inlinevirtual

Gets the number of bits used to represent each vertex coordinate.

Returns
the number of bits. Can be 1, 2, 4, 8, 12, 16, 24, or 32.

◆ GetBitsPerFlag()

virtual int iText.Kernel.Pdf.Colorspace.PdfShading.FreeFormGouraudShadedTriangleMesh.GetBitsPerFlag ( )
inlinevirtual

Gets the number of bits used to represent the edge flag for each vertex.

Gets the number of bits used to represent the edge flag for each vertex. But only the least significant 2 bits in each flag value shall be used. The valid flag values are 0, 1 or 2.

Returns
the number of bits. Can be 2, 4 or 8.

◆ GetDecode()

virtual PdfArray iText.Kernel.Pdf.Colorspace.PdfShading.FreeFormGouraudShadedTriangleMesh.GetDecode ( )
inlinevirtual

Gets the iText.Kernel.Pdf.PdfArray of numbers specifying how to map vertex coordinates and colour components into the appropriate ranges of values.

Gets the iText.Kernel.Pdf.PdfArray of numbers specifying how to map vertex coordinates and colour components into the appropriate ranges of values. The ranges shall be specified as follows: [x_min x_max y_min y_max c1_min c1_max … cn_min cn_max]. Only one pair of color values shall be specified if a Function entry is present.

Returns
the iText.Kernel.Pdf.PdfArray Decode object.

◆ SetBitsPerComponent()

virtual void iText.Kernel.Pdf.Colorspace.PdfShading.FreeFormGouraudShadedTriangleMesh.SetBitsPerComponent ( int  bitsPerComponent )
inlinevirtual

Sets the number of bits used to represent each colour component.

Parameters
bitsPerComponent the number of bits to be set. Shall be 1, 2, 4, 8, 12, or 16.

◆ SetBitsPerCoordinate()

virtual void iText.Kernel.Pdf.Colorspace.PdfShading.FreeFormGouraudShadedTriangleMesh.SetBitsPerCoordinate ( int  bitsPerCoordinate )
inlinevirtual

Sets the number of bits used to represent each vertex coordinate.

Parameters
bitsPerCoordinate the number of bits to be set. Shall be 1, 2, 4, 8, 12, 16, 24, or 32.

◆ SetBitsPerFlag()

virtual void iText.Kernel.Pdf.Colorspace.PdfShading.FreeFormGouraudShadedTriangleMesh.SetBitsPerFlag ( int  bitsPerFlag )
inlinevirtual

Sets the number of bits used to represent the edge flag for each vertex.

Sets the number of bits used to represent the edge flag for each vertex. But only the least significant 2 bits in each flag value shall be used. The valid flag values are 0, 1 or 2.

Parameters
bitsPerFlag the number of bits to be set. Shall be 2, 4 or 8.

◆ SetDecode() [1/2]

virtual void iText.Kernel.Pdf.Colorspace.PdfShading.FreeFormGouraudShadedTriangleMesh.SetDecode ( float[]  decode )
inlinevirtual

Sets the float[] of numbers specifying how to map vertex coordinates and colour components into the appropriate ranges of values.

Sets the float[] of numbers specifying how to map vertex coordinates and colour components into the appropriate ranges of values. The ranges shall be specified as follows: [x_min x_max y_min y_max c1_min c1_max … cn_min cn_max]. Only one pair of color values shall be specified if a Function entry is present.

Parameters
decode the float[] of Decode object to set.

◆ SetDecode() [2/2]

virtual void iText.Kernel.Pdf.Colorspace.PdfShading.FreeFormGouraudShadedTriangleMesh.SetDecode ( PdfArray  decode )
inlinevirtual

Sets the iText.Kernel.Pdf.PdfArray of numbers specifying how to map vertex coordinates and colour components into the appropriate ranges of values.

Sets the iText.Kernel.Pdf.PdfArray of numbers specifying how to map vertex coordinates and colour components into the appropriate ranges of values. The ranges shall be specified as follows: [x_min x_max y_min y_max c1_min c1_max … cn_min cn_max]. Only one pair of color values shall be specified if a Function entry is present.

Parameters
decode the iText.Kernel.Pdf.PdfArray Decode object to set.