Bài giảng Lập trình môi trường Window: Chương 6 - Ngô Thanh Hùng
lượt xem 3
download
Chương 6 trình bày về đồ họa Graphics Device Interface, GDI+ namespace, các khái niệm, cấu trúc, vẽ chữ, System.Drawing namespace, tạo animation với GDI+, các cách thức biến đổi hệ trục. Mời các bạn cùng tham khảo nội dung chi tiết.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Lập trình môi trường Window: Chương 6 - Ngô Thanh Hùng
- GDI+ (Graphic Device Interface) CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Tổng quan • Thư viện giúp “vẽ” lên màn hình hoặc máy in mà không cần quan tâm đến cấu trúc phần cứng độc lập thiết bị • GDI+ bao gồm 3 nhóm “dịch vụ” chính: – 2D vector graphics: cho phép tạo hình từ các hình cơ bản (primitive): đường thẳng, tròn, eclipse, đường cong,… – Imaging: làm việc với các tập tin hình ảnh (bitmap, metafile) – Typography: vẽ chữ CuuDuongThanCong.com https://fb.com/tailieudientucntt
- GDI+ namespace • System.Drawing • System.Drawing. Drawing2D • System.Drawing.Imaging • System.Drawing.Printing • System.Drawing.Text CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Các khái niệm Bề mặt vẽ: Graphics (System.Drawing) - Lấy từ Paint event (form) - CreateGraphics (trong control) protected override void OnPaint(PaintEventArgs e) { Graphics g = e.Graphics; Pen pen = new Pen(Color.Red); g.DrawLine(pen,0,0,100,100); } CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Các khái niệm private void button1_click(Object o, EventArgs e) { Graphics g = this.CreateGraphics(); Pen pen = new Pen(Color.Red,15); g.DrawLine(pen,0,0,100,100); g. Dispose(); } Invalidate(); Invalidate(myRect); CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Một số cấu trúc • Color • Point, PointF • Rectangle, RectangleF • Size, SizeF CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Point, PointF X,Y +, -, ==, !=, IsEmpty Rectangle, X,Y RectangleF Top, Left, Botton, Right Height, Width Inflate(), IntersSec,() Union() Contain() Size, SizeF +, -, ==, != Height, Width Region “phần ruột” của khuôn hình học Rectangle rect=new Rectangle(0,0,100,100) Region rgn= new Region(rect) CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Một số enumeration • ContentAlignment • FontStyle • GraphicsUnit • KnowColor • RotateFlipType • StringAlignment • ….. CuuDuongThanCong.com https://fb.com/tailieudientucntt
- 2D vector graphics Pen & brush Pen, Pens, SystemPens Brush, Brushes, SystemBrushes, SolidBrushes, TextureBrushes, (System.Drawing.Drawing2D) HatchBrush, LinearGradientBrush, PathGradientBrush Lines, rectangle, polygon DrawLine DrawLines DrawRectangle DrawPolygon FillRectangle FillPolygon CuuDuongThanCong.com https://fb.com/tailieudientucntt
- 2D vector graphics ellipse, arc, cardinal spline, bezier spline DrawEllipse DrawCurve DrawBezier FillEllipse DrawClosedCurve DrawBeziers FillClosedCurve DrawPie DrawArc FillPie CuuDuongThanCong.com https://fb.com/tailieudientucntt
- 2D vector graphics Path: kết hợp nhiều loại đường nét thành một đối tượng duy nhất. Các “nét” không nhất thiết phải liền nhau. GraphicsPath (AddLine, AddCurve, …) Graphics.DrawPath Graphics.FillPath CuuDuongThanCong.com https://fb.com/tailieudientucntt
- grfx.DrawLine(pen, 25, 100, 125, 100); grfx.DrawArc (pen, 125, 50, 100, 100, -180, 180); grfx.DrawLine(pen, 225, 100, 325, 100); GraphicsPath path = new GraphicsPath(); path.AddLine( 25, 100, 125, 100); path.AddArc (125, 50, 100, 100, -180, 180); path.AddLine(225, 100, 325, 100); Pen pen = new Pen(clr, 25); grfx.DrawPath(pen, path); CuuDuongThanCong.com https://fb.com/tailieudientucntt
- CuuDuongThanCong.com https://fb.com/tailieudientucntt
- 2D vector graphics • Region: một vùng được tạo ra bằng các phép kết giữa các hình chữ nhật hoặc path. Region thường được dùng cho “hit-test” hoặc “clipping” System.Drawing.Drawing2D Region.Intersect, Union, Xor, Exclude, Complement CuuDuongThanCong.com https://fb.com/tailieudientucntt
- 2D vector graphics Clipping: giới hạn các hình vẽ vào trong một region, path hoặc rectangle Graphics.SetClip() Graphics.SetClip() Graphics.SetClip() CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Ví dụ CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Ví dụ CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Image • Cho phép vẽ các hình ảnh. – Tạo các hình ảnh thông qua class Image (Bitmap, Metafile, Icon, …) – Class Bitmap hỗ trợ các định dạng chuẩn GIF, JPG, BMP, PNG, TIFF. – Dùng Graphics.DrawImage, DrawIcon, DrawIconUnstretched, DrawImageUnscaled • Bitmap – Bitmap bmp = new Bitmap(filename, …) – RotateFlip: xoay lật, hình – MakeTransparent: đặt màu trong suốt. – GetPixel, SetPixel: vẽ bằng cách chấm từng điểm! CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Vẽ chữ • Cho phép vẽ các câu chữ trên Graphics – Tạo các đối tượng Font chỉ định các thuộc tính chữ (như font, style, …) (chương 5) – Tạo pen và brush – Graphics.DrawString – Để “đo” kích thước chuỗi (dài,rộng) , dùng Graphics.MeasureString CuuDuongThanCong.com https://fb.com/tailieudientucntt
- System.Drawing namespace Bitmap Pixel image (GIF, JPEG, PNG, BMP, TIFF) Brush Abstract base class. Brushes Brushes for all basic colors Color Font Defines a format for text, including font face, and sizeEncapsulates a typeface, size, style, and effects. FontFamily Group of type faces with the same basic design. Graphics Icon Transparent bitmaps used for Windows icons. Image Abstract base class common to the Bitmap, Icon, and Metafile classes. Pen Defines an object used to draw lines and curves. Pens Provides static Pen definitions for all the standard colors. CuuDuongThanCong.com https://fb.com/tailieudientucntt
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Lập trình căn bản: Chương 1 - Võ Duy Tín
13 p | 144 | 18
-
Bài giảng Lập trình trên môi trường Window: Chương 1 - ThS. Dương Thành Phết
29 p | 86 | 9
-
Bài giảng Lập trình PHP1 - Trương Xuân Hương
347 p | 81 | 6
-
Bài giảng Lập trình môi trường Windows: Chương 1 - Phạm Thi Vương
74 p | 78 | 4
-
Bài giảng Lập trình Windows - Trường ĐH Công nghiệp Thực Phẩm TP.HCM
144 p | 49 | 3
-
Bài giảng Lập trình môi trường Window - Chương 1: Tổng quan lập trình môi trường windows
50 p | 23 | 3
-
Bài giảng Lập trình môi trường Window: Chương 2 - Ngô Thanh Hùng
139 p | 23 | 3
-
Bài giảng Lập trình môi trường Window - Chương 0: Giới thiệu môn học
7 p | 26 | 3
-
Bài giảng Lập trình môi trường Window - Chương 5: GDI+ (Graphic Device Interface)
47 p | 17 | 3
-
Bài giảng Lập trình môi trường Window - Chương 2: Ngôn ngữ C#
139 p | 18 | 2
-
Bài giảng Lập trình môi trường Window - Chương 4: Xử lý các sự kiện nhập liệu
51 p | 18 | 2
-
Bài giảng Lập trình môi trường Window - Chương 3: Lập trình GUI
114 p | 25 | 2
-
Bài giảng Lập trình môi trường Window: Chương 9 - Ngô Thanh Hùng
42 p | 27 | 2
-
Bài giảng Lập trình môi trường Window: Chương 4 - Ngô Thanh Hùng
51 p | 26 | 2
-
Bài giảng Lập trình môi trường Window: Chương 1 - Ngô Thanh Hùng
50 p | 17 | 2
-
Bài giảng Lập trình môi trường Window: Chương mở đầu - Ngô Thanh Hùng
6 p | 23 | 2
-
Bài giảng Lập trình môi trường Windows: Font và String
116 p | 62 | 2
-
Bài giảng Lập trình môi trường Window - Chương 6: Font và String
116 p | 19 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn