Hàm imagecreate() là một hàm có sẵn trong PHP được sử dụng để tạo một hình ảnh mới. Hàm này trả về hình ảnh trống có kích thước đã cho. Nói chung, hàm imagecreatetruecolor() được sử dụng thay cho hàm imagecreate() vì hàm imagecreatetruecolor() tạo ra hình ảnh chất lượng cao
Trong bài đăng này, chúng ta sẽ xem cách thay đổi bất kỳ Văn bản nào thành hình ảnh bằng PHP. PHP đi kèm với một thư viện xử lý hình ảnh được gọi là thư viện GD. Điều này có nhiều tính năng như tạo hình ảnh vẽ Văn bản, tô màu cho văn bản, v.v. , có nhiều chức năng thực sự dễ hiểu đang viết chương trình
Thư viện GD phải được cài đặt trong máy chủ Apache của bạn để tập lệnh này hoạt động
Khi tôi gửi đầu vào văn bản qua biểu mẫu HTML tới mã PHP, sau đó trong PHP tôi gọi các hàm thư viện GD để chuyển đổi thành đầu vào văn bản thành hình ảnh. Tôi tạo các lớp hình ảnh để đặt văn bản và nền. Sau đó, tôi hợp nhất các lớp và sao chép phần cần thiết để hiển thị hình ảnh đầu ra cuối cùng cho trình duyệt
Hầu hết các hoạt động dựa trên hình ảnh có thể được thực hiện bằng cách sử dụng các hàm dựng sẵn trong PHP. Các hàm PHP dựa trên hình ảnh có trong thư viện GD và chúng ta có thể sử dụng chúng để chuyển đổi văn bản thành hình ảnh
Trước đó, chúng ta phải đảm bảo rằng thư viện GD được kích hoạt trong php. cấu hình ini. Bạn cũng có thể chạy hàm PHP phpinfo() để kiểm tra xem GD đã được bật chưa
Xem bản trình diễn
Tôi gửi nội dung nhập văn bản qua biểu mẫu HTML tới mã PHP. Trong PHP, tôi gọi các hàm thư viện GD để chuyển đổi văn bản nhập này thành hình ảnh
Tôi tạo các lớp hình ảnh để đặt văn bản và nền. Sau đó, tôi hợp nhất các lớp và sao chép phần cần thiết để hiển thị hình ảnh đầu ra cuối cùng cho trình duyệt. Nếu không có văn bản nào được nhập, thì nó sẽ được giải quyết bằng xác thực JavaScript
Ảnh chụp màn hình này hiển thị đầu ra cuối cùng sau khi chuyển đổi kiểu nhập văn bản thành hình ảnh. Ví dụ này có thể hữu ích để tạo hình ảnh xác thực tùy chỉnh bằng PHP
setOutputFormat("png"); // run the conversion and write the result to a file $client->convertUrlToFile("//www.example.com", "example.png"); } catch(\Pdfcrowd\Error $why) { // report the error error_log("Pdfcrowd Error: {$why}\n"); // rethrow or handle the exception throw $why; } ?>
Sao chépHtmlToImageClient("demo", "ce544b6ea52a5621fb9d55f8b542d14d"); // configure the conversion $client->setOutputFormat("png"); // run the conversion and write the result to a file $client->convertFileToFile("/path/to/MyLayout.html", "MyLayout.png"); } catch(\Pdfcrowd\Error $why) { // report the error error_log("Pdfcrowd Error: {$why}\n"); // rethrow or handle the exception throw $why; } ?>
Sao chépHtmlToImageClient("demo", "ce544b6ea52a5621fb9d55f8b542d14d"); // configure the conversion $client->setOutputFormat("png"); // run the conversion and write the result to a file $client->convertStringToFile("Hello World!", "HelloWorld.png"); } catch(\Pdfcrowd\Error $why) { // report the error error_log("Pdfcrowd Error: {$why}\n"); // rethrow or handle the exception throw $why; } ?>
Sao chépVí dụ về sân chơi API
API có thể dễ dàng tích hợp vào môi trường của bạn. Bạn có thể yêu cầu Sân chơi API tương tác của chúng tôi tự động tạo mã tích hợp cho bạn
Tùy chỉnh chung
API cho phép bạn chuyển đổi trang web, tệp HTML cục bộ hoặc chuỗi chứa HTML. Kết quả của chuyển đổi có thể được lưu trữ vào tệp cục bộ, đối tượng luồng hoặc biến. Xem phần để biết thêm chi tiết
Cách tốt nhất để bắt đầu với API là chọn một trong các ví dụ và sau khi bạn làm cho nó hoạt động, bạn có thể tùy chỉnh thêm mã. Bạn có thể tìm thấy các tùy chỉnh phổ biến nhất trong bảng bên dưới
Kích thước hình ảnhĐặt kích thước hình ảnh với và. Định dạng hình ảnh Chỉ định một định dạng hình ảnh đầu ra khác với. Ẩn hoặc xóa phần tử Bạn có thể sử dụng các lớp sau trong mã HTML của mình để ẩn hoặc xóa phần tử khỏi đầu ra
- pdfcrowd-remove - đặt display:none!important trên phần tử
- pdfcrowd-hide - đặt visibility:hidden!important trên phần tử
HtmlToImageClient("demo", "ce544b6ea52a5621fb9d55f8b542d14d"); // configure the conversion $client->setOutputFormat("png"); // run the conversion and write the result to a file $client->convertFileToFile("/path/to/MyLayout.html", "MyLayout.png"); } catch(\Pdfcrowd\Error $why) { // report the error error_log("Pdfcrowd Error: {$why}\n"); // rethrow or handle the exception throw $why; } ?>1
Kết xuất mẫu
API cho phép kết xuất các mẫu HTML. Cú pháp mẫu dựa trên công cụ kết xuất mẫu Jinja
Các cấu trúc phổ biến nhất là
- Kết xuất dữ liệu. HtmlToImageClient("demo", "ce544b6ea52a5621fb9d55f8b542d14d"); // configure the conversion $client->setOutputFormat("png"); // run the conversion and write the result to a file $client->convertFileToFile("/path/to/MyLayout.html", "MyLayout.png"); } catch(\Pdfcrowd\Error $why) { // report the error error_log("Pdfcrowd Error: {$why}\n"); // rethrow or handle the exception throw $why; } ?>2
- cho vòng lặp. HtmlToImageClient("demo", "ce544b6ea52a5621fb9d55f8b542d14d"); // configure the conversion $client->setOutputFormat("png"); // run the conversion and write the result to a file $client->convertFileToFile("/path/to/MyLayout.html", "MyLayout.png"); } catch(\Pdfcrowd\Error $why) { // report the error error_log("Pdfcrowd Error: {$why}\n"); // rethrow or handle the exception throw $why; } ?>3
- câu lệnh nếu. HtmlToImageClient("demo", "ce544b6ea52a5621fb9d55f8b542d14d"); // configure the conversion $client->setOutputFormat("png"); // run the conversion and write the result to a file $client->convertFileToFile("/path/to/MyLayout.html", "MyLayout.png"); } catch(\Pdfcrowd\Error $why) { // report the error error_log("Pdfcrowd Error: {$why}\n"); // rethrow or handle the exception throw $why; } ?>4
- bộ lọc dữ liệu. HtmlToImageClient("demo", "ce544b6ea52a5621fb9d55f8b542d14d"); // configure the conversion $client->setOutputFormat("png"); // run the conversion and write the result to a file $client->convertFileToFile("/path/to/MyLayout.html", "MyLayout.png"); } catch(\Pdfcrowd\Error $why) { // report the error error_log("Pdfcrowd Error: {$why}\n"); // rethrow or handle the exception throw $why; } ?>5
Các định dạng dữ liệu đầu vào được hỗ trợ là JSON, XML, CSV và YAML. Dữ liệu có thể được tải lên từ một hoặc từ một
Bộ lọc mẫu được hỗ trợ. viết hoa, căn giữa, mặc định, thoát, đầu tiên, bắt buộc, định dạng, thụt lề, tham gia, cuối cùng, độ dài, danh sách, thấp hơn, thay thế, đảo ngược, an toàn, lát, sắp xếp, chuỗi, thẻ rút gọn, tiêu đề, cắt, cắt ngắn, duy nhất, phía trên,
Xem hiển thị mẫu
Xử lý lỗi
Bạn nên triển khai xử lý lỗi để phát hiện các lỗi mà API có thể trả về, hãy xem mã ví dụ bên dưới. Bạn có thể tìm thấy danh sách các mã trạng thái và mô tả của chúng tại đây