จัดการพื้นหลังงานนำเสนอใน JavaScript
บทนำ
สีทึบ, ไล่สี, และรูปภาพมักใช้เป็นพื้นหลังของสไลด์ คุณสามารถตั้งค่าพื้นหลังสำหรับ สไลด์ปกติ (สไลด์เดี่ยว) หรือ สไลด์มาสเตอร์ (ใช้กับหลายสไลด์พร้อมกัน)

ตั้งค่าสีทึบเป็นพื้นหลังสำหรับสไลด์ปกติ
Aspose.Slides ให้คุณตั้งค่าสีทึบเป็นพื้นหลังสำหรับสไลด์เฉพาะในงานนำเสนอ — แม้ว่างานนำเสนอจะใช้สไลด์มาสเตอร์ การเปลี่ยนแปลงจะมีผลเฉพาะกับสไลด์ที่เลือกเท่านั้น
- สร้างอินสแตนซ์ของคลาส Presentation .
- ตั้งค่า BackgroundType ของสไลด์เป็น
OwnBackground. - ตั้งค่า FillType ของพื้นหลังสไลด์เป็น
Solid. - ใช้เมธอด getSolidFillColor ของ FillFormat เพื่อระบุสีพื้นหลังทึบ
- บันทึกงานนำเสนอที่แก้ไข
ตัวอย่าง JavaScript ต่อไปนี้แสดงวิธีตั้งค่าสีทึบสีฟ้าเป็นพื้นหลังสำหรับสไลด์ปกติ:
// สร้างอินสแตนซ์ของคลาส Presentation.
let presentation = new aspose.slides.Presentation();
try {
let slide = presentation.getSlides().get_Item(0);
// ตั้งค่าสีพื้นหลังของสไลด์เป็นสีฟ้า.
slide.getBackground().setType(java.newByte(aspose.slides.BackgroundType.OwnBackground));
slide.getBackground().getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Solid));
slide.getBackground().getFillFormat().getSolidFillColor().setColor(java.getStaticFieldValue("java.awt.Color", "BLUE"));
// บันทึกงานนำเสนอลงดิสก์.
presentation.save("SolidColorBackground.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
presentation.dispose();
}
ตั้งค่าสีทึบเป็นพื้นหลังสำหรับสไลด์มาสเตอร์
Aspose.Slides ให้คุณตั้งค่าสีทึบเป็นพื้นหลังสำหรับสไลด์มาสเตอร์ในงานนำเสนอ สไลด์มาสเตอร์ทำหน้าที่เป็นเทมเพลตที่ควบคุมการจัดรูปแบบของทุกสไลด์ ดังนั้นเมื่อคุณเลือกสีทึบเป็นพื้นหลังของสไลด์มาสเตอร์ จะมีผลกับทุกสไลด์
- สร้างอินสแตนซ์ของคลาส Presentation .
- ตั้งค่า BackgroundType ของสไลด์มาสเตอร์ (ผ่าน
getMasters) เป็นOwnBackground. - ตั้งค่า FillType ของพื้นหลังสไลด์มาสเตอร์เป็น
Solid. - ใช้เมธอด getSolidFillColor เพื่อระบุสีพื้นหลังทึบ
- บันทึกงานนำเสนอที่แก้ไข
ตัวอย่าง JavaScript ต่อไปนี้แสดงวิธีตั้งค่าสีทึบ (สีเขียว) เป็นพื้นหลังสำหรับสไลด์มาสเตอร์:
// สร้างอินสแตนซ์ของคลาส Presentation.
let presentation = new aspose.slides.Presentation();
try {
let masterSlide = presentation.getMasters().get_Item(0);
// ตั้งค่าสีพื้นหลังของสไลด์มาสเตอร์เป็นสีเขียวป่า.
masterSlide.getBackground().setType(java.newByte(aspose.slides.BackgroundType.OwnBackground));
masterSlide.getBackground().getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Solid));
masterSlide.getBackground().getFillFormat().getSolidFillColor().setColor(java.getStaticFieldValue("java.awt.Color", "GREEN"));
// บันทึกงานนำเสนอลงดิสก์.
presentation.save("MasterSlideBackground.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
presentation.dispose();
}
ตั้งค่าพื้นหลังไล่สีสำหรับสไลด์
ไล่สีเป็นเอฟเฟกต์กราฟิกที่สร้างจากการเปลี่ยนสีอย่างค่อยเป็นค่อยไป เมื่อใช้เป็นพื้นหลังของสไลด์ ไล่สีสามารถทำให้การนำเสนอดูศิลป์และเป็นมืออาชีพมากขึ้น Aspose.Slides ให้คุณตั้งค่าสีไล่สีเป็นพื้นหลังของสไลด์
- สร้างอินสแตนซ์ของคลาส Presentation .
- ตั้งค่า BackgroundType ของสไลด์เป็น
OwnBackground. - ตั้งค่า FillType ของพื้นหลังสไลด์เป็น
Gradient. - ใช้เมธอด getGradientFormat ของ FillFormat เพื่อกำหนดการตั้งค่าไล่สีที่คุณต้องการ
- บันทึกงานนำเสนอที่แก้ไข
ตัวอย่าง JavaScript ต่อไปนี้แสดงวิธีตั้งค่าสีไล่สีเป็นพื้นหลังสำหรับสไลด์:
// สร้างอินสแตนซ์ของคลาส Presentation.
let presentation = new aspose.slides.Presentation();
try {
let slide = presentation.getSlides().get_Item(0);
// ใช้เอฟเฟกต์ไล่สีกับพื้นหลัง.
slide.getBackground().setType(java.newByte(aspose.slides.BackgroundType.OwnBackground));
slide.getBackground().getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Gradient));
slide.getBackground().getFillFormat().getGradientFormat().setTileFlip(aspose.slides.TileFlip.FlipBoth);
// บันทึกงานนำเสนอลงดิสก์.
presentation.save("GradientBackground.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
presentation.dispose();
}
ตั้งค่าภาพเป็นพื้นหลังสไลด์
นอกจากการเติมสีทึบและไล่สีแล้ว Aspose.Slides ยังอนุญาตให้คุณใช้รูปภาพเป็นพื้นหลังของสไลด์
- สร้างอินสแตนซ์ของคลาส Presentation .
- ตั้งค่า BackgroundType ของสไลด์เป็น
OwnBackground. - ตั้งค่า FillType ของพื้นหลังสไลด์เป็น
Picture. - โหลดรูปภาพที่คุณต้องการใช้เป็นพื้นหลังสไลด์
- เพิ่มรูปภาพลงในคอลเลกชันรูปภาพของงานนำเสนอ
- ใช้เมธอด getPictureFillFormat ของ FillFormat เพื่อกำหนดรูปภาพเป็นพื้นหลัง
- บันทึกงานนำเสนอที่แก้ไข
ตัวอย่าง JavaScript ต่อไปนี้แสดงวิธีตั้งค่ารูปภาพเป็นพื้นหลังสำหรับสไลด์:
// สร้างอินสแตนซ์ของคลาส Presentation.
let presentation = new aspose.slides.Presentation();
try {
let slide = presentation.getSlides().get_Item(0);
// ตั้งค่าคุณสมบัติของรูปภาพพื้นหลัง.
slide.getBackground().setType(java.newByte(aspose.slides.BackgroundType.OwnBackground));
slide.getBackground().getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Picture));
slide.getBackground().getFillFormat().getPictureFillFormat().setPictureFillMode(aspose.slides.PictureFillMode.Stretch);
// โหลดรูปภาพ.
let image = aspose.slides.Images.fromFile("Tulips.jpg");
// เพิ่มรูปภาพลงในคอลเลกชันรูปภาพของงานนำเสนอ.
let ppImage = presentation.getImages().addImage(image);
image.dispose();
slide.getBackground().getFillFormat().getPictureFillFormat().getPicture().setImage(ppImage);
// บันทึกงานนำเสนอลงดิสก์.
presentation.save("ImageAsBackground.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
presentation.dispose();
}
let presentation = new aspose.slides.Presentation();
try {
let firstSlide = presentation.getSlides().get_Item(0);
let background = firstSlide.getBackground();
background.setType(java.newByte(aspose.slides.BackgroundType.OwnBackground));
background.getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Picture));
let newImage = aspose.slides.Images.fromFile("image.png");
let ppImage = presentation.getImages().addImage(newImage);
newImage.dispose();
// ตั้งค่ารูปภาพที่ใช้สำหรับเติมพื้นหลัง.
let backPictureFillFormat = background.getFillFormat().getPictureFillFormat();
backPictureFillFormat.getPicture().setImage(ppImage);
// ตั้งค่าโหมดการเติมรูปเป็นแบบต่อภาพ (Tile) และปรับคุณสมบัติการต่อ.
backPictureFillFormat.setPictureFillMode(aspose.slides.PictureFillMode.Tile);
backPictureFillFormat.setTileOffsetX(15.0);
backPictureFillFormat.setTileOffsetY(15.0);
backPictureFillFormat.setTileScaleX(46.0);
backPictureFillFormat.setTileScaleY(87.0);
backPictureFillFormat.setTileAlignment(java.newByte(aspose.slides.RectangleAlignment.Center));
backPictureFillFormat.setTileFlip(aspose.slides.TileFlip.FlipY);
presentation.save("TileBackground.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
presentation.dispose();
}
เปลี่ยนความโปร่งแสงของรูปภาพพื้นหลัง
คุณอาจต้องการปรับความโปร่งแสงของรูปภาพพื้นหลังของสไลด์เพื่อให้เนื้อหาของสไลด์โดดเด่นขึ้น ตัวอย่าง JavaScript ต่อไปนี้แสดงวิธีเปลี่ยนความโปร่งแสงของรูปภาพพื้นหลังสไลด์:
var transparencyValue = 30; // ตัวอย่างเช่น.
// รับคอลเลกชันของการแปลงรูปภาพ.
var imageTransform = slide.getBackground().getFillFormat().getPictureFillFormat().getPicture().getImageTransform();
// ค้นหาเอฟเฟกต์ความโปร่งใสแบบเปอร์เซ็นต์คงที่ที่มีอยู่.
var transparencyOperation = null;
for (let i = 0; i < imageTransform.size(); i++) {
let operation = imageTransform.get_Item(i);
if (java.instanceOf(operation, "com.aspose.slides.AlphaModulateFixed")) {
transparencyOperation = operation;
break;
}
}
// ตั้งค่าค่าความโปร่งใสใหม่.
if (transparencyOperation == null) {
imageTransform.addAlphaModulateFixedEffect(100 - transparencyValue);
} else {
transparencyOperation.setAmount(100 - transparencyValue);
}
รับค่าพื้นหลังของสไลด์
Aspose.Slides มีคลาส BackgroundEffectiveData สำหรับดึงค่าพื้นหลังที่มีผลของสไลด์ คลาสนี้เปิดเผย FillFormat และ EffectFormat ที่มีผล
โดยใช้เมธอด getBackground ของคลาส BaseSlide คุณสามารถรับพื้นหลังที่มีผลของสไลด์ได้
ตัวอย่าง JavaScript ต่อไปนี้แสดงวิธีรับค่าพื้นหลังที่มีผลของสไลด์:
// สร้างอินสแตนซ์ของคลาส Presentation.
let presentation = new aspose.slides.Presentation("Sample.pptx");
try {
let slide = presentation.getSlides().get_Item(0);
// ดึงพื้นหลังที่มีผลโดยคำนึงถึงมาสเตอร์, เลย์เอาต์ และธีม.
let effBackground = slide.getBackground().getEffective();
if (effBackground.getFillFormat().getFillType() == aspose.slides.FillType.Solid)
console.log("Fill color:", effBackground.getFillFormat().getSolidFillColor().toString());
else
console.log("Fill type:", effBackground.getFillFormat().getFillType());
} finally {
presentation.dispose();
}
FAQ
ฉันสามารถรีเซ็ตพื้นหลังที่กำหนดเองและกู้คืนพื้นหลังของธีม/เลย์เอาต์ได้หรือไม่?
ใช่. ลบการเติมสีที่กำหนดเองของสไลด์ แล้วพื้นหลังจะถูกสืบทอดใหม่จากสไลด์ layout/master ที่สอดคล้อง (เช่น theme background).
เกิดอะไรขึ้นกับพื้นหลังหากฉันเปลี่ยนธีมของงานนำเสนอในภายหลัง?
หากสไลด์มีการเติมสีของตนเอง จะคงไว้โดยไม่เปลี่ยนแปลง หากพื้นหลังถูกสืบทอดจาก layout/master จะอัปเดตให้ตรงกับ new theme.