เพิ่มลายน้ำให้กับสไลด์ PowerPoint โดยใช้ C++

ลายน้ำจะระบุสถานะของเอกสารด้วยข้อความต่างๆ เช่น ความลับ ฉบับร่าง เป็นต้น และทำให้ยากต่อการคัดลอกเอกสารต้นฉบับ ลายน้ำยังใช้เพื่อระบุความเป็นเจ้าของเอกสารด้วยการแสดงชื่อบริษัทหรือโลโก้ ลายน้ำในไฟล์ PowerPoint สามารถเป็นได้ทั้งรูปภาพหรือข้อความ ในบทความนี้ คุณจะได้เรียนรู้วิธีเพิ่มลายน้ำข้อความและรูปภาพลงในสไลด์ PowerPoint โดยใช้ C++

C++ API สำหรับเพิ่มลายน้ำให้กับสไลด์ PowerPoint

เราจะใช้ API Aposose.Slides สำหรับ C++ เพื่อเพิ่มลายน้ำให้กับสไลด์ PowerPoint เป็น API ที่แข็งแกร่งและมีฟีเจอร์มากมายที่สนับสนุนการสร้าง อ่าน และอัปเดตไฟล์ PowerPoint โดยไม่ต้องใช้ซอฟต์แวร์เพิ่มเติม คุณสามารถติดตั้ง API ผ่าน NuGet หรือดาวน์โหลดโดยตรงจากส่วน ดาวน์โหลด

PM> Install-Package Aspose.Slides.Cpp

เพิ่มลายน้ำข้อความให้กับสไลด์ PowerPoint โดยใช้ C++

คุณสามารถเพิ่มลายน้ำข้อความลงในสไลด์ PowerPoint ได้โดยทำตามขั้นตอนด้านล่าง

โค้ดตัวอย่างต่อไปนี้แสดงวิธีเพิ่มลายน้ำข้อความลงในสไลด์ PowerPoint โดยใช้ C++

// เส้นทางไฟล์
const String sourceFilePath = u"SourceDirectory\\Slides\\Presentation2.pptx";
const String outputFilePath = u"OutputDirectory\\AddTextWatermark_out.pptx";

// โหลดไฟล์นำเสนอ
auto presentation = System::MakeObject<Presentation>(sourceFilePath);

// เข้าถึงสไลด์ต้นแบบ
auto master = presentation->get_Masters()->idx_get(0);

System::Drawing::PointF center(presentation->get_SlideSize()->get_Size().get_Width() / 2, presentation->get_SlideSize()->get_Size().get_Height() / 2);

float width = 300.0f;
float height = 300.0f;

float x = center.get_X() - width / 2;
float y = center.get_Y() - height / 2;

// เพิ่มรูปร่าง
auto watermarkShape = master->get_Shapes()->AddAutoShape(ShapeType::Rectangle, x, y, width, height);

// กำหนดประเภทการเติม
watermarkShape->get_FillFormat()->set_FillType(FillType::NoFill);
watermarkShape->get_LineFormat()->get_FillFormat()->set_FillType(FillType::NoFill);

// กำหนดมุมการหมุน
watermarkShape->set_Rotation(-45);

// ตั้งค่าข้อความ
auto watermarkTextFrame = watermarkShape->AddTextFrame(u"Watermark");

// ตั้งค่าแบบอักษรและสี
auto watermarkPortion = watermarkTextFrame->get_Paragraphs()->idx_get(0)->get_Portions()->idx_get(0);
watermarkPortion->get_PortionFormat()->set_FontHeight(52.0f);

int32_t alpha = 150, red = 200, green = 200, blue = 200;
watermarkPortion->get_PortionFormat()->get_FillFormat()->set_FillType(FillType::Solid);
watermarkPortion->get_PortionFormat()->get_FillFormat()->get_SolidFillColor()->set_Color(System::Drawing::Color::FromArgb(alpha, red, green, blue));

// ล็อครูปร่างไม่ให้แก้ไข
watermarkShape->get_AutoShapeLock()->set_SelectLocked(true);
watermarkShape->get_AutoShapeLock()->set_SizeLocked(true);
watermarkShape->get_AutoShapeLock()->set_TextLocked(true);
watermarkShape->get_AutoShapeLock()->set_PositionLocked(true);
watermarkShape->get_AutoShapeLock()->set_GroupingLocked(true);

// บันทึกงานนำเสนอ
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
อิมเมจของเอาต์พุตที่สร้างโดยโค้ดตัวอย่าง

อิมเมจของเอาต์พุตที่สร้างโดยโค้ดตัวอย่าง

เพิ่มลายน้ำรูปภาพให้กับสไลด์ PowerPoint โดยใช้ C++

ในการเพิ่มลายน้ำรูปภาพลงในสไลด์ PowerPoint โปรดทำตามขั้นตอนด้านล่าง

โค้ดตัวอย่างต่อไปนี้แสดงวิธีการเพิ่มลายน้ำรูปภาพให้กับสไลด์ PowerPoint โดยใช้ C++

// เส้นทางไฟล์
const String sourceFilePath = u"SourceDirectory\\Slides\\Presentation2.pptx";
const String outputFilePath = u"OutputDirectory\\AddImageWatermark_out.pptx";

// โหลดไฟล์นำเสนอ
auto presentation = System::MakeObject<Presentation>(sourceFilePath);

// เข้าถึงสไลด์แมส
auto master = presentation->get_Masters()->idx_get(0);

System::Drawing::PointF center(presentation->get_SlideSize()->get_Size().get_Width() / 2, presentation->get_SlideSize()->get_Size().get_Height() / 2);

float width = 300.0f;
float height = 300.0f;

float x = center.get_X() - width / 2;
float y = center.get_Y() - height / 2;

// เพิ่มรูปร่าง
auto watermarkShape = master->get_Shapes()->AddAutoShape(ShapeType::Rectangle, x, y, width, height);

auto image = presentation->get_Images()->AddImage(File::ReadAllBytes(u"SourceDirectory\\Images\\AsposeLogo.png"));

// กำหนดประเภทการเติม
watermarkShape->get_FillFormat()->set_FillType(FillType::Picture);
watermarkShape->get_FillFormat()->get_PictureFillFormat()->get_Picture()->set_Image(image);
watermarkShape->get_FillFormat()->get_PictureFillFormat()->set_PictureFillMode(PictureFillMode::Stretch);

// ล็อครูปร่างไม่ให้แก้ไข
watermarkShape->get_AutoShapeLock()->set_SelectLocked(true);
watermarkShape->get_AutoShapeLock()->set_SizeLocked(true);
watermarkShape->get_AutoShapeLock()->set_TextLocked(true);
watermarkShape->get_AutoShapeLock()->set_PositionLocked(true);
watermarkShape->get_AutoShapeLock()->set_GroupingLocked(true);

// บันทึกงานนำเสนอ
presentation->Save(outputFilePath, Aspose::Slides::Export::SaveFormat::Pptx);
อิมเมจของเอาต์พุตที่สร้างโดยโค้ดตัวอย่าง

อิมเมจของเอาต์พุตที่สร้างโดยโค้ดตัวอย่าง

รับใบอนุญาตฟรี

หากต้องการลองใช้ API โดยไม่มีข้อจำกัดในการประเมิน คุณสามารถขอ ใบอนุญาตชั่วคราวฟรี

บทสรุป

ในบทความนี้ คุณได้เรียนรู้วิธีเพิ่มลายน้ำให้กับสไลด์ PowerPoint โดยใช้ C++ ตัวอย่างโค้ดที่ใช้ร่วมกันแสดงวิธีเพิ่มลายน้ำรูปภาพและข้อความลงในสไลด์ PowerPoint โดยใช้ Aspose.Slides ไปยัง C++ API เป็น API ที่มีประสิทธิภาพซึ่งมีคุณสมบัติเพิ่มเติมมากมายสำหรับการทำงานกับไฟล์ PowerPoint PPTX/PPT คุณสามารถสำรวจ API โดยละเอียดได้โดยไปที่ เอกสารอย่างเป็นทางการ ในกรณีที่มีข้อสงสัย โปรดติดต่อเราได้ที่ ฟอรัมสนับสนุนฟรี

ดูสิ่งนี้ด้วย

ข้อมูล: คุณอาจต้องการตรวจสอบเครื่องมือออนไลน์ Aspose.Slides เพิ่มลายน้ำใน PowerPoint และ ลบลายน้ำออกจาก PowerPoint ฟรี