Quản lý phông chữ trong bản trình chiếu bằng Java
Tổng quan
Aspose.Slides cho phép bạn quản lý các thuộc tính phông chữ trong văn bản bản trình chiếu trực tiếp từ mã của mình. Bạn có thể truy cập văn bản trong các slide thông qua các hình dạng, khung văn bản, đoạn và phần, sau đó áp dụng định dạng cho văn bản đã chọn.
Bài viết này giải thích cách cấu hình các thuộc tính liên quan đến phông chữ cho văn bản hiện có trong một bản trình chiếu, bao gồm họ phông, kiểu đậm và nghiêng, căn chỉnh đoạn, và màu phông. Ngoài ra, nó cũng chỉ ra cách tạo hộp văn bản, thêm văn bản vào đó, và đặt các thuộc tính phông chữ như họ phông, đậm, nghiêng, gạch chân, kích thước phông và màu trước khi lưu kết quả dưới dạng tệp PPTX.
Quản lý các thuộc tính liên quan tới phông chữ
- Tạo một thể hiện của lớp Presentation.
- Lấy tham chiếu của một slide bằng cách sử dụng chỉ mục của nó.
- Truy cập các hình dạng Placeholder trong slide và ép kiểu chúng sang AutoShape.
- Lấy Paragraph từ TextFrame được cung cấp bởi AutoShape.
- Căn đều đoạn văn.
- Truy cập phần văn bản Portion của một Paragraph.
- Xác định phông chữ bằng cách sử dụng FontData và đặt Font cho Portion của văn bản tương ứng.
- Đặt phông chữ thành đậm.
- Đặt phông chữ thành nghiêng.
- Đặt màu phông chữ bằng cách sử dụng FillFormat được cung cấp bởi đối tượng Portion.
- Lưu bản trình chiếu đã chỉnh sửa thành tệp PPTX.
Triển khai các bước trên được đưa ra dưới đây. Nó nhận một bản trình chiếu không có định dạng và áp dụng các định dạng phông chữ cho một trong các slide. Các ảnh chụp màn hình sau đây cho thấy tệp đầu vào và cách các đoạn mã thay đổi nó. Mã thay đổi phông chữ, màu và kiểu phông.
![]() |
|---|
| Hình: Văn bản trong tệp đầu vào |
![]() |
|---|
| Hình: Văn bản tương tự với định dạng đã cập nhật |
// Tạo một đối tượng Presentation đại diện cho tệp PPTX
Presentation pres = new Presentation("FontProperties.pptx");
try {
// Truy cập một slide bằng vị trí của nó
ISlide slide = pres.getSlides().get_Item(0);
// Truy cập placeholder đầu tiên và thứ hai trong slide và ép kiểu thành AutoShape
ITextFrame tf1 = ((IAutoShape) slide.getShapes().get_Item(0)).getTextFrame();
ITextFrame tf2 = ((IAutoShape) slide.getShapes().get_Item(1)).getTextFrame();
// Truy cập Paragraph đầu tiên
IParagraph para1 = tf1.getParagraphs().get_Item(0);
IParagraph para2 = tf2.getParagraphs().get_Item(0);
// Căn đều đoạn văn
para2.getParagraphFormat().setAlignment(TextAlignment.JustifyLow);
// Truy cập phần đầu tiên
IPortion port1 = para1.getPortions().get_Item(0);
IPortion port2 = para2.getPortions().get_Item(0);
// Xác định phông chữ mới
FontData fd1 = new FontData("Elephant");
FontData fd2 = new FontData("Castellar");
// Gán phông chữ mới cho phần
port1.getPortionFormat().setLatinFont(fd1);
port2.getPortionFormat().setLatinFont(fd2);
// Đặt phông chữ thành Đậm
port1.getPortionFormat().setFontBold(NullableBool.True);
port2.getPortionFormat().setFontBold(NullableBool.True);
// Đặt phông chữ thành Nghiêng
port1.getPortionFormat().setFontItalic(NullableBool.True);
port2.getPortionFormat().setFontItalic(NullableBool.True);
// Đặt màu phông chữ
port1.getPortionFormat().getFillFormat().setFillType(FillType.Solid);
port1.getPortionFormat().getFillFormat().getSolidFillColor().setColor(Color.BLUE);
port2.getPortionFormat().getFillFormat().setFillType(FillType.Solid);
port2.getPortionFormat().getFillFormat().getSolidFillColor().setColor(Color.GREEN);
// Lưu PPTX vào đĩa
pres.save("WelcomeFont.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Đặt thuộc tính phông chữ cho văn bản
- Tạo một thể hiện của lớp Presentation.
- Lấy tham chiếu của một slide bằng cách sử dụng chỉ mục của nó.
- Thêm một AutoShape loại Rectangle vào slide.
- Xóa kiểu tô màu liên kết với AutoShape.
- Truy cập TextFrame của AutoShape.
- Thêm một số văn bản vào TextFrame.
- Truy cập đối tượng Portion liên kết với TextFrame.
- Xác định phông chữ sẽ được sử dụng cho Portion.
- Đặt các thuộc tính phông chữ khác như đậm, nghiêng, gạch chân, màu và kích thước bằng cách sử dụng các thuộc tính tương ứng được cung cấp bởi đối tượng Portion.
- Ghi bản trình chiếu đã chỉnh sửa dưới dạng tệp PPTX.
Triển khai các bước trên được đưa ra dưới đây.
![]() |
|---|
| Hình: Văn bản với một số thuộc tính phông chữ được đặt bởi Aspose.Slides for Java |
// Tạo một đối tượng Presentation đại diện cho tệp PPTX
Presentation pres = new Presentation();
try {
// Lấy slide đầu tiên
ISlide sld = pres.getSlides().get_Item(0);
// Thêm một AutoShape loại Rectangle
IAutoShape ashp = sld.getShapes().addAutoShape(ShapeType.Rectangle, 50, 50, 200, 50);
// Xóa bất kỳ kiểu tô nào liên kết với AutoShape
ashp.getFillFormat().setFillType(FillType.NoFill);
// Truy cập TextFrame liên kết với AutoShape
ITextFrame tf = ashp.getTextFrame();
tf.setText("Aspose TextBox");
// Truy cập Portion liên kết với TextFrame
IPortion port = tf.getParagraphs().get_Item(0).getPortions().get_Item(0);
// Đặt phông chữ cho Portion
port.getPortionFormat().setLatinFont(new FontData("Times New Roman"));
// Đặt thuộc tính Đậm cho phông chữ
port.getPortionFormat().setFontBold(NullableBool.True);
// Đặt thuộc tính Nghiêng cho phông chữ
port.getPortionFormat().setFontItalic(NullableBool.True);
// Đặt thuộc tính Gạch chân cho phông chữ
port.getPortionFormat().setFontUnderline(TextUnderlineType.Single);
// Đặt kích thước (độ cao) cho phông chữ
port.getPortionFormat().setFontHeight(25);
// Đặt màu cho phông chữ
port.getPortionFormat().getFillFormat().setFillType(FillType.Solid);
port.getPortionFormat().getFillFormat().getSolidFillColor().setColor(Color.BLUE);
// Lưu bản trình chiếu vào đĩa
pres.save("pptxFont.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}


