How to use coordinate space transformations using ByteScout PDF SDK - ByteScout

# How to use coordinate space transformations using ByteScout PDF SDK

• Home
• /
• Articles
• /
• How to use coordinate space transformations using ByteScout PDF SDK

The example demonstrates how to use coordinate space transformations using ByteScout PDF SDK.

Program.vb:
VB

```'*******************************************************************
'       ByteScout PDF SDK
'
'
'*******************************************************************

Imports Bytescout.PDF

''' <summary>
''' This example demonstrates how to use coordinate space transformations.
''' </summary>
Class Program

Shared Sub Main()

' Create new document
Dim pdfDocument = New Document()
pdfDocument.RegistrationName = "demo"
pdfDocument.RegistrationKey = "demo"
Dim page = New Page(PaperFormat.A4)

Dim canvas = page.Canvas

' Prepare pens
Dim blackPen = New SolidPen(New ColorRGB(0, 0, 0), 2.0F)
blackPen.Opacity = 50
Dim bluePen = New SolidPen(New ColorRGB(0, 0, 255), 2.0F)
bluePen.Opacity = 50
Dim greenPen = New SolidPen(New ColorRGB(0, 255, 0), 2.0F)
greenPen.Opacity = 50

' Move coordinate space zero point to (200, 200) and draw a rectangle of 50x50 dize
canvas.TranslateTransform(200, 200)
canvas.DrawRectangle(blackPen, 0, 0, 50, 50)

' Now zoom the coordinate space in twice and draw the same rectangle in green
canvas.ScaleTransform(2, 2)
canvas.DrawRectangle(greenPen, 0, 0, 50, 50)

' Now rotate the coordinate space by 30 degrees and draw the same rectangle in blue
canvas.RotateTransform(30)
canvas.DrawRectangle(bluePen, 0, 0, 50, 50)

' Save document to file
pdfDocument.Save("result.pdf")

' Cleanup
pdfDocument.Dispose()

' Open document in default PDF viewer app
Process.Start("result.pdf")

End Sub

End Class ```

Program.cs:
C#

```//*******************************************************************
//       ByteScout PDF SDK
//
//
//*******************************************************************

using System.Diagnostics;
using Bytescout.PDF;

namespace Transformations
{
/// <summary>
/// This example demonstrates how to use coordinate space transformations.
/// </summary>
class Program
{
static void Main()
{
// Create new document
Document pdfDocument = new Document();
pdfDocument.RegistrationName = "demo";
pdfDocument.RegistrationKey = "demo";
Page page = new Page(PaperFormat.A4);

Canvas canvas = page.Canvas;

// Prepare pens
Pen blackPen = new SolidPen(new ColorRGB(0, 0, 0), 2f);
blackPen.Opacity = 50;
Pen bluePen = new SolidPen(new ColorRGB(0, 0, 255), 2f);
bluePen.Opacity = 50;
Pen greenPen = new SolidPen(new ColorRGB(0, 255, 0), 2f);
greenPen.Opacity = 50;

// Move coordinate space zero point to (200, 200) and draw a rectangle of 50x50 dize
canvas.TranslateTransform(200, 200);
canvas.DrawRectangle(blackPen, 0, 0, 50, 50);

// Now zoom the coordinate space in twice and draw the same rectangle in green
canvas.ScaleTransform(2, 2);
canvas.DrawRectangle(greenPen, 0, 0, 50, 50);

// Now rotate the coordinate space by 30 degrees and draw the same rectangle in blue
canvas.RotateTransform(30);
canvas.DrawRectangle(bluePen, 0, 0, 50, 50);

// Save document to file
pdfDocument.Save("result.pdf");

// Cleanup
pdfDocument.Dispose();

// Open document in default PDF viewer app
Process.Start("result.pdf");
}
}
} ```