Hiển thị Bản trình chiếu với Phông chữ Dự phòng trong PHP
Contents
[
Hide
]
Tổng quan
Aspose.Slides cho phép bạn hiển thị các bài thuyết trình bằng cách sử dụng các quy tắc phông chữ dự phòng. Bài viết này hướng dẫn cách tạo bộ sưu tập quy tắc phông chữ dự phòng, chỉnh sửa các quy tắc bằng cách xóa hoặc thêm phông chữ dự phòng, và gán bộ sưu tập này cho phương thức FontsManager::setFontFallBackRulesCollection.
Khi bộ sưu tập quy tắc phông chữ dự phòng được gán cho FontsManager của bản trình chiếu, các quy tắc sẽ được áp dụng trong các thao tác như lưu, hiển thị và chuyển đổi bản trình chiếu. Ví dụ minh họa cách sử dụng các quy tắc đã cấu hình khi hiển thị ảnh thu nhỏ của slide và lưu nó dưới dạng ảnh PNG.
Hiển thị một Slide bằng Quy tắc Phông chữ Dự phòng
Ví dụ sau đây bao gồm các bước sau:
- Chúng tôi tạo bộ sưu tập quy tắc phông chữ dự phòng.
- Xóa một quy tắc phông chữ dự phòng và addFallBackFonts vào một quy tắc khác.
- Đặt bộ sưu tập quy tắc cho phương thức getFontsManager.getFontFallBackRulesCollection method.
- Với phương thức Presentation.save chúng ta có thể lưu bản trình chiếu ở cùng định dạng, hoặc lưu nó ở định dạng khác. Khi bộ sưu tập quy tắc phông chữ dự phòng được gán cho FontsManager, các quy tắc này sẽ được áp dụng trong mọi thao tác trên bản trình chiếu: lưu, hiển thị, chuyển đổi, v.v.
# Tạo một thể hiện mới của bộ sưu tập quy tắc
$rulesList = new FontFallBackRulesCollection();
# tạo một số quy tắc
$rulesList->add(new FontFallBackRule(0x400, 0x4ff, "Times New Roman"));
foreach($rulesList as $fallBackRule) {
# Cố gắng xóa phông chữ dự phòng "Tahoma" khỏi các quy tắc đã tải
$fallBackRule->remove("Tahoma");
# Và cập nhật các quy tắc cho phạm vi chỉ định
if (java_values($fallBackRule->getRangeEndIndex()) >= 0x4000 && java_values($fallBackRule->getRangeStartIndex()) < 0x5000) {
$fallBackRule->addFallBackFonts("Verdana");
}
}
# Ngoài ra chúng ta có thể xóa bất kỳ quy tắc nào hiện có khỏi danh sách
if (java_values($rulesList->size()) > 0) {
$rulesList->remove($rulesList->get_Item(0));
}
$pres = new Presentation("input.pptx");
try {
# Gán danh sách quy tắc đã chuẩn bị để sử dụng
$pres->getFontsManager()->setFontFallBackRulesCollection($rulesList);
# Hiển thị ảnh thu nhỏ bằng cách sử dụng bộ sưu tập quy tắc đã khởi tạo và lưu dưới dạng JPEG
$slideImage = $pres->getSlides()->get_Item(0)->getImage(1.0, 1.0);
# Lưu ảnh ra đĩa ở định dạng JPEG
try {
$slideImage->save("Slide_0.jpg", ImageFormat::Jpeg);
} finally {
if (!java_is_null($slideImage)) {
$slideImage->dispose();
}
}
} finally {
if (!java_is_null($pres)) {
$pres->dispose();
}
}
Đọc thêm về cách Chuyển đổi PPT và PPTX sang JPG trong PHP.