Rajzolási segédvonalak kezelése prezentációkban Java nyelven
Áttekintés
A rajzolási segédvonalak állítható vízszintes és függőleges vonalak, amelyek segítik a felhasználókat a formák következetes igazításában a PowerPoint‑prezentáció szerkesztése közben. Különösen hasznosak, ha egy alkalmazás generál egy prezentációt, amelyet később kézzel finomítanak: az alkalmazás elmentheti ugyanazokat az igazítási segédeszközöket, amelyeket a szerzőknek követniük kell a tartalom hozzáadásakor vagy mozgatásakor.
A rajzolási segédvonalak szerkesztési segédeszközök, nem dia tartalom. Nem jelennek meg diavetítésben vagy renderelt kimenetben. Az Aspose.Slides for Java ezeket a IDrawingGuidesCollection interfészen keresztül teszi elérhetővé. Egy segédvonalat a IDrawingGuide képviseli, amelynek van orientációja, pozíciója és színe.
A pozíciót pontokban mérik a megfelelő dia vagy minta bal felső sarkától. Egy függőleges segédvonal vízszintes koordinátát használ, általában 0 és a dia szélessége között. Egy vízszintes segédvonal függőleges koordinátát használ, általában 0 és a dia magassága között.
Vonalak hozzáadása a dia nézethez
A normál diák szerkesztése közben megjelenő segédvonalak kezeléséhez használja az ICommonSlideViewProperties.getDrawingGuides metódust. Hívja meg a IDrawingGuidesCollection.add metódust egy Orientation értékkel és egy pontban megadott pozícióval.
A következő példa egy függőleges segédvonalat ad hozzá a dia középpontjának jobb oldalához, és egy vízszintes segédvonalat alá:
import com.aspose.slides.*;
import java.awt.geom.Dimension2D;
Presentation presentation = new Presentation();
try {
Dimension2D slideSize = presentation.getSlideSize().getSize();
IDrawingGuidesCollection guides = presentation.getViewProperties().getSlideViewProperties().getDrawingGuides();
guides.add(Orientation.Vertical, (float) (slideSize.getWidth() / 2 + 12.5));
guides.add(Orientation.Horizontal, (float) (slideSize.getHeight() / 2 + 12.5));
presentation.save("drawing-guides.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Segédvonalak elérése
Az IDrawingGuidesCollection.getCount és az IDrawingGuidesCollection.get_Item metódusok hozzáférést biztosítanak a meglévő segédvonalakhoz. Az IDrawingGuide.getOrientation , az IDrawingGuide.getPosition és az IDrawingGuide.getColor metódusok értékeket adnak vissza, amelyeket a megfelelő setter metódusokkal is módosíthat.
A következő példa beolvassa a fent létrehozott prezentáció dia‑nézetének segédvonalait:
import com.aspose.slides.*;
Presentation presentation = new Presentation("drawing-guides.pptx");
try {
IDrawingGuidesCollection guides = presentation.getViewProperties().getSlideViewProperties().getDrawingGuides();
for (int index = 0; index < guides.getCount(); index++) {
IDrawingGuide guide = guides.get_Item(index);
System.out.println("Guide " + index + ": orientation = " + guide.getOrientation() + ", position = " + guide.getPosition() + ", color = " + guide.getColor());
}
} finally {
presentation.dispose();
}
Vonalak hozzáadása a minta- és elrendezési diákhoz
Egy dia minta és minden elrendezési diája saját rajzolási segédvonal‑gyűjteménnyel rendelkezhet. Használja az IMasterSlide.getDrawingGuides metódust a minta diához, és az ILayoutSlide.getDrawingGuides metódust az elrendezési diához.
A következő példa egy függőleges segédvonalat ad az első minta diához és egy vízszintes segédvonalat az első elrendezési diához:
import com.aspose.slides.*;
import java.awt.geom.Dimension2D;
Presentation presentation = new Presentation();
try {
Dimension2D slideSize = presentation.getSlideSize().getSize();
IDrawingGuidesCollection masterGuides = presentation.getMasters().get_Item(0).getDrawingGuides();
IDrawingGuidesCollection layoutGuides = presentation.getLayoutSlides().get_Item(0).getDrawingGuides();
masterGuides.add(Orientation.Vertical, (float) (slideSize.getWidth() / 2 - 20));
layoutGuides.add(Orientation.Horizontal, (float) (slideSize.getHeight() / 2 + 20));
presentation.save("master-layout-drawing-guides.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Vonalak hozzáadása a jegyzet- és a szórólap‑mintákhoz
A jegyzet‑minta és a szórólap‑minta is támogatja a rajzolási segédvonalakat. Használja az IMasterNotesSlide.getDrawingGuides és az IMasterHandoutSlide.getDrawingGuides metódusokat a gyűjteményeik eléréséhez. Ha a prezentáció nem tartalmaz egyet sem ezek közül, a IMasterNotesSlideManager.setDefaultMasterNotesSlide vagy a IMasterHandoutSlideManager.setDefaultMasterHandoutSlide létrehozza az alapértelmezett mintát és visszaadja azt.
A következő példa egy vízszintes segédvonalat ad egy jegyzet‑mintához és egy függőleges segédvonalat egy szórólap‑mintához:
import com.aspose.slides.*;
import java.awt.geom.Dimension2D;
Presentation presentation = new Presentation();
try {
Dimension2D notesSize = presentation.getNotesSize().getSize();
IMasterNotesSlide notesMaster = presentation.getMasterNotesSlideManager().setDefaultMasterNotesSlide();
IMasterHandoutSlide handoutMaster = presentation.getMasterHandoutSlideManager().setDefaultMasterHandoutSlide();
notesMaster.getDrawingGuides().add(Orientation.Horizontal, (float) (notesSize.getHeight() / 2 + 50));
handoutMaster.getDrawingGuides().add(Orientation.Vertical, (float) (notesSize.getWidth() / 2 - 50));
presentation.save("notes-handout-drawing-guides.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
Segédvonalak törlése
A IDrawingGuidesCollection.clear hívásával eltávolíthat minden segédvonalat egy adott gyűjteményből. Egy gyűjtemény törlése nem befolyásolja a másik környezetben tárolt segédvonalakat.
A következő példa törli a dia‑nézet segédvonalait, valamint az összes segédvonalat a dia‑mintákon, az elrendezési diákon, a jegyzet‑mintán és a szórólap‑mintán, anélkül hogy hiányzó mintákat hozna létre:
import com.aspose.slides.*;
Presentation presentation = new Presentation("presentation-with-guides.pptx");
try {
presentation.getViewProperties().getSlideViewProperties().getDrawingGuides().clear();
for (IMasterSlide masterSlide : presentation.getMasters()) {
masterSlide.getDrawingGuides().clear();
}
for (ILayoutSlide layoutSlide : presentation.getLayoutSlides()) {
layoutSlide.getDrawingGuides().clear();
}
IMasterNotesSlide notesMaster = presentation.getMasterNotesSlideManager().getMasterNotesSlide();
if (notesMaster != null) {
notesMaster.getDrawingGuides().clear();
}
IMasterHandoutSlide handoutMaster = presentation.getMasterHandoutSlideManager().getMasterHandoutSlide();
if (handoutMaster != null) {
handoutMaster.getDrawingGuides().clear();
}
presentation.save("presentation-without-guides.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
GYIK
Megjelennek a rajzolási segédvonalak diavetítésben vagy exportált képeken?
Nem. A rajzolási segédvonalak szerkesztési igazítási segédeszközök, és nem kerülnek renderelésre a prezentáció tartalmaként.
Hozzáadható-e egy rajzolási segédvonal közvetlenül egy egyedi normál diára?
A normál diák szerkesztési segédvonalai a prezentáció dia‑nézet tulajdonságaiban tárolódnak. Külön segédvonal‑gyűjtemények érhetők el a dia‑mintákhoz, az elrendezési diákhoz, a jegyzet‑mintákhoz és a szórólap‑mintákhoz.
Milyen mértékegységet használnak a segédvonalak pozíciói?
A pozíciókat pontban adják meg, ahol 72 pont egy hüvelyknek felel meg. A függőleges pozíciókat a bal szélől, a vízszintes pozíciókat a felső szélől mérik.
A segédvonalak törlése eltávolítja a formákat vagy módosítja a dia tartalmát?
Nem. Az IDrawingGuidesCollection.clear metódus csak a kiválasztott gyűjteményben lévő segédvonalakat távolítja el. A formák és a többi dia tartalom változatlan marad.