Konfiguracja podstawiania czcionek w prezentacjach przy użyciu C++
Przegląd
Podstawianie czcionek pozwala Aspose.Slides używać innej czcionki, gdy oryginalna czcionka prezentacji nie jest dostępna podczas renderowania lub konwersji. Możesz sprawdzić, które czcionki zostały podstawione, używając metody GetSubstitutions z interfejsu IFontsManager.
Aspose.Slides umożliwia również definiowanie reguł podstawiania czcionek. Na przykład możesz określić, że niedostępna czcionka ma zostać zastąpiona inną dostępną czcionką i zastosować te reguły poprzez menedżer czcionek prezentacji.
Ustaw reguły podstawiania czcionek
Aspose.Slides pozwala ustawiać reguły dla czcionek, które określają, co należy zrobić w określonych warunkach (na przykład, gdy nie można uzyskać dostępu do czcionki) w następujący sposób:
- Załaduj odpowiednią prezentację.
- Załaduj czcionkę, która ma zostać zastąpiona.
- Załaduj nową czcionkę.
- Dodaj regułę zastąpienia.
- Dodaj regułę do kolekcji reguł zastąpienia czcionek prezentacji.
- Wygeneruj obraz slajdu, aby zaobserwować efekt.
Ten kod w C++ demonstruje proces podstawiania czcionek:
// Ścieżka do katalogu dokumentów.
const String outPath = u"../out/RuleBasedFontsReplacement_out.pptx";
const String templatePath = u"../templates/DefaultFonts.pptx";
// Ładuje prezentację
SharedPtr<Presentation> pres = MakeObject<Presentation>(templatePath);
// Definiuje czcionkę, która zostanie zastąpiona oraz nową czcionkę
SharedPtr<IFontData> sourceFont = MakeObject<FontData>(u"SomeRareFont");
SharedPtr<IFontData> destFont = MakeObject<FontData>(u"Arial");
// Dodaje regułę czcionki dla zastąpienia czcionki
SharedPtr<FontSubstRule> fontSubstRule = MakeObject<FontSubstRule>(sourceFont, destFont, FontSubstCondition::WhenInaccessible);
// Dodaje regułę do kolekcji reguł podstawiania czcionek
SharedPtr<FontSubstRuleCollection> fontSubstRuleCollection = MakeObject<FontSubstRuleCollection>();
fontSubstRuleCollection->Add(fontSubstRule);
// Dodaje kolekcję reguł czcionek do listy reguł
pres->get_FontsManager()->set_FontSubstRuleList ( fontSubstRuleCollection);
// Zapisuje PPTX na dysk
pres->Save(outPath, Aspose::Slides::Export::SaveFormat::Pptx);
UWAGA
Możesz chcieć zobaczyć Zastąpienie czcionek.Ograniczenia dla czcionek równań matematycznych
Reguły podstawiania czcionek uczestniczą w standardowym procesie wyboru czcionki używanym podczas renderowania i konwersji. Są odpowiednie dla zwykłych scenariuszy tekstowych, w których Aspose.Slides może zastąpić niedostępną czcionkę inną dostępną czcionką zgodnie z skonfigurowaną regułą.
Jednak równania matematyczne w Office mają ważne ograniczenie. Jeśli równanie zostało utworzone przy użyciu Cambria Math, Aspose.Slides może nadal wymagać oryginalnej czcionki Cambria Math, aby obliczyć i poprawnie wyrenderować układ równania. Z tego powodu podstawienie Cambria Math inną czcionką matematyczną, taką jak STIX Two Math, nie jest obsługiwane przy renderowaniu równań i może skutkować wyjątkiem wskazującym, że wymagana jest Cambria Math.
Aby pomyślnie konwertować takie prezentacje, upewnij się, że Cambria Math jest dostępna dla Aspose.Slides w czasie wykonywania. Możesz zainstalować czcionkę w systemie operacyjnym lub udostępnić ją jako zewnętrzną czcionkę, aby mogła uczestniczyć w normalnym procesie wyboru czcionki podczas renderowania i konwersji.
To ograniczenie dotyczy wyłącznie renderowania równań. Standardowe reguły podstawiania czcionek opisane powyżej nadal obowiązują dla zwykłego tekstu prezentacji, gdy oryginalna czcionka jest niedostępna.
FAQ
Jaka jest różnica między zastąpieniem czcionki a jej podstawieniem?
Zastąpienie to wymuszone nadpisanie jednej czcionki drugą w całej prezentacji. Podstawienie to reguła, która uruchamia się w określonym warunku, na przykład gdy oryginalna czcionka jest niedostępna, i wtedy używana jest wyznaczona czcionka zapasowa.
Kiedy dokładnie stosowane są reguły podstawiania?
Reguły uczestniczą w standardowej kolejności wyboru czcionki, która jest oceniana podczas ładowania, renderowania i konwersji; jeśli wybrana czcionka jest niedostępna, stosowane jest zastąpienie lub podstawienie.
Jakie jest domyślne zachowanie, jeśli nie skonfigurowano ani zastąpienia, ani podstawienia i czcionka brak jest w systemie?
Biblioteka spróbuje wybrać najbliższą dostępną czcionkę systemową, podobnie jak zachowałby się PowerPoint.
Czy mogę dołączyć własne zewnętrzne czcionki w czasie wykonywania, aby uniknąć podstawienia?
Tak. Możesz dodać zewnętrzne czcionki w czasie wykonywania, aby biblioteka brała je pod uwagę przy wyborze i renderowaniu, także przy kolejnych konwersjach.
Czy Aspose dystrybuuje jakiekolwiek czcionki razem z biblioteką?
Nie. Aspose nie dystrybuuje płatnych ani darmowych czcionek; dodajesz i używasz czcionki według własnego uznania i odpowiedzialności.
Czy istnieją różnice w zachowaniu podstawiania na systemach Windows, Linux i macOS?
Tak. Wykrywanie czcionek zaczyna się od katalogów czcionek systemu operacyjnego. Zestaw domyślnie dostępnych czcionek i ścieżki wyszukiwania różnią się w zależności od platformy, co wpływa na dostępność i potrzebę podstawiania.
Jak przygotować środowisko, aby zminimalizować nieoczekiwane podstawianie podczas konwersji wsadowych?
Zsynchronizuj zestaw czcionek między maszynami lub kontenerami, dodaj wymagane zewnętrzne czcionki do dokumentów wyjściowych oraz osadz czcionki w prezentacjach, gdy to możliwe, aby wybrane czcionki były dostępne podczas renderowania.