Graphics.PageScale Properti
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mendapatkan atau mengatur penskalaan antara unit dunia dan unit halaman untuk ini Graphics.
public:
property float PageScale { float get(); void set(float value); };
public float PageScale { get; set; }
member this.PageScale : single with get, set
Public Property PageScale As Single
Nilai Properti
Properti ini menentukan nilai untuk penskalaan antara unit dunia dan unit halaman untuk ini Graphics.
Contoh
Contoh kode berikut menunjukkan cara menggunakan PageScale anggota dan TranslateTransform untuk mengubah skala dan asal saat Anda menggambar persegi panjang.
Contoh ini dirancang untuk digunakan dengan Formulir Windows. Tempelkan kode ke dalam formulir dan panggil ChangePageScaleAndTranslateTransform
metode saat menangani peristiwa formulir Paint , meneruskan e
sebagai PaintEventArgs.
private:
void ChangePageScaleAndTranslateTransform( PaintEventArgs^ e )
{
// Create a rectangle.
Rectangle rectangle1 = Rectangle(20,20,50,100);
// Draw its outline.
e->Graphics->DrawRectangle( Pens::SlateBlue, rectangle1 );
// Change the page scale.
e->Graphics->PageScale = 2.0F;
// Call TranslateTransform to change the origin of the
// Graphics object.
e->Graphics->TranslateTransform( 10.0F, 10.0F );
// Draw the rectangle again.
e->Graphics->DrawRectangle( Pens::Tomato, rectangle1 );
// Set the page scale and origin back to their original values.
e->Graphics->PageScale = 1.0F;
e->Graphics->ResetTransform();
SolidBrush^ transparentBrush = gcnew SolidBrush( Color::FromArgb( 50, Color::Yellow ) );
// Create a new rectangle with the coordinates you expect
// after setting PageScale and calling TranslateTransform:
// x = (10 + 20) * 2
// y = (10 + 20) * 2
// Width = 50 * 2
// Length = 100 * 2
Rectangle newRectangle = Rectangle(60,60,100,200);
// Fill in the rectangle with a semi-transparent color.
e->Graphics->FillRectangle( transparentBrush, newRectangle );
}
private void ChangePageScaleAndTranslateTransform(PaintEventArgs e)
{
// Create a rectangle.
Rectangle rectangle1 = new Rectangle(20, 20, 50, 100);
// Draw its outline.
e.Graphics.DrawRectangle(Pens.SlateBlue, rectangle1);
// Change the page scale.
e.Graphics.PageScale = 2.0F;
// Call TranslateTransform to change the origin of the
// Graphics object.
e.Graphics.TranslateTransform(10.0F, 10.0F);
// Draw the rectangle again.
e.Graphics.DrawRectangle(Pens.Tomato, rectangle1);
// Set the page scale and origin back to their original values.
e.Graphics.PageScale = 1.0F;
e.Graphics.ResetTransform();
SolidBrush transparentBrush = new SolidBrush(Color.FromArgb(50,
Color.Yellow));
// Create a new rectangle with the coordinates you expect
// after setting PageScale and calling TranslateTransform:
// x = (10 + 20) * 2
// y = (10 + 20) * 2
// Width = 50 * 2
// Length = 100 * 2
Rectangle newRectangle = new Rectangle(60, 60, 100, 200);
// Fill in the rectangle with a semi-transparent color.
e.Graphics.FillRectangle(transparentBrush, newRectangle);
}
Private Sub ChangePageScaleAndTranslateTransform(ByVal e As _
PaintEventArgs)
' Create a rectangle.
Dim rectangle1 As New Rectangle(20, 20, 50, 100)
' Draw its outline.
e.Graphics.DrawRectangle(Pens.SlateBlue, rectangle1)
' Change the page scale.
e.Graphics.PageScale = 2.0F
' Call TranslateTransform to change the origin of the
' Graphics object.
e.Graphics.TranslateTransform(10.0F, 10.0F)
' Draw the rectangle again.
e.Graphics.DrawRectangle(Pens.Tomato, rectangle1)
' Set the page scale and origin back to their original values.
e.Graphics.PageScale = 1.0F
e.Graphics.ResetTransform()
Dim transparentBrush As New SolidBrush(Color.FromArgb(50, Color.Yellow))
' Create a new rectangle with the coordinates you expect
' after setting PageScale and calling TranslateTransform:
' x = (10 + 20) * 2
' y = (10 + 20) * 2
' Width = 50 * 2
' Length = 100 * 2
Dim newRectangle As Rectangle = New Rectangle(60, 60, 100, 200)
' Fill in the rectangle with a semi-transparent color.
e.Graphics.FillRectangle(transparentBrush, newRectangle)
End Sub