CÁC GIẢI PHÁP LẬP TRÌNH C# - Trang 327

327

Chương 8: Đồ họa, đa phương tiện, và in ấn

// Tạo các biến lưu giữ vị trí trên trang.

float x = e.MarginBounds.Left;

float y = e.MarginBounds.Top;

// Tăng biến đếm cho trang (cho biết số trang đã được in).

doc.PageNumber += 1;

// In tất cả thông tin vừa khít trên trang.

// Vòng lặp này kết thúc khi dòng kế tiếp vượt quá biên lề,

// hoặc không còn dòng nào để in.

while ((y + lineHeight) < e.MarginBounds.Bottom &&

doc.Offset <= doc.Text.GetUpperBound(0)) {

e.Graphics.DrawString(doc.Text[doc.Offset], font,

Brushes.Black, x, y);

// Dịch đến dòng dữ liệu kế tiếp.

doc.Offset += 1;

// Dịch xuống một dòng trên trang.

y += lineHeight;

}

if (doc.Offset < doc.Text.GetUpperBound(0)) {

// Vẫn còn ít nhất một trang nữa.

// Cho biết sự kiện này sẽ phát sinh lần nữa.

e.HasMorePages = true;

}else {

// Thao tác in đã hoàn tất.

doc.Offset = 0;

}

}

}

Liên Kết Chia Sẽ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.