10/10/2018, 11:12

Hỏi về Vấn đề in ấn trong trang web

Hi, chào các bạn. Mình có nhu cầu in ra bảng điểm của sinh viên dạng table. Ví dụ mình có 60 sinh viên, mình đã thể hiện dc trên trình duyệt 3 table(có header và footer), mỗi table có 20 sinh viên. Vậy mình muốn in kết quả ra làm 3 bản(tức là mỗi table là 1 bản, in trên khổ A4) dùng chức năng in của trình duyệt thì làm thế nao? Cám ơn các bạn
haicop viết 13:21 ngày 10/10/2018
Theo mình thì giải pháp in trực tiếp trên web không ổn lắm, tốt nhất bạn nghiên cứu xuất ra PDF rồi in là hay nhất. Mình thấy Đăng Khoa họ làm phần mềm quản lý bằng web, in bằng cách xuất ra PDF
honnhienh viết 13:25 ngày 10/10/2018
ùh. hiện tại tớ có 1 cái project cần hỗ trợ in ấn. mới chỉ nghĩ tới pdf còn chưa rành về css trong in lên chua giảm mảo hiểm
boydragon1588 viết 13:17 ngày 10/10/2018
nếu bạn dùng jasper report để xuất ra file PDF thì coi chừng gặp lỗi font chữ đó. Hiện mình chưa tìm ra cách giải quyết vụ font chữ nên mới nghĩ ra cách đưa dữ liệu ra trên trình duyệt rồi dùng công cụ in của nó để in, nhưng bị vướng vấn đề của topic lập ra. Haizz chả biết sao
thuyduongcd viết 13:19 ngày 10/10/2018
Tạo 1 trang in riêng chỉ chứa nội dung cần in, sau đó dùng window.print() để in nội dung trong cửa sổ đang hiển thị.
boydragon1588 viết 13:14 ngày 10/10/2018
Được gửi bởi thuyduongcd
Tạo 1 trang in riêng chỉ chứa nội dung cần in, sau đó dùng window.print() để in nội dung trong cửa sổ đang hiển thị.
Vậy có chắc là nội dung mình cần in sẽ nằm gọn trong cỡ giấy A4? Ý mình là trang có nội dung cần in đã có 3 table. Vấn đề là mình muốn mỗi table dc in trên 1 trang A4.
thuyduongcd viết 13:20 ngày 10/10/2018
Việc này không thể được vì nội dung trong table là động không thể kiểm soát được. Nếu có row nào nội dung quá dài thì bặt buộc phải quang trang thôi.
huntkey viết 13:23 ngày 10/10/2018
http://www.ncdesign.org/html/s060oth.htm#pagebreak
haicop viết 13:20 ngày 10/10/2018
Được gửi bởi boydragon1588
nếu bạn dùng jasper report để xuất ra file PDF thì coi chừng gặp lỗi font chữ đó. Hiện mình chưa tìm ra cách giải quyết vụ font chữ nên mới nghĩ ra cách đưa dữ liệu ra trên trình duyệt rồi dùng công cụ in của nó để in, nhưng bị vướng vấn đề của topic lập ra. Haizz chả biết sao
Mình dùng font unicode ko thấy bị lỗi
whitepenguin viết 13:13 ngày 10/10/2018
Nếu dùng trình duyệt web để in thì bạn sẽ không kiểm soát được Header, Footer, khổ giấy, Đánh số trang. Tốt nhất là sản sinh PDF on the fly. Có nghĩa bạn sẽ có 2 version. 1 cái để render HTML, 1 cái là Render thành PDF. Công ty của tui, có rất nhiều yêu cầu về summary report gồm có biểu đồ và table on the fly. Cho nên cách tốt nhất là sản sinh PDF report. Tránh dùng các phần mềm third party như ,convert HTML to PDF.

Tuy vào độ dài của table và độ lớn của khổ giấy và hướng xoay của giấy, cho nên ta không thể bắt 1 table nằm trọn trong 1 khổ giấy được, sản sinh PDF này là Automation, không có phải là PDF Editor.

Thông thường khi nói đến vấn đề in ấn hoặc là convert dữ liệu thấy ở trên web sang các loại Document như PDF,Word (Docx) hay là excel( .xlsx) các bạn thường tỏ ra rất ngại và rất sợ. Tui có 1 lời khuyên thế này. Nếu sợ cái nào thì chúi đầu vào cái đó mà tìm tòi.
Ví dụ để sản sinh PDF bạn có thề học và tìm hiểu iText ( có 2 loại versions: cho Java và cho .NET framework - iTextSharp), rất là hữu ích

Để sản sinh Docx hoặc xlsx bạn có thể học Microsoft Office OpenXML.
http://msdn.microsoft.com/en-us/office/bb738430.aspx
Nếu bạn viết dùng PHP thì có lẽ bạn sẽ phải học Office OpenXML (không phải của microsoft)

Những cái thế này tui để làm qua thử rồi, chỉ cần bỏ vài tiếng 1 ngày, đảm bảo 1 tuần sau bạn sẽ tự tin và be productive.
Bài liên quan
0