C++ का उपयोग करके प्रस्तुतियों में फ़ॉन्ट प्रतिस्थापन को सहज बनाएं

समीक्षा

Aspose.Slides आपको प्रस्तुति के दौरान एक फ़ॉन्ट को दूसरे फ़ॉन्ट से बदलने की अनुमति देता है। जब फ़ॉन्ट बदल दिया जाता है, तो मूल फ़ॉन्ट की सभी घटनाएँ नए फ़ॉन्ट में बदल दी जाती हैं।

फ़ॉन्ट प्रतिस्थापन करने के लिए, प्रस्तुति को लोड करें, स्रोत फ़ॉन्ट और प्रतिस्थापन फ़ॉन्ट को परिभाषित करें, फ़ॉन्ट प्रतिस्थापन मेथड को कॉल करें, और संशोधित प्रस्तुति को PPTX फ़ाइल के रूप में सहेजें। यह तरीका तब उपयोगी होता है जब आप जानबूझकर पूरे प्रस्तुति में एक फ़ॉन्ट परिवार से दूसरे फ़ॉन्ट परिवार में स्विच करना चाहते हैं।

फ़ॉन्ट बदलें

यदि आप किसी फ़ॉन्ट के उपयोग के बारे में अपना मन बदलते हैं, तो आप उस फ़ॉन्ट को किसी अन्य फ़ॉन्ट से बदल सकते हैं। पुराने फ़ॉन्ट की सभी घटनाएँ नए फ़ॉन्ट से बदल दी जाएँगी।

Aspose.Slides आपको इस प्रकार फ़ॉन्ट बदलने की अनुमति देता है:

  1. संबंधित प्रस्तुति लोड करें।
  2. उस फ़ॉन्ट को लोड करें जिसे बदला जाएगा।
  3. नए फ़ॉन्ट को लोड करें।
  4. फ़ॉन्ट को बदलें।
  5. परिवर्तित प्रस्तुति को PPTX फ़ाइल के रूप में लिखें।

यह C++ कोड फ़ॉन्ट प्रतिस्थापन दर्शाता है:

// एक प्रस्तुति लोड करता है
auto presentation = System::MakeObject<Presentation>(u"Fonts.pptx");

// वह स्रोत फ़ॉन्ट लोड करता है जिसे बदला जाएगा
auto sourceFont = System::MakeObject<FontData>(u"Arial");

// नया फ़ॉन्ट लोड करता है
auto destFont = System::MakeObject<FontData>(u"Times New Roman");

// फ़ॉन्ट को बदलता है
presentation->get_FontsManager()->ReplaceFont(sourceFont, destFont);

// प्रस्तुति को सहेजता है
presentation->Save(u"UpdatedFont_out.pptx", SaveFormat::Pptx);

अक्सर पूछे जाने वाले प्रश्न

“font replacement”, “font substitution”, और “fallback fonts” में क्या अंतर है?

प्रतिस्थापन पूर्ण दस्तावेज़ में एक परिवार से दूसरे परिवार में इरादतन स्विच है। प्रतिस्थापन वह नियम है जैसे “यदि फ़ॉन्ट उपलब्ध नहीं है, तो X का उपयोग करें।” फ़ॉलबैक व्यक्तिगत अनुपलब्ध ग्लिफ़्स के लिए सर्जिकल रूप से लागू किया जाता है जब बेस फ़ॉन्ट स्थापित होता है लेकिन आवश्यक अक्षर नहीं रखता।

क्या प्रतिस्थापन मास्टर स्लाइड्स, लेआउट्स, नोट्स और कॉमेंट्स पर लागू होता है?

हाँ। प्रतिस्थापन उन सभी प्रस्तुति ऑब्जेक्ट्स को प्रभावित करता है जो मूल फ़ॉन्ट का उपयोग करते हैं, जिसमें मास्टर स्लाइड्स और नोट्स शामिल हैं; कॉमेंट्स भी दस्तावेज़ का भाग होते हैं और फ़ॉन्ट इंजन द्वारा ध्यान में रखे जाते हैं।

क्या फ़ॉन्ट एम्बेडेड OLE ऑब्जेक्ट्स (उदाहरण के लिए, Excel) के अंदर बदल जाएगा?

नहीं। OLE सामग्री अपने स्वयं के एप्लिकेशन द्वारा नियंत्रित की जाती है। प्रस्तुति में किया गया प्रतिस्थापन अंतर्निहित OLE डेटा को पुनः स्वरूपित नहीं करता; वह छवि के रूप में या बाहरी रूप से संपादन योग्य सामग्री के रूप में प्रदर्शित हो सकता है।

क्या मैं प्रस्तुति के केवल कुछ हिस्सों (स्लाइड्स या क्षेत्रों) में फ़ॉन्ट बदल सकता हूँ?

लक्षित प्रतिस्थापन संभव है यदि आप आवश्यक ऑब्जेक्ट्स/रेंजेज़ के स्तर पर फ़ॉन्ट बदलते हैं, बजाय पूरे दस्तावेज़ पर वैश्विक प्रतिस्थापन लागू करने के। रेंडरिंग के दौरान कुल फ़ॉन्ट चयन तर्क वही रहता है।

मैं कैसे पहले से निर्धारित कर सकता हूँ कि प्रस्तुति सभी में कौन‑से फ़ॉन्ट्स उपयोग करती है?

प्रस्तुति के फ़ॉन्ट प्रबंधक का उपयोग करें: यह उपयोग में परिवार की सूची और प्रतिस्थापन/“अज्ञात” फ़ॉन्ट के बारे में जानकारी प्रदान करता है, जो प्रतिस्थापन की योजना बनाने में सहायक है।

क्या फ़ॉन्ट प्रतिस्थापन PDF/छवियों में परिवर्तित करने पर काम करता है?

हाँ। निर्यात के दौरान, Aspose.Slides वही फ़ॉन्ट चयन/प्रतिस्थापन क्रम लागू करता है, इसलिए पहले किया गया प्रतिस्थापन रूपांतरण के दौरान सम्मानित किया जाएगा।

क्या मुझे सिस्टम में लक्ष्य फ़ॉन्ट स्थापित करना आवश्यक है, या मैं फ़ॉन्ट फ़ोल्डर संलग्न कर सकता हूँ?

स्थापना आवश्यक नहीं है: लाइब्रेरी उपयोगकर्ता फ़ोल्डर से बाहरी फ़ॉन्ट लोडिंग की अनुमति देती है, जिसे रेंडरिंग और निर्यात के दौरान उपयोग किया जाता है।

क्या प्रतिस्थापन “टोफ़ू” (वर्ग) को अक्षरों के बजाय ठीक कर देगा?

केवल तभी जब लक्ष्य फ़ॉन्ट वास्तव में आवश्यक ग्लिफ़्स रखता हो। यदि नहीं, तो फ़ॉलबैक कॉन्फ़िगर करके अनुपलब्ध अक्षरों को कवर करें।