जावास्क्रिप्ट का उपयोग करके प्रस्तुतियों में पिक्चर फ्रेम्स प्रबंधित करें
परिचय
Picture Frame एक ऐसा आकार है जो छवि को समाहित करता है—यह फ्रेम में पड़ी तस्वीर जैसा है।
आप एक स्लाइड में चित्र फ़्रेम के माध्यम से छवि जोड़ सकते हैं। इस तरह, आप चित्र फ़्रेम को फॉर्मेट करके छवि को फॉर्मेट कर सकते हैं।
टिप
Aspose मुफ्त कनवर्टर्स—JPEG to PowerPoint और PNG to PowerPoint—प्रदान करता है जिससे लोग छवियों से तेजी से प्रस्तुतियाँ बना सकते हैं।Picture Frame बनाना
- Presentation क्लास की एक इंस्टेंस बनाएं।
- उसके इंडेक्स के द्वारा स्लाइड का रेफ़रेंसम प्राप्त करें।
- प्रस्तुति ऑब्जेक्ट से जुड़े ImagesCollection में छवि जोड़कर एक
PPImageऑब्जेक्ट बनाएं, जिसे आकार को भरने में उपयोग किया जाएगा। - छवि की चौड़ाई और ऊँचाई निर्धारित करें।
- संदर्भित स्लाइड से जुड़े shape ऑब्जेक्ट द्वारा प्रदान किए गए
addPictureFrameमेथड के माध्यम से छवि की चौड़ाई और ऊँचाई के आधार पर एक PictureFrame बनाएं। - स्लाइड में picture frame (जिसमें तस्वीर है) जोड़ें।
- संशोधित प्रस्तुति को PPTX फ़ाइल के रूप में लिखें।
यह JavaScript कोड दिखाता है कि picture frame कैसे बनाते हैं:
// PPTX फ़ाइल का प्रतिनिधित्व करने वाली Presentation क्लास को इंस्टैंशिएट करता है
var pres = new aspose.slides.Presentation();
try {
// पहली स्लाइड प्राप्त करता है
var sld = pres.getSlides().get_Item(0);
// Image क्लास को इंस्टैंशिएट करता है
var imgx = pres.getImages().addImage(java.newInstanceSync("java.io.FileInputStream", java.newInstanceSync("java.io.File", "asp1.jpg")));
// चित्र की समतुल्य ऊँचाई और चौड़ाई के साथ एक picture frame जोड़ता है
sld.getShapes().addPictureFrame(aspose.slides.ShapeType.Rectangle, 50, 150, imgx.getWidth(), imgx.getHeight(), imgx);
// PPTX फ़ाइल को डिस्क पर लिखता है
pres.save("RectPicFrame.pptx", aspose.slides.SaveFormat.Pptx);
} catch (e) {console.log(e);
} finally {
if (pres != null) {
pres.dispose();
}
}
Picture frames आपको छवियों के आधार पर जल्दी से प्रस्तुति स्लाइड बनाने में मदद करते हैं। जब आप picture frame को Aspose.Slides की save options के साथ संयोजित करते हैं, तो आप इनपुट/आउटपुट संचालन को नियंत्रित करके एक फॉर्मेट से दूसरे फॉर्मेट में छवियों को बदल सकते हैं।
रिलेटिव स्केल के साथ Picture Frame बनाना
छवि के रिलेटिव स्केल को बदलकर आप एक अधिक जटिल picture frame बना सकते हैं।
- Presentation क्लास की एक इंस्टेंस बनाएं।
- उसके इंडेक्स के द्वारा स्लाइड का रेफ़रेंसम प्राप्त करें।
- प्रस्तुति की image collection में एक छवि जोड़ें।
- प्रस्तुति ऑब्जेक्ट से जुड़े ImagesCollection में छवि जोड़कर एक PPImage ऑब्जेक्ट बनाएं, जिसे आकार को भरने में उपयोग किया जाएगा।
- picture frame में छवि की रिलेटिव चौड़ाई और ऊँचाई निर्धारित करें।
- संशोधित प्रस्तुति को PPTX फ़ाइल के रूप में लिखें।
यह JavaScript कोड दिखाता है कि रिलेटिव स्केल के साथ picture frame कैसे बनाते हैं:
// PPTX का प्रतिनिधित्व करने वाली Presentation क्लास को इंस्टैंशिएट करें
var pres = new aspose.slides.Presentation();
try {
// पहली स्लाइड प्राप्त करें
var sld = pres.getSlides().get_Item(0);
// Image क्लास को इंस्टैंशिएट करें
var imgx = pres.getImages().addImage(java.newInstanceSync("java.io.FileInputStream", java.newInstanceSync("java.io.File", "asp1.jpg")));
// चित्र की समान ऊँचाई और चौड़ाई के साथ Picture Frame जोड़ें
var pf = sld.getShapes().addPictureFrame(aspose.slides.ShapeType.Rectangle, 50, 150, imgx.getWidth(), imgx.getHeight(), imgx);
// रिलेटिव स्केल की चौड़ाई और ऊँचाई सेट करना
pf.setRelativeScaleHeight(0.8);
pf.setRelativeScaleWidth(1.35);
// PPTX फ़ाइल को डिस्क पर लिखें
pres.save("RectPicFrame.pptx", aspose.slides.SaveFormat.Pptx);
} catch (e) {console.log(e);
} finally {
if (pres != null) {
pres.dispose();
}
}
Picture Frames से रास्टर छवियों को निकालना
आप PictureFrame ऑब्जेक्ट्स से रास्टर छवियाँ निकाल सकते हैं और उन्हें PNG, JPG और अन्य फॉर्मेट में सहेज सकते हैं। नीचे दिया गया कोड उदाहरण दर्शाता है कि कैसे दस्तावेज़ “sample.pptx” से एक छवि निकाली जाए और उसे PNG फॉर्मेट में सहेजा जाए।
var presentation = new aspose.slides.Presentation("sample.pptx");
try {
var firstSlide = presentation.getSlides().get_Item(0);
var firstShape = firstSlide.getShapes().get_Item(0);
if (java.instanceOf(firstShape, "com.aspose.slides.IPictureFrame")) {
var pictureFrame = firstShape;
try {
var slideImage = pictureFrame.getPictureFormat().getPicture().getImage().getImage();
slideImage.save("slide_1_shape_1.png", aspose.slides.ImageFormat.Png);
} finally {
if (slideImage != null) {
slideImage.dispose();
}
}
}
} catch (e) {console.log(e);
} finally {
presentation.dispose();
}
Picture Frames से SVG छवियों को निकालना
जब किसी प्रस्तुति में SVG ग्राफ़िक्स PictureFrame आकारों के भीतर रखे होते हैं, तो Aspose.Slides for Node.js via Java आपको मूल वेक्टर छवियों को पूरी सटीकता के साथ प्राप्त करने देता है। स्लाइड की shape collection को ट्रैवर्स करके, आप प्रत्येक PictureFrame की पहचान कर सकते हैं, जांच सकते हैं कि अंतर्निहित PPImage में SVG सामग्री है या नहीं, और फिर उस छवि को उसकी मूल SVG फॉर्मेट में डिस्क या स्ट्रीम पर सहेज सकते हैं।
निम्न कोड उदाहरण दर्शाता है कि picture frame से SVG छवि कैसे निकालते हैं:
var presentation = new aspose.slides.Presentation("sample.pptx");
try {
var slide = presentation.getSlides().get_Item(0);
var shape = slide.getShapes().get_Item(0);
if (java.instanceOf(shape, "com.aspose.slides.IPictureFrame")) {
const svgImage = shape.getPictureFormat().getPicture().getImage().getSvgImage();
if (svgImage) {
fs.writeFileSync("output.svg", svgImage.getSvgData());
}
}
} catch (e) {
console.log(e);
} finally {
presentation.dispose();
}
छवि की ट्रांसपेरेंसी प्राप्त करना
Aspose.Slides आपको छवि पर लागू ट्रांसपेरेंसी इफ़ेक्ट प्राप्त करने की सुविधा देता है। यह JavaScript कोड इस ऑपरेशन को दर्शाता है:
var presentation = new aspose.slides.Presentation("Test.pptx");
var pictureFrame = presentation.getSlides().get_Item(0).getShapes().get_Item(0);
var imageTransform = pictureFrame.getPictureFormat().getPicture().getImageTransform();
for (var i = 0; i < imageTransform.size(); i++) {
var effect = imageTransform.get_Item(i);
if (java.instanceOf(effect, "com.aspose.slides.IAlphaModulateFixed")) {
var alphaModulateFixed = effect;
var transparencyValue = 100 - alphaModulateFixed.getAmount();
console.log("Picture transparency: " + transparencyValue);
}
}
छवि की ब्राइटनेस और कंट्रास्ट प्राप्त करना
Aspose.Slides आपको छवि पर लागू ब्राइटनेस और कंट्रास्ट इफ़ेक्ट प्राप्त करने की सुविधा देता है। Luminance क्लास इस छवि ट्रांसफ़ॉर्म इफ़ेक्ट का प्रतिनिधित्व करता है।
यह JavaScript कोड picture frame से ब्राइटनेस और कंट्रास्ट सेटिंग्स प्राप्त करने को दर्शाता है:
const presentation = new aspose.slides.Presentation("sample.pptx");
try {
const slide = presentation.getSlides().get_Item(0);
const shape = slide.getShapes().get_Item(0);
const pictureFrame = shape;
const imageTransform = pictureFrame.getPictureFormat().getPicture().getImageTransform();
for (let i = 0; i < imageTransform.size(); i++) {
const effect = imageTransform.get_Item(i);
if (java.instanceOf(effect, "com.aspose.slides.Luminance")) {
const luminance = effect.getEffective();
const brightness = luminance.getBrightness();
const contrast = luminance.getContrast();
console.log("Brightness: " + brightness);
console.log("Contrast: " + contrast);
}
}
} finally {
presentation.dispose();
}
Picture Frame फ़ॉर्मेटिंग
Aspose.Slides कई फ़ॉर्मेटिंग विकल्प प्रदान करता है जिन्हें picture frame पर लागू किया जा सकता है। इन विकल्पों का उपयोग करके, आप picture frame को विशिष्ट आवश्यकताओं के अनुरूप बदल सकते हैं।
- Presentation क्लास की एक इंस्टेंस बनाएं।
- उसके इंडेक्स के द्वारा स्लाइड का रेफ़रेंसम प्राप्त करें।
- प्रस्तुति के साथ जुड़े ImagesCollection में छवि जोड़कर एक PPImage ऑब्जेक्ट बनाएं, जिसे shape को भरने के लिये उपयोग किया जाएगा।
- छवि की चौड़ाई और ऊँचाई निर्धारित करें।
- addPictureFrame मेथड द्वारा Shapes ऑब्जेक्ट से छवि की चौड़ाई‑ऊँचाई के आधार पर एक
PictureFrameबनाएं। - स्लाइड में picture frame (जिसमें तस्वीर है) जोड़ें।
- picture frame की लाइन रंग सेट करें।
- picture frame की लाइन चौड़ाई सेट करें।
- picture frame को सकारात्मक या नकारात्मक मान देकर घुमाएँ।
- सकारात्मक मान छवि को घड़ी की दिशा में घुमाता है।
- नकारात्मक मान छवि को घड़ी की उल्टी दिशा में घुमाता है।
- picture frame (जिसमें तस्वीर है) को फिर से स्लाइड में जोड़ें।
- संशोधित प्रस्तुति को PPTX फ़ाइल के रूप में लिखें।
यह JavaScript कोड picture frame फ़ॉर्मेटिंग प्रक्रिया को दर्शाता है:
// PPTX का प्रतिनिधित्व करने वाली Presentation क्लास को इंस्टैंशिएट करता है
var pres = new aspose.slides.Presentation();
try {
// पहली स्लाइड प्राप्त करता है
var sld = pres.getSlides().get_Item(0);
// Image क्लास को इंस्टैंशिएट करता है
var imgx = pres.getImages().addImage(java.newInstanceSync("java.io.FileInputStream", java.newInstanceSync("java.io.File", "asp1.jpg")));
// चित्र की समान ऊँचाई और चौड़ाई के साथ Picture Frame जोड़ता है
var pf = sld.getShapes().addPictureFrame(aspose.slides.ShapeType.Rectangle, 50, 150, imgx.getWidth(), imgx.getHeight(), imgx);
// PictureFrameEx पर कुछ फ़ॉर्मेटिंग लागू करता है
pf.getLineFormat().getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Solid));
pf.getLineFormat().getFillFormat().getSolidFillColor().setColor(java.getStaticFieldValue("java.awt.Color", "BLUE"));
pf.getLineFormat().setWidth(20);
pf.setRotation(45);
// PPTX फ़ाइल को डिस्क पर लिखता है
pres.save("RectPicFrame.pptx", aspose.slides.SaveFormat.Pptx);
} catch (e) {console.log(e);
} finally {
if (pres != null) {
pres.dispose();
}
}
टिप
Aspose ने हाल ही में एक free Collage Maker विकसित किया है। यदि आपको कभी भी JPG/JPEG या PNG छवियों को मर्ज करना हो, या फोटो ग्रिड बनाना हो, तो आप इस सेवा का उपयोग कर सकते हैं।लिंक के रूप में छवि जोड़ना
बड़ी प्रस्तुति आकार को कम रखने के लिये, आप फ़ाइलों को सीधे एम्बेड करने के बजाय लिंक के माध्यम से छवियाँ (या वीडियो) जोड़ सकते हैं। यह JavaScript कोड आपको एक placeholder में छवि और वीडियो जोड़ना दिखाता है:
var presentation = new aspose.slides.Presentation("input.pptx");
try {
var shapesToRemove = java.newInstanceSync("java.util.ArrayList");
var shapesCount = presentation.getSlides().get_Item(0).getShapes().size();
for (var i = 0; i < shapesCount; i++) {
var autoShape = presentation.getSlides().get_Item(0).getShapes().get_Item(i);
if (autoShape.getPlaceholder() == null) {
continue;
}
switch (autoShape.getPlaceholder().getType()) {
case aspose.slides.PlaceholderType.Picture :
var pictureFrame = presentation.getSlides().get_Item(0).getShapes().addPictureFrame(aspose.slides.ShapeType.Rectangle, autoShape.getX(), autoShape.getY(), autoShape.getWidth(), autoShape.getHeight(), null);
pictureFrame.getPictureFormat().getPicture().setLinkPathLong("https://upload.wikimedia.org/wikipedia/commons/3/3a/I.M_at_Old_School_Public_Broadcasting_in_October_2016_02.jpg");
shapesToRemove.add(autoShape);
break;
case aspose.slides.PlaceholderType.Media :
var videoFrame = presentation.getSlides().get_Item(0).getShapes().addVideoFrame(autoShape.getX(), autoShape.getY(), autoShape.getWidth(), autoShape.getHeight(), "");
videoFrame.getPictureFormat().getPicture().setLinkPathLong("https://upload.wikimedia.org/wikipedia/commons/3/3a/I.M_at_Old_School_Public_Broadcasting_in_October_2016_02.jpg");
videoFrame.setLinkPathLong("https://youtu.be/t_1LYZ102RA");
shapesToRemove.add(autoShape);
break;
}
}
for (var i = 0; i < shapesToRemove.length; i++) {
var shape = shapesToRemove.get_Item(i);
presentation.getSlides().get_Item(0).getShapes().remove(shape);
}
presentation.save("output.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
if (presentation != null) {
presentation.dispose();
}
}
छवि क्रॉप करना
यह JavaScript कोड आपको स्लाइड पर मौजूदा छवि को क्रॉप करने का तरीका दिखाता है:
var pres = new aspose.slides.Presentation();
// नया इमेज ऑब्जेक्ट बनाता है
try {
var picture;
var image = aspose.slides.Images.fromFile(imagePath);
try {
picture = pres.getImages().addImage(image);
} finally {
if (image != null) {
image.dispose();
}
}
// स्लाइड में एक PictureFrame जोड़ता है
var picFrame = pres.getSlides().get_Item(0).getShapes().addPictureFrame(aspose.slides.ShapeType.Rectangle, 100, 100, 420, 250, picture);
// छवि को क्रॉप करता है (प्रतिशत मान)
picFrame.getPictureFormat().setCropLeft(23.6);
picFrame.getPictureFormat().setCropRight(21.5);
picFrame.getPictureFormat().setCropTop(3);
picFrame.getPictureFormat().setCropBottom(31);
// परिणाम को सहेजता है
pres.save(outPptxFile, aspose.slides.SaveFormat.Pptx);
} catch (e) {console.log(e);
} finally {
if (pres != null) {
pres.dispose();
}
}
Picture के क्रॉप किए गए क्षेत्रों को हटाना
यदि आप फ़्रेम में मौजूद छवि के क्रॉप किए गए क्षेत्रों को हटाना चाहते हैं, तो आप deletePictureCroppedAreas() मेथड का उपयोग कर सकते हैं। यह मेथड क्रॉप की गई छवि या मूल छवि लौटाता है यदि क्रॉपिंग आवश्यक नहीं है।
यह JavaScript कोड इस ऑपरेशन को दर्शाता है:
var presentation = new aspose.slides.Presentation("PictureFrameCrop.pptx");
try {
var slide = presentation.getSlides().get_Item(0);
// पहली स्लाइड से PictureFrame प्राप्त करता है
var picFrame = slide.getShapes().get_Item(0);
// PictureFrame छवि के क्रॉप किए गए क्षेत्रों को हटाता है और क्रॉप की गई छवि लौटाता है
var croppedImage = picFrame.getPictureFormat().deletePictureCroppedAreas();
// परिणाम को सहेजता है
presentation.save("PictureFrameDeleteCroppedAreas.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
if (presentation != null) {
presentation.dispose();
}
}
ध्यान दें
deletePictureCroppedAreas() मेथड क्रॉप की गई छवि को प्रस्तुति की image collection में जोड़ता है। यदि छवि केवल प्रोसेस किए गए PictureFrame में उपयोग होती है, तो यह सेटअप प्रस्तुति आकार को घटा सकता है। अन्यथा, परिणामी प्रस्तुति में छवियों की संख्या बढ़ जाएगी।
यह मेथड क्रॉपिंग ऑपरेशन में WMF/EMF मेटाफाइल को रास्टर PNG छवि में बदल देता है।
छवियों को संपीड़ित करना
आप प्रस्तुति में एक चित्र को PictureFillFormat.compressImage मेथड का उपयोग करके संपीड़ित कर सकते हैं। यह मेथड आकार को shape के आकार और निर्दिष्ट रिज़ॉल्यूशन के आधार पर कम करता है, और वैकल्पिक रूप से क्रॉप किए गए क्षेत्रों को हटाने की सुविधा देता है।
यह PowerPoint के Picture Format → Compress Pictures → Resolution फीचर के समान ही चित्र का आकार और रिज़ॉल्यूशन समायोजित करता है।
निम्न JavaScript उदाहरण दर्शाते हैं कि लक्ष्य रिज़ॉल्यूशन निर्दिष्ट करके और वैकल्पिक रूप से क्रॉप किए गए क्षेत्रों को हटाकर प्रस्तुति में छवि को कैसे संपीड़ित किया जाए:
const presentation = new aspose.slides.Presentation("demo.pptx");
try {
const slide = presentation.getSlides().get_Item(0);
const pictureFrame = slide.getShapes().get_Item(0);
// छवि को 150 DPI (वेब रिज़ॉल्यूशन) के लक्ष्य रिज़ॉल्यूशन के साथ संकुचित करें और क्रॉप किए गए क्षेत्रों को हटाएँ।
const result = pictureFrame.getPictureFormat().compressImage(true, aspose.slides.PicturesCompression.Dpi150);
// संकुचन के परिणाम की जाँच करें।
if (result) {
console.log("Image successfully compressed.");
} else {
console.log("Image compression failed or no changes were necessary.");
}
presentation.save("CompressedImage.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
presentation.dispose();
}
या किसी अन्य पूर्वनिर्धारित DPI मान का उपयोग करके:
const presentation = new aspose.slides.Presentation("demo.pptx");
try {
const slide = presentation.getSlides().get_Item(0);
const pictureFrame = slide.getShapes().get_Item(0);
// छवि को 96 DPI (ईमेल रिज़ॉल्यूशन) पर संकुचित करें, क्रॉप किए गए क्षेत्रों को हटाते हुए।
pictureFrame.getPictureFormat().compressImage(true, aspose.slides.PicturesCompression.Dpi96);
presentation.save("CompressedImage.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
presentation.dispose();
}
ध्यान दें
यह मेथड shape के आकार और दिए गए DPI के आधार पर छवि को निम्न रिज़ॉल्यूशन में बदल देता है। फ़ाइल आकार को अनुकूलित करने के लिये क्रॉप किए गए क्षेत्रों को भी हटाया जा सकता है। यदि छवि एक मेटाफाइल (WMF/EMF) या SVG है, तो संपीड़न लागू नहीं होगा। JPEG की गुणवत्ता भी रिज़ॉल्यूशन के अनुसार बनाए रखी या हल्की घटाई जाएगी, बिल्कुल PowerPoint की तरह।आस्पेक्ट रेशियो को लॉक करना
यदि आप चाहते हैं कि छवि वाले shape का आस्पेक्ट रेशियो, छवि के आयाम बदलने के बाद भी बरकरार रहे, तो आप setAspectRatioLocked मेथड का उपयोग करके Lock Aspect Ratio सेटिंग सेट कर सकते हैं।
यह JavaScript कोड दिखाता है कि shape के आस्पेक्ट रेशियो को कैसे लॉक किया जाए:
var pres = new aspose.slides.Presentation("pres.pptx");
try {
var layout = pres.getLayoutSlides().getByType(aspose.slides.SlideLayoutType.Custom);
var emptySlide = pres.getSlides().addEmptySlide(layout);
var picture;
var image = aspose.slides.Images.fromFile("image.png");
try {
picture = pres.getImages().addImage(image);
} finally {
if (image != null) {
image.dispose();
}
}
var pictureFrame = emptySlide.getShapes().addPictureFrame(aspose.slides.ShapeType.Rectangle, 50, 150, presImage.getWidth(), presImage.getHeight(), picture);
// रीसाइज़ पर आकार का आस्पेक्ट रेशियो बरकरार रखने के लिये shape सेट करें
pictureFrame.getPictureFrameLock().setAspectRatioLocked(true);
} catch (e) {console.log(e);
} finally {
if (pres != null) {
pres.dispose();
}
}
ध्यान दें
यह Lock Aspect Ratio सेटिंग केवल shape के आस्पेक्ट रेशियो को संरक्षित करती है, न कि उसके भीतर की छवि को।StretchOff प्रॉपर्टी का उपयोग करना
PictureFillFormat क्लास की setStretchOffsetLeft, setStretchOffsetTop, setStretchOffsetRight और setStretchOffsetBottom मेथड्स का उपयोग करके, आप एक fill rectangle निर्दिष्ट कर सकते हैं।
जब किसी छवि के लिये स्ट्रेचिंग निर्दिष्ट की जाती है, तो स्रोत rectangle को निर्दिष्ट fill rectangle में फिट करने के लिये स्केल किया जाता है। fill rectangle के प्रत्येक किनारे को shape के बाउंडिंग बॉक्स के संबंधित किनारे से प्रतिशत ऑफ़सेट द्वारा परिभाषित किया जाता है। सकारात्मक प्रतिशत एक इनसेट दर्शाता है जबकि नकारात्मक प्रतिशत एक आउटसेट दर्शाता है।
- Presentation क्लास की एक इंस्टेंस बनाएं।
- उसके इंडेक्स के द्वारा स्लाइड का रेफ़रेंसम प्राप्त करें।
- एक rectangle
AutoShapeजोड़ें। - एक छवि बनाएं।
- shape की fill प्रकार सेट करें।
- shape की picture fill मोड सेट करें।
- shape को भरने के लिये छवि सेट करें।
- shape के बाउंडिंग बॉक्स के संबंधित किनारे से छवि ऑफ़सेट निर्धारित करें।
- संशोधित प्रस्तुति को PPTX फ़ाइल के रूप में लिखें।
यह JavaScript कोड दर्शाता है कि StretchOff प्रॉपर्टी कैसे उपयोग की जाती है:
// PPTX फ़ाइल का प्रतिनिधित्व करने वाली Presentation क्लास को इंस्टैंशिएट करता है
var pres = new aspose.slides.Presentation();
try {
// पहली स्लाइड प्राप्त करता है
var slide = pres.getSlides().get_Item(0);
// ImageEx क्लास को इंस्टैंशिएट करता है
var picture;
var image = aspose.slides.Images.fromFile("aspose-logo.jpg");
try {
picture = pres.getImages().addImage(image);
} finally {
if (image != null) {
image.dispose();
}
}
// Rectangle के रूप में AutoShape जोड़ता है
var aShape = slide.getShapes().addAutoShape(aspose.slides.ShapeType.Rectangle, 100, 100, 300, 300);
// shape की fill प्रकार सेट करता है
aShape.getFillFormat().setFillType(java.newByte(aspose.slides.FillType.Picture));
// shape की picture fill मोड सेट करता है
aShape.getFillFormat().getPictureFillFormat().setPictureFillMode(aspose.slides.PictureFillMode.Stretch);
// shape को भरने के लिये छवि सेट करता है
aShape.getFillFormat().getPictureFillFormat().getPicture().setImage(picture);
// shape के बाउंडिंग बॉक्स के संबंधित किनारे से छवि ऑफ़सेट निर्धारित करता है
aShape.getFillFormat().getPictureFillFormat().setStretchOffsetLeft(25);
aShape.getFillFormat().getPictureFillFormat().setStretchOffsetRight(25);
aShape.getFillFormat().getPictureFillFormat().setStretchOffsetTop(-20);
aShape.getFillFormat().getPictureFillFormat().setStretchOffsetBottom(-10);
// PPTX फ़ाइल को डिस्क पर लिखता है
pres.save("StretchOffsetLeftForPictureFrame_out.pptx", aspose.slides.SaveFormat.Pptx);
} catch (e) {console.log(e);
} finally {
if (pres != null) {
pres.dispose();
}
}
FAQ
मैं कैसे पता करूँ कि PictureFrame के लिये कौन‑से छवि फॉर्मेट समर्थित हैं?
Aspose.Slides दोनों रास्टर छवियों (PNG, JPEG, BMP, GIF, आदि) और वेक्टर छवियों (जैसे SVG) को सपोर्ट करता है, जो एक PictureFrame को असाइन किए गए image ऑब्जेक्ट के माध्यम से उपलब्ध होते हैं। समर्थित फॉर्मेट की सूची सामान्यतः स्लाइड और इमेज कनवर्ज़न इंजन की क्षमताओं के साथ ओवरलैप करती है।
दर्जनों बड़े चित्र जोड़ने से PPTX आकार और प्रदर्शन पर क्या प्रभाव पड़ेगा?
बड़ी छवियों को एम्बेड करने से फ़ाइल आकार और मेमोरी उपयोग बढ़ता है; छवियों को लिंक करने से प्रस्तुति आकार घटता है, लेकिन बाहरी फ़ाइलों को सुपलब्ध रखना आवश्यक होता है। Aspose.Slides लिंक के द्वारा छवियों को जोड़ने की सुविधा देता है जिससे फ़ाइल आकार कम रहता है।
मैं कैसे एक छवि ऑब्जेक्ट को आकस्मिक मूव/रिसाइज़ से लॉक कर सकता हूँ?
shape locks का उपयोग करके आप एक PictureFrame (जैसे मूव या रिसाइज़ निष्क्रिय करना) को लॉक कर सकते हैं। यह लॉकिंग तंत्र विभिन्न shape प्रकारों के लिये समर्थित है, जिसमें PictureFrame भी शामिल है।
क्या PDF/छवियों में निर्यात करते समय SVG वेक्टर फिडेलिटी बरकरार रहती है?
Aspose.Slides आपको एक PictureFrame से मूल वेक्टर के रूप में SVG निकालने की अनुमति देता है। जब आप PDF में निर्यात या रास्टर फॉर्मेट में निर्यात करते हैं, तो सेटिंग्स के आधार पर परिणाम रास्टराइज़ हो सकता है; मूल SVG को वेक्टर के रूप में संग्रहीत रहने की पुष्टि एक्सट्रैक्शन व्यवहार से होती है।