Ler em inglês

Partilhar via


Graphics.CopyFromScreen Método

Definição

Executa uma transferência de bloco de bits dos dados de cores da tela até a superfície de desenho do Graphics.

Sobrecargas

CopyFromScreen(Point, Point, Size)

Executa uma transferência de bloco de bits dos dados de cores, correspondendo a um retângulo de pixels, da tela até a superfície de desenho do Graphics.

CopyFromScreen(Point, Point, Size, CopyPixelOperation)

Executa uma transferência de bloco de bits dos dados de cores, correspondendo a um retângulo de pixels, da tela até a superfície de desenho do Graphics.

CopyFromScreen(Int32, Int32, Int32, Int32, Size)

Executa uma transferência de bloco de bits dos dados de cores, correspondente a um retângulo de pixels, da tela à superfície de desenho do Graphics.

CopyFromScreen(Int32, Int32, Int32, Int32, Size, CopyPixelOperation)

Executa uma transferência de bloco de bits dos dados de cores, correspondente a um retângulo de pixels, da tela à superfície de desenho do Graphics.

CopyFromScreen(Point, Point, Size)

Origem:
Graphics.cs
Origem:
Graphics.cs
Origem:
Graphics.cs

Executa uma transferência de bloco de bits dos dados de cores, correspondendo a um retângulo de pixels, da tela até a superfície de desenho do Graphics.

C#
public void CopyFromScreen (System.Drawing.Point upperLeftSource, System.Drawing.Point upperLeftDestination, System.Drawing.Size blockRegionSize);

Parâmetros

upperLeftSource
Point

O ponto no canto superior esquerdo do retângulo de origem.

upperLeftDestination
Point

O ponto no canto superior esquerdo do retângulo de destino.

blockRegionSize
Size

O tamanho da área a ser transferida.

Exceções

Falha na operação.

Exemplos

O exemplo a seguir demonstra como usar o CopyFromScreen método . Para executar este exemplo, cole-o em um Formulário do Windows. Manipule o evento do Paint formulário e chame o CopyPixels1 método do Paint método de tratamento de eventos, passando e como PaintEventArgs.

C#
private void CopyPixels1(PaintEventArgs e)
{
    e.Graphics.CopyFromScreen(this.Location, 
        new Point(40, 40), new Size(100, 100));
}

Comentários

Os CopyFromScreen métodos são úteis para colocar uma imagem em camadas sobre outra. Para especificar como as cores de origem e destino são combinadas, use um dos CopyFromScreen métodos que usa um CopyPixelOperation parâmetro .

Confira também

Aplica-se a

.NET Framework 4.8.1 e outras versões
Produto Versões
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

CopyFromScreen(Point, Point, Size, CopyPixelOperation)

Origem:
Graphics.cs
Origem:
Graphics.cs
Origem:
Graphics.cs

Executa uma transferência de bloco de bits dos dados de cores, correspondendo a um retângulo de pixels, da tela até a superfície de desenho do Graphics.

C#
public void CopyFromScreen (System.Drawing.Point upperLeftSource, System.Drawing.Point upperLeftDestination, System.Drawing.Size blockRegionSize, System.Drawing.CopyPixelOperation copyPixelOperation);

Parâmetros

upperLeftSource
Point

O ponto no canto superior esquerdo do retângulo de origem.

upperLeftDestination
Point

O ponto no canto superior esquerdo do retângulo de destino.

blockRegionSize
Size

O tamanho da área a ser transferida.

copyPixelOperation
CopyPixelOperation

Um dos valores de CopyPixelOperation.

Exceções

copyPixelOperation não é membro de CopyPixelOperation.

Falha na operação.

Exemplos

O exemplo a seguir demonstra como usar o CopyFromScreen método . Para executar este exemplo, cole-o em um Formulário do Windows. Manipule o evento do Paint formulário e chame o CopyPixels2 método do Paint método de tratamento de eventos, passando e como PaintEventArgs.

C#
private void CopyPixels2(PaintEventArgs e)
{
    e.Graphics.CopyFromScreen(this.Location, new Point(40, 40), 
        new Size(100, 100), CopyPixelOperation.MergePaint); 
}

Comentários

Os CopyFromScreen métodos são úteis para colocar uma imagem em camadas sobre outra. O copyPixelOperation parâmetro permite especificar se e como as cores de origem devem ser combinadas com as cores na área de destino.

Confira também

Aplica-se a

.NET Framework 4.8.1 e outras versões
Produto Versões
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

CopyFromScreen(Int32, Int32, Int32, Int32, Size)

Origem:
Graphics.cs
Origem:
Graphics.cs
Origem:
Graphics.cs

Executa uma transferência de bloco de bits dos dados de cores, correspondente a um retângulo de pixels, da tela à superfície de desenho do Graphics.

C#
public void CopyFromScreen (int sourceX, int sourceY, int destinationX, int destinationY, System.Drawing.Size blockRegionSize);

Parâmetros

sourceX
Int32

A coordenada X do ponto no canto superior esquerdo do retângulo de origem.

sourceY
Int32

A coordenada y do ponto no canto superior esquerdo do retângulo de origem.

destinationX
Int32

A coordenada X do ponto no canto superior esquerdo do retângulo de destino.

destinationY
Int32

A coordenada y do ponto no canto superior esquerdo do retângulo de destino.

blockRegionSize
Size

O tamanho da área a ser transferida.

Exceções

Falha na operação.

Exemplos

O exemplo de código a seguir demonstra como usar o CopyFromScreen para imprimir uma cópia do formulário atual.

C#
using System;
using System.Windows.Forms;
using System.Drawing;
using System.Drawing.Printing;

public class Form1 :
    Form
{
    private Button printButton = new Button();
    private PrintDocument printDocument1 = new PrintDocument();

    public Form1()
    {
        printButton.Text = "Print Form";
        printButton.Click += new EventHandler(printButton_Click);
        printDocument1.PrintPage += new PrintPageEventHandler(printDocument1_PrintPage);
        this.Controls.Add(printButton);
    }

    void printButton_Click(object sender, EventArgs e)
    {
        CaptureScreen();
        printDocument1.Print();
    }

    Bitmap memoryImage;

    private void CaptureScreen()
    {
        Graphics myGraphics = this.CreateGraphics();
        Size s = this.Size;
        memoryImage = new Bitmap(s.Width, s.Height, myGraphics);
        Graphics memoryGraphics = Graphics.FromImage(memoryImage);
        memoryGraphics.CopyFromScreen(this.Location.X, this.Location.Y, 0, 0, s);
    }

    private void printDocument1_PrintPage(System.Object sender,  
           System.Drawing.Printing.PrintPageEventArgs e)
    {
        e.Graphics.DrawImage(memoryImage, 0, 0);
    }

    public static void Main()
    {
        Application.Run(new Form1());
    }
}

Comentários

Os CopyFromScreen métodos são úteis para colocar uma imagem em camadas sobre outra. Para especificar como as cores de origem e destino são combinadas, use um dos CopyFromScreen métodos que usa um CopyPixelOperation parâmetro .

Confira também

Aplica-se a

.NET Framework 4.8.1 e outras versões
Produto Versões
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

CopyFromScreen(Int32, Int32, Int32, Int32, Size, CopyPixelOperation)

Origem:
Graphics.cs
Origem:
Graphics.cs
Origem:
Graphics.cs

Executa uma transferência de bloco de bits dos dados de cores, correspondente a um retângulo de pixels, da tela à superfície de desenho do Graphics.

C#
public void CopyFromScreen (int sourceX, int sourceY, int destinationX, int destinationY, System.Drawing.Size blockRegionSize, System.Drawing.CopyPixelOperation copyPixelOperation);

Parâmetros

sourceX
Int32

A coordenada X do ponto no canto superior esquerdo do retângulo de origem.

sourceY
Int32

A coordenada y do ponto no canto superior esquerdo do retângulo de origem.

destinationX
Int32

A coordenada X do ponto no canto superior esquerdo do retângulo de destino.

destinationY
Int32

A coordenada y do ponto no canto superior esquerdo do retângulo de destino.

blockRegionSize
Size

O tamanho da área a ser transferida.

copyPixelOperation
CopyPixelOperation

Um dos valores de CopyPixelOperation.

Exceções

copyPixelOperation não é membro de CopyPixelOperation.

Falha na operação.

Exemplos

O exemplo a seguir demonstra como usar o CopyFromScreen método . Para executar este exemplo, cole-o em um Formulário do Windows. Manipule o evento do Paint formulário e chame o CopyPixels4 método do Paint método de tratamento de eventos, passando e como PaintEventArgs.

C#
private void CopyPixels4(PaintEventArgs e)
{
    e.Graphics.CopyFromScreen(0, 0, 20, 20, new Size(160, 160), 
        CopyPixelOperation.SourceInvert);
}

Comentários

Os CopyFromScreen métodos são úteis para colocar uma imagem em camadas sobre outra. O copyPixelOperation parâmetro permite especificar se e como as cores de origem devem ser combinadas com as cores na área de destino.

Confira também

Aplica-se a

.NET Framework 4.8.1 e outras versões
Produto Versões
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9