Dùng VB 6.0 để vẽ biểu đồ và hiển thị trên form, khi dùng lệnh PrintForm thì chỉ in được tối đa là phân nửa trang giấy A4?

Dùng VB 6.0 để vẽ biểu đồ và hiển thị trên form, khi dùng lệnh PrintForm thì chỉ in được tối đa là phân nửa trang giấy A4. Xin hỏi cách để in form hết chiều dài trang A4.
le thi ha
le thi ha
Trả lời 15 năm trước
Lệnh PrintForm chỉ thực hiện việc copy từng pixel của Form màn hình ra giấy. Do độ phân giải của màn hình thường thấp hơn nhiều so với độ phân giải của máy in nên mặc dù Form màn hình có kích thước lớn nhưng khi copy ra giấy (hệ số mặc định là 1:1), Form chỉ chiếm 1 vùng khá nhỏ trên giấy. Để việc in ấn được chuyên nghiệp hơn, kết quả in mịn hơn và đúng với kích thước mong muốn hơn, bạn nên vẽ biểu đồ trực tiếp lên đối tượng Printer (nhờ các tác vụ như Print, PSet, Line, Circle, PaintPicture y như bạn đã làm trên Form ứng dụng). Sau đây là đoạn code VB in ra hình chữ nhật có kích thước 190x280mm trên trang giấy A4 theo chiều dọc (Portrait): //thiết lập chiều in đứng Printer.Orientation = vbPRORPortrait //thiết lập đơn vị đo bằng milimeter Printer.ScaleMode = vbMillimeters //thiết lập màu vẽ đường viền là đen Printer.ForeColor = RGB(0, 0, 0) //thiết lập độ rộng nét vẽ là 5 pixel Printer.DrawWidth = 5 //không tô nền các phần tử có điện tích Printer.FillStyle = vbFSTransparent //vẽ hình chữ nhật rỗng kích thước 190*280mm Printer.Line (0, 0)-(190, 280), , B //kết thúc in trên trang hiện tại & chuyển sang trang kế tiếp Printer.NewPage Chúc bạn thành cống