Applies to TestComplete 14.20, last modified on September 11, 2019

Description

The Picture.Pixels method lets you retrieve and set the color of a given image pixel. The color is specified by the integer value. Its low-order byte holds the value of the red component, the subsequent bytes hold values of green and blue components respectively.

Declaration

PictureObj.Pixels(XY)

Read-Write Property Integer
PictureObj An expression, variable or parameter that specifies a reference to a Picture object
X [in]    Required    Integer    
Y [in]    Required    Integer    

Applies To

The property is applied to the following object:

Parameters

The property has the following parameters:

X

The X coordinate of the image pixel.

Y

The Y coordinate of the image pixel.

Property Value

The integer value holding the RGB components of the pixel color. For a list of predefined color constants and instructions on how to calculate custom color values, see Working With Colors.

Note: Intel CPUs use the little endian convention for data. That is, in fact, the color is stored as BGR in memory.

Example

The following example demonstrates how to create an empty Picture object using the Utils.Picture method and how to work with images using methods of the Picture object.

JavaScript

function Test1()
{
  var Pict, NewPict, x, y;

  // Creates a new empty Picture object
  Pict = Utils.Picture;

  // Loads the image from a file and posts it to the log
  Pict.LoadFromFile("D:\\Data\\my_image.png");
  Log.Picture(Pict);

  // Obtains the bounds of the new image
  x = Pict.Size.Width - 10;
  y = Pict.Size.Height - 10;

  // Obtains the new Picture object containing the specified rectangular area of the loaded image
  NewPict = Pict.GetRect(0, 0, x, y);

  // Changes the color of the top left pixel of the new image to the red color
  NewPict.$set("Pixels", 0, 0, clRed);

  // Saves the obtained picture to the new file and posts the image to the log
  NewPict.SaveToFile("D:\\Data\\my_new_image.png");
  Log.Picture(NewPict);
}

JScript

function Test1()
{
  var Pict, NewPict, x, y;

  // Creates a new empty Picture object
  Pict = Utils.Picture;

  // Loads the image from a file and posts it to the log
  Pict.LoadFromFile("D:\\Data\\my_image.png");
  Log.Picture(Pict);

  // Obtains the bounds of the new image
  x = Pict.Size.Width - 10;
  y = Pict.Size.Height - 10;

  // Obtains the new Picture object containing the specified rectangular area of the loaded image
  NewPict = Pict.GetRect(0, 0, x, y);

  // Changes the color of the top left pixel of the new image to the red color
  NewPict.Pixels(0,0)= clRed;

  // Saves the obtained picture to the new file and posts the image to the log
  NewPict.SaveToFile("D:\\Data\\my_new_image.png");
  Log.Picture(NewPict);
}

Python

def Test1():
  
  # Creates a new empty Picture object
  Pict = Utils.Picture;

  # Loads the image from a file and posts it to the log
  Pict.LoadFromFile("D:\\Data\\my_image.png")
  Log.Picture(Pict)

  # Obtains the bounds of the new image
  x = Pict.Size.Width - 10
  y = Pict.Size.Height - 10

  # Obtains the new Picture object containing the specified rectangular area of the loaded image
  NewPict = Pict.GetRect(0, 0, x, y)

  # Changes the color of the top left pixel of the new image to the red color
  NewPict.Pixels[0,0] = clRed

  # Saves the obtained picture to the new file and posts the image to the log
  NewPict.SaveToFile("D:\\Data\\my_new_image.png")
  Log.Picture(NewPict)

VBScript

Sub Test1
  Dim Pict, NewPict, x, y

  ' Creates a new empty Picture object
  Set Pict = Utils.Picture

  ' Loads the image from a file and posts it to the log
  Call Pict.LoadFromFile("D:\Data\my_image.png")
  Log.Picture(Pict)

  ' Obtains the bounds of the new image
  x = Pict.Size.Width - 10
  y = Pict.Size.Height - 10

  ' Obtains the new Picture object containing the specified rectangular area of the loaded image
  Set NewPict = Pict.GetRect(0, 0, x, y)

  ' Changes the color of the top left pixel of the new image to the red color
  NewPict.Pixels(0,0)= clRed

  ' Saves the obtained picture to the new file and posts the image to the log
  Call NewPict.SaveToFile("D:\Data\my_new_image.png")
  Log.Picture(NewPict)
End Sub

DelphiScript

procedure Test1;
var Pict, NewPict, x, y;
begin
  // Creates a new empty Picture object
  Pict := Utils.Picture;

  // Loads the image from a file and posts it to the log
  Pict.LoadFromFile('D:\Data\my_image.png');
  Log.Picture(Pict);

  // Obtains the bounds of the new image
  x := Pict.Size.Width - 10;
  y := Pict.Size.Height - 10;

  // Obtains the new Picture object containing the specified rectangular area of the loaded image
  NewPict := Pict.GetRect(0, 0, x, y);

  // Changes the color of the top left pixel of the new image to the red color
  NewPict.Pixels(0,0) := clRed;

  // Saves the obtained picture to the new file and posts the image to the log
  NewPict.SaveToFile('D:\Data\my_new_image.png');
  Log.Picture(NewPict);
end;

C++Script, C#Script

function Test1()
{
  var Pict, NewPict, x, y;

  // Creates a new empty Picture object
  Pict = Utils["Picture"];

  // Loads the image from a file and posts it to the log
  Pict["LoadFromFile"]("D:\\Data\\my_image.png");
  Log["Picture"](Pict);

  // Obtains the bounds of the new image
  x = Pict["Size"]["Width"] - 10;
  y = Pict["Size"]["Height"] - 10;

  // Obtains the new Picture object containing the specified rectangular area of the loaded image
  NewPict = Pict["GetRect"](0, 0, x, y);

  // Changes the color of the top left pixel of the new image to the red color
  NewPict["Pixels"](0,0)= clRed;

  // Saves the obtained picture to the new file and posts the image to the log
  NewPict["SaveToFile"]("D:\\Data\\my_new_image.png");
  Log["Picture"](NewPict);
}

See Also

About Region Checkpoints
Compare Method
Difference Method
Find Method
Working With Colors

Highlight search results