Vízjelek hozzáadása prezentációkhoz C++-ban
Bevezetés
A vízjel egy prezentációban egy szöveges vagy képes pecsét, amelyet egy dián vagy az összes prezentációs dián alkalmaznak. Általában a vízjelet arra használják, hogy jelezzék, hogy a prezentáció vázlat (pl. „Draft” vízjel), hogy bizalmas információkat tartalmaz (pl. „Confidential” vízjel), megadja, melyik céghez tartozik (pl. „Company Name” vízjel), az előadó azonosítására stb. A vízjel segít megelőzni a szerzői jogi jogsértéseket, mivel jelzi, hogy a prezentációt nem szabad másolni. A vízjelek a PowerPoint és az OpenOffice prezentációs formátumokban egyaránt használatosak. Az Aspose.Slides segítségével vízjelet adhat hozzá a PowerPoint PPT, PPTX és az OpenOffice ODP fájlformátumokhoz.
Az Aspose.Slides többféle módot kínál a vízjelek létrehozására PowerPoint vagy OpenOffice dokumentumokban, valamint a tervezésük és viselkedésük módosítására. A közös szempont, hogy szöveges vízjelek hozzáadásához használja az ITextFrame interfészt, képes vízjelekhez pedig a PictureFrame osztályt, vagy egy alakzat kitöltését képpel. A PictureFrame a IShape interfészt valósítja meg, így az alakzat objektum összes rugalmas beállítását használhatja. Mivel az ITextFrame nem alakzat és beállításai korlátozottak, egy IShape objektumba van csomagolva.
Két módja van a vízjel alkalmazásának: egyetlen diára vagy az összes diára. A Dia mester (Slide Master) használható a vízjel az összes dián való alkalmazásához – a vízjel a Dia mesterhez kerül hozzáadásra, ott teljesen megtervezésre, és minden diára alkalmazásra kerül anélkül, hogy befolyásolná a vízjel egyedi diákon való módosításának lehetőségét.
A vízjelet általában nem lehet szerkeszteni más felhasználók számára. A vízjel (pontosabban a vízjel szülő alakzata) szerkesztésének megakadályozásához az Aspose.Slides alakzat zárolási funkciót biztosít. Egy adott alakzat lezárható egy normál dián vagy a Dia mesteren. Ha a vízjel alakzat a Dia mesteren zárolva van, minden prezentációs dián le lesz zárolva.
Beállíthat nevet a vízjelnek, hogy a jövőben, ha törölni szeretné, megtalálja a diák alakzatai között név alapján.
A vízjelet bármilyen módon megtervezheti; azonban általában közös jellemzőik vannak, mint a középre igazítás, forgatás, előre helyezés stb. Az alábbi példákban bemutatjuk, hogyan használhatók ezek.
Szöveges vízjel
Szöveges vízjel hozzáadása egy diára
A szöveges vízjel hozzáadásához PPT, PPTX vagy ODP formátumban először egy alakzatot kell hozzáadni a diához, majd egy szövegkeretet ehhez az alakzathoz. A szövegkeret a ITextFrame interfész által képviselt. Ez a típus nem öröklődik a IShape‑től, amely széles körű tulajdonságokkal rendelkezik a vízjel rugalmas pozicionálásához. Ezért a ITextFrame objektum egy IAutoShape objektumba van csomagolva. A vízjel szövegének hozzáadásához használja a AddTextFrame metódust az alábbiak szerint.
auto watermarkText = u"CONFIDENTIAL";
auto presentation = MakeObject<Presentation>();
auto slide = presentation->get_Slide(0);
auto watermarkShape = slide->get_Shapes()->AddAutoShape(ShapeType::Rectangle, 100, 100, 400, 40);
auto watermarkFrame = watermarkShape->AddTextFrame(watermarkText);
presentation->Dispose();
Lásd még
Szöveges vízjel hozzáadása egy prezentációhoz
Ha egy szöveges vízjelet szeretne hozzáadni az egész prezentációhoz (azaz egyszerre az összes diához), adja hozzá a MasterSlide-hez. A többi logika megegyezik az egyedi diára való vízjel hozzáadásával – hozzon létre egy IAutoShape objektumot, majd adja hozzá a vízjelet a AddTextFrame metódussal.
auto watermarkText = u"CONFIDENTIAL";
auto presentation = MakeObject<Presentation>();
auto masterSlide = presentation->get_Master(0);
auto watermarkShape = masterSlide->get_Shapes()->AddAutoShape(ShapeType::Rectangle, 100, 100, 400, 40);
auto watermarkFrame = watermarkShape->AddTextFrame(watermarkText);
presentation->Dispose();
Lásd még
A vízjel alakzat átlátszóságának beállítása
Alapértelmezés szerint a téglalap alakzat kitöltési és vonalszínekhez van stilizálva. A következő kódsorok teszik az alakzatot átlátszóvá.
watermarkShape->get_FillFormat()->set_FillType(FillType::NoFill);
watermarkShape->get_LineFormat()->get_FillFormat()->set_FillType(FillType::NoFill);
A szöveges vízjel betűtípusának beállítása
Az alábbiak szerint módosíthatja a szöveges vízjel betűtípusát.
auto textFormat = watermarkFrame->get_Paragraph(0)->get_ParagraphFormat()->get_DefaultPortionFormat();
textFormat->set_LatinFont(MakeObject<FontData>(u"Arial"));
textFormat->set_FontHeight(50);
A vízjel szövegszínének beállítása
A vízjel szövegszínének beállításához használja ezt a kódot:
auto alpha = 150, red = 200, green = 200, blue = 200;
auto fillFormat = watermarkFrame->get_Paragraph(0)->get_ParagraphFormat()->get_DefaultPortionFormat()->get_FillFormat();
fillFormat->set_FillType(FillType::Solid);
fillFormat->get_SolidFillColor()->set_Color(Color::FromArgb(alpha, red, green, blue));
Szöveges vízjel középre helyezése
Lehetséges a vízjelet középre helyezni egy dián, ehhez tegye a következőt:
auto slideSize = presentation->get_SlideSize()->get_Size();
auto watermarkWidth = 400;
auto watermarkHeight = 40;
auto watermarkX = (slideSize.get_Width() - watermarkWidth) / 2;
auto watermarkY = (slideSize.get_Height() - watermarkHeight) / 2;
auto watermarkShape = slide->get_Shapes()->AddAutoShape(
ShapeType::Rectangle, watermarkX, watermarkY, watermarkWidth, watermarkHeight);
auto watermarkFrame = watermarkShape->AddTextFrame(watermarkText);
Az alábbi kép mutatja a végső eredményt.

Képes vízjel
Képes vízjel hozzáadása egy prezentációhoz
Képes vízjel hozzáadásához egy prezentációs diára a következőket teheti:
auto imageStream = File::ReadAllBytes(u"watermark.png");
auto image = presentation->get_Images()->AddImage(imageStream);
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);
Vízjel szerkesztésének letiltása
Ha szükséges megakadályozni a vízjel szerkesztését, használja a IAutoShape::get_AutoShapeLock metódust az alakzaton. Ezzel a tulajdonsággal megvédheti az alakzatot a kiválasztástól, átméretezéstől, áthelyezéstől, más elemekkel való csoportosítástól, a szöveg szerkesztésétől és még sok mást:
// A vízjel alakzatot a módosítástól zárolja
watermarkShape->get_AutoShapeLock()->set_SelectLocked(true);
watermarkShape->get_AutoShapeLock()->SizeLocked(true);
watermarkShape->get_AutoShapeLock()->TextLocked(true);
watermarkShape->get_AutoShapeLock()->PositionLocked(true);
watermarkShape->get_AutoShapeLock()->GroupingLocked(true);
Vízjel előre hozatala
Az Aspose.Slides-ben az alakzatok Z-sorrendje a IShapeCollection::Reorder metódussal állítható be. Ehhez hívja meg ezt a metódust a prezentáció diáinak listájáról, és adja át az alakzat hivatkozását és a kívánt sorrendszámot. Így egy alakzatot előre hozhat vagy hátra küldhet a dián. Ez a funkció különösen hasznos, ha a vízjelet a prezentáció elejére szeretné helyezni:
auto shapeCount = slide->get_Shapes()->get_Count();
slide->get_Shapes()->Reorder(shapeCount - 1, watermarkShape);
Vízjel forgatásának beállítása
Az alábbi kódrészlet mutatja, hogyan állítható be a vízjel forgatása, hogy átlósan helyezkedjen el a dián:
auto diagonalAngle = Math::Atan((slideSize.get_Height() / slideSize.get_Width())) * 180 / Math::PI;
watermarkShape->set_Rotation((float)diagonalAngle);
Vízjel nevének beállítása
Az Aspose.Slides lehetővé teszi egy alakzat nevének beállítását. A forma nevét felhasználva a jövőben elérheti, módosíthatja vagy törölheti azt. A vízjel alakzat nevének beállításához rendelje a IAutoShape::set_Name metódusnak:
watermarkShape->set_Name(u"watermark");
Vízjel eltávolítása
A vízjel alakzat eltávolításához használja a IAutoShape::get_Name metódust a diák alakzatai között való megtalálásához. Ezután adja át a vízjel alakzatot a IShapeCollection::Remove metódusnak:
auto slideShapes = slide->get_Shapes()->ToArray();
for(auto shape : slideShapes)
{
if (String::Compare(shape->get_Name(), u"watermark", StringComparison::Ordinal) == 0)
{
slide->get_Shapes()->Remove(watermarkShape);
}
}
Élő példa
Érdemes kipróbálni az Aspose.Slides free Vízjel hozzáadása és Vízjel eltávolítása online eszközöket.

GYIK
Mi az a vízjel és miért kellene használni?
A vízjel egy szöveges vagy képes átfedés, amely a diákon kerül alkalmazásra, és segít megvédeni a szellemi tulajdont, erősíti a márka felismerhetőségét vagy megakadályozza a prezentációk jogosulatlan használatát.
Hozzáadhatok vízjelet az összes diához egy prezentációban?
Igen, az Aspose.Slides programozottan képes vízjelet hozzáadni minden diához egy prezentációban. Végigiterálhat az összes dián, és egyenként alkalmazhatja a vízjel beállításait.
Hogyan állíthatom be a vízjel átlátszóságát?
Az átlátszóságot a forma kitöltési beállításainak (FillFormat) módosításával állíthatja be. Ez biztosítja, hogy a vízjel finom legyen, és ne vonja el a figyelmet a dia tartalmáról.
Milyen képformátumok támogatottak a vízjelekhez?
Az Aspose.Slides több képformátumot támogat, például PNG, JPEG, GIF, BMP, SVG és még sok más.
Testreszabhatom a szöveges vízjel betűtípusát és stílusát?
Igen, bármilyen betűtípust, méretet és stílust választhat, hogy illeszkedjen a prezentációja tervezéséhez és a márka konzisztenciáját megőrizze.
Hogyan változtathatom meg a vízjel pozícióját vagy tájolását?
Programozottan a forma koordinátáit, méretét és forgatási tulajdonságait módosítva állíthatja be a vízjel pozícióját és tájolását.