Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách chuyển đổi HTML sang PDF bằng PHP với sự trợ giúp của thư viện DOMPDF. Sử dụng phương pháp này, bạn có thể chuyển đổi HTML thành PDF với hỗ trợ tạo kiểu nội tuyến. Bạn cũng có thể tải xuống tệp PDF đã chuyển đổi bằng phương pháp này
Tham gia với hơn 27.000 thành viên trong nhóm Google của bạn và nhận các hướng dẫn mới nhất
Nhận các hướng dẫn mới nhất của chúng tôi, Hướng dẫn cách thực hiện về phát triển web mỗi ngày ngay trong hộp thư đến của bạn
Để chuyển đổi HTML sang PDF chỉ mất ba bước. -
- Tạo một tệp HTML và xác định đánh dấu
- Tạo tệp PHP để tạo PDF
- Tạo một tệp CSS và xác định kiểu dáng
Bước 1. Tạo một tệp HTML và xác định đánh dấu
Chúng tôi tạo một tệp HTML và lưu nó với tên html_to_pdf. html
Trong bước này, chúng tôi tạo một biểu mẫu để gửi thông tin chi tiết tới 'generate_pdf. php' và thêm 'phong cách. css' mà chúng ta sẽ tạo trong bước tiếp theo
Bước 2. Tạo tệp PHP để tạo PDF
Chúng tôi tạo một tệp PHP và lưu nó với tên generate_pdf. php
loadHtml[' Name : '.$_POST['name'].' Email : '.$_POST['email'].' Age : '.$_POST['age'].' Country : '.$_POST['country'].' ']; $dompdf->setPaper['A4', 'landscape']; $dompdf->render[]; $dompdf->stream["",array["Attachment" => false]]; exit[0]; } ?>
Bạn phải tải xuống dompdf 0. 7. 0 để chuyển đổi HTML sang PDF. Trong bước này, chúng tôi thêm 'tự động tải. tập đoàn. php' và sau đó tạo đối tượng Dompdf
Chúng tôi lấy tất cả các giá trị do người dùng nhập và họ nhúng các giá trị đó vào bảng để hiển thị trong tệp PDF
Bạn phải chèn tất cả HTML của mình vào hàm loadHtml[] và sau đó chúng tôi đặt loại trang thành A4 và ở chế độ ngang, sau đó sử dụng hàm render[] để chuyển đổi HTML sang PDF và sau đó hiển thị tệp pdf đã tạo bằng hàm stream[]
Nếu bạn phải tải xuống pdf thay vì hiển thị, hãy sử dụng hàm stream[] mà không có bất kỳ tham số nào. Bạn có thể tìm thêm chi tiết về các phương pháp và chức năng trong trang web đó
Bước 3. Tạo một tệp CSS và xác định kiểu dáng
Chúng tôi tạo một tệp CSS và lưu nó với một kiểu tên. css
body { margin:0 auto; padding:0px; text-align:center; width:100%; font-family: "Myriad Pro","Helvetica Neue",Helvetica,Arial,Sans-Serif; } #wrapper { margin:0 auto; padding:0px; text-align:center; width:995px; } #wrapper h1 { margin-top:50px; font-size:45px; color:#585858 } #wrapper h1 p { font-size:18px; } #wrapper a { color:blue; font-size:20px; } #html_div input[type="text"] { margin-top:5px; width:250px; height:35px; padding:10px; } #html_div input[type="submit"] { background-color:#585858; width:250px; height:35px; border:none; margin-top:5px; color:white; margin-left:-5px; }
Vậy thôi, đây là cách chuyển HTML sang PDF bằng PHP và HTML. Bạn có thể tùy chỉnh thêm mã này theo yêu cầu của bạn. Và xin vui lòng cho nhận xét về hướng dẫn này
Trong hướng dẫn này, bạn sẽ học cách dễ dàng chuyển đổi các trang web và tài liệu HTML thô sang PDF trong các ứng dụng PHP của mình. Chúng tôi sẽ sử dụng API Pdfcrowd để tạo PDF. API cung cấp những lợi ích này
- API rất dễ sử dụng và hỗ trợ đầy đủ HTML/CSS3/JavaScript
- Việc tích hợp chỉ mất vài phút
- Không cần thư viện của bên thứ ba, chỉ cần một tệp PHP nhỏ
- Nó không tiêu tốn CPU/bộ nhớ trên máy tính của bạn, các tệp PDF được tạo trên máy chủ Pdfcrowd
Giới thiệu
Hãy bắt đầu với một ví dụ
Mã này chuyển đổi en. wikipedia. org và lưu trữ PDF được tạo thành một biến chuỗi. Bạn có thể lưu kết quả vào một tệp hoặc bạn có thể truyền trực tuyến nó đến trình duyệt, chúng tôi sẽ thảo luận chi tiết ngay sau đây. Bạn có thể nhấp vào hình thu nhỏ để mở tệp PDF đã tạo
Bên cạnh các trang web, bạn cũng có thể chuyển đổi tệp HTML cục bộ hoặc chuỗi HTML
Cũng có thể lưu PDF trực tiếp vào một tệp
Tùy chỉnh cơ bản
Bây giờ bạn đã biết những điều cơ bản, bạn có thể muốn tùy chỉnh tệp PDF đã tạo. Hãy thay đổi định dạng trang thành Thư với lề nửa inch
Bạn cũng có thể sử dụng các đơn vị số liệu
Bạn cũng có thể chỉ định giao diện của tệp PDF khi nó được mở trong trình xem
________số 8API cung cấp nhiều tùy chọn khác bao gồm bảo vệ bằng mật khẩu và đầu trang và chân trang có thể tùy chỉnh hoàn toàn. Tìm hiểu thêm về các tùy chọn có sẵn trong API HTML sang PDF - Tài liệu PHP SDK
Tạo PDF phía máy chủ
Trong phần này, chúng tôi sẽ chỉ ra hai tình huống tạo PDF phổ biến
Tạo PDF và gửi nó tới trình duyệt
Đoạn mã sau chuyển đổi ví dụ. com sang PDF và gửi dưới dạng phản hồi
Để chuyển đổi một chuỗi HTML, bạn có thể sử dụng convertString[] thay vì convertUrl[]
loadHtml[' Name : '.$_POST['name'].' Email : '.$_POST['email'].' Age : '.$_POST['age'].' Country : '.$_POST['country'].' ']; $dompdf->setPaper['A4', 'landscape']; $dompdf->render[]; $dompdf->stream["",array["Attachment" => false]]; exit[0]; } ?>0
Vì Bố trí nội dung được đặt thành nội tuyến, tệp PDF được tạo sẽ được mở trong trình duyệt. Nếu bạn thay đổi nó thành tệp đính kèm, trình duyệt sẽ bật lên hộp thoại tải xuống tệp
loadHtml[' Name : '.$_POST['name'].' Email : '.$_POST['email'].' Age : '.$_POST['age'].' Country : '.$_POST['country'].' ']; $dompdf->setPaper['A4', 'landscape']; $dompdf->render[]; $dompdf->stream["",array["Attachment" => false]]; exit[0]; } ?>1
Cung cấp phiên bản PDF của các trang web của bạn
Ví dụ này cho thấy cách nâng cao mã PHP của bạn để nó có thể trả về phiên bản PDF của các trang web của bạn. Hãy xem chức năng trợ giúp sau đây
loadHtml[' Name : '.$_POST['name'].' Email : '.$_POST['email'].' Age : '.$_POST['age'].' Country : '.$_POST['country'].' ']; $dompdf->setPaper['A4', 'landscape']; $dompdf->render[]; $dompdf->stream["",array["Attachment" => false]]; exit[0]; } ?>2
Trước tiên, hàm generatePDF[] sẽ kiểm tra xem có trường pdf nào trong chuỗi truy vấn không. Nếu có, thì trường sẽ bị xóa khỏi url. Sau đó, hàm chuyển url đã sửa đổi tới API và cuối cùng gửi tệp PDF đã tạo tới trình duyệt