PowerPoint betűkészletek testreszabása .NET-ben
Áttekintés
Az Aspose.Slides lehetővé teszi, hogy egyedi betűkészleteket használjon a bemutatókban anélkül, hogy telepítené őket a operációs rendszerre. Betűkészleteket tölthet be egyedi mappákból, megadhat betűkészleteket egy adott bemutatóhoz dokumentumszintű betűkészletforrásokkal, vagy külső betűkészleteket tölthet be közvetlenül bináris adatból.
A betöltött betűkészletek használatban vannak, amikor egy bemutatót renderelnek vagy exportálnak, például PDF‑be, képekbe és más támogatott formátumokba. Ez segít a bemutató kimenetét konzisztensnek tartani a különböző környezetekben. A cikk azt is bemutatja, hogyan ellenőrizheti az Aspose.Slides által használt betűkészlet-mappákat, és hogyan törölheti a betűkészlet-gyorsítót a külső betűkészletekkel való munka után.
Az egyedi betűkészletek regisztrálása a rendereléshez különálló a betűkészletek PPTX fájlba ágyazásától. Ha egy betűkészletet a bemutatóban kell tárolni, használja kifejezetten a betűkészlet-embedelés funkcióit.
Az Aspose Slides lehetővé teszi ezen betűkészletek betöltését a FontsLoader.LoadExternalFonts metódus használatával:
Egyedi betűkészletek betöltése
Az Aspose.Slides lehetővé teszi, hogy betűkészleteket töltsön be egy bemutatóhoz anélkül, hogy azokat a rendszerre telepítené. Ez befolyásolja az export kimenetet – például PDF, képek és egyéb támogatott formátumok – így a kapott dokumentumok minden környezetben egységesek maradnak. A betűkészletek egyedi könyvtárakból töltődnek be.
- Adjon meg egy vagy több mappát, amely a betűkészlet-fájlokat tartalmazza.
- Hívja meg a statikus FontsLoader.LoadExternalFonts metódust a betűkészletek betöltéséhez ezekből a mappákból.
- Töltse be és renderelje/exportálja a bemutatót.
- Hívja meg a FontsLoader.ClearCache metódust a betűkészlet-gyorsító törléséhez.
A következő kódrészlet bemutatja a betűkészlet betöltésének folyamatát:
// Határozza meg az egyedi betűkészlet fájlokat tartalmazó mappákat.
string[] fontFolders = { externalFontFolder1, externalFontFolder2 };
// Töltse be az egyedi betűkészleteket a megadott mappákból.
FontsLoader.LoadExternalFonts(fontFolders);
using Presentation presentation = new Presentation("sample.pptx");
// Renderelje/exportálja a bemutatót (például PDF-be, képekbe vagy más formátumokba) a betöltött betűkészletekkel.
presentation.Save("output.pdf", SaveFormat.Pdf);
// Törölje a betűkészlet gyorsítótárát a munka befejezése után.
FontsLoader.ClearCache();
Note
FontsLoader.LoadExternalFonts további mappákat ad a betűkészlet-keresési útvonalakhoz, de nem változtatja meg a betűkészlet inicializálási sorrendjét. A betűkészletek ebben a sorrendben inicializálódnak:
- Az alapértelmezett operációs rendszer betűkészlet útvonala.
- A FontsLoader által betöltött útvonalak.
Egyedi betűkészlet-mappák lekérdezése
Az Aspose.Slides a GetFontFolders metódust biztosítja, amely lehetővé teszi a betűkészlet-mappák megtalálását. Ez a metódus visszaadja a LoadExternalFonts metódussal hozzáadott mappákat és a rendszer betűkészlet-mappákat.
Ez a C# kód megmutatja, hogyan használja a GetFontFolders metódust:
// Ez a sor kiírja azokat a mappákat, amelyekben betűkészlet fájlokat keres.
// Ezek a LoadExternalFonts metódussal hozzáadott mappák és a rendszer betűkészlet mappái.
string[] fontFolders = FontsLoader.GetFontFolders();
A bemutatóval használt egyedi betűkészletek megadása
Az Aspose.Slides a DocumentLevelFontSources tulajdonságot biztosítja, amely lehetővé teszi, hogy külső betűkészleteket adjon meg, amelyeket a bemutatóval együtt használunk.
Ez a C# kód megmutatja, hogyan használja a DocumentLevelFontSources tulajdonságot:
byte[] memoryFont1 = File.ReadAllBytes("customfonts\\CustomFont1.ttf");
byte[] memoryFont2 = File.ReadAllBytes("customfonts\\CustomFont2.ttf");
LoadOptions loadOptions = new LoadOptions();
loadOptions.DocumentLevelFontSources.FontFolders = new string[] { "assets\\fonts", "global\\fonts" };
loadOptions.DocumentLevelFontSources.MemoryFonts = new byte[][] { memoryFont1, memoryFont2 };
using (IPresentation presentation = new Presentation("MyPresentation.pptx", loadOptions))
{
// Dolgozzon a bemutatóval
// A CustomFont1, a CustomFont2, valamint az assets\fonts és a global\fonts mappákból és azok almappáiból származó betűkészletek elérhetők a bemutatóban
}
Betűkészletek külső kezelése
Az Aspose.Slides a LoadExternalFont(byte[] data) metódust biztosítja, amely lehetővé teszi, hogy külső betűkészleteket töltsön be bináris adatokból.
Ez a C# kód demonstrálja a bájt-tömbös betűkészlet betöltésének folyamatát:
FontsLoader.LoadExternalFont(File.ReadAllBytes("ARIALN.TTF"));
FontsLoader.LoadExternalFont(File.ReadAllBytes("ARIALNBI.TTF"));
FontsLoader.LoadExternalFont(File.ReadAllBytes("ARIALNI.TTF"));
try
{
using (Presentation pres = new Presentation(""))
{
// a bemutató életciklusa során betöltött külső betűkészlet
}
}
finally
{
FontsLoader.ClearCache();
}
FAQ
Az egyedi betűkészletek befolyásolják az exportot minden formátumba (PDF, PNG, SVG, HTML)?
Igen. A kapcsolt betűkészleteket a renderelő használja az összes export formátumban.
Az egyedi betűkészletek automatikusan beágyazódnak a létrehozott PPTX‑be?
Nem. A betűkészlet regisztrálása a rendereléshez nem ugyanaz, mint a PPTX‑be való beágyazása. Ha a betűkészletet a bemutató fájlban kell tárolni, expliciten használni kell a beágyazási funkciókat.
Szabályozhatom a fallback viselkedést, ha egy egyedi betűkészlet bizonyos glypheket hiányol?
Igen. Konfigurálja a betűkészlet helyettesítést, a helyettesítési szabályokat és a fallback készleteket hogy pontosan meghatározza, melyik betűkészletet használja, ha a kért glif hiányzik.
Használhatok betűkészleteket Linux/Docker konténerekben a rendszer szintű telepítés nélkül?
Igen. Mutasson a saját betűkészlet-mappáira vagy töltsön be betűkészleteket bájt tömbökből. Ez megszünteti a rendszer betűkészlet könyvtáraira való függőséget a konténer képen.
Mi van a licenceléssel—beágyazhatok bármilyen egyedi betűkészletet korlátozás nélkül?
Ön felel a betűkészlet licencelt megfeleléséért. A feltételek változóak; egyes licencek tiltják a beágyazást vagy a kereskedelmi felhasználást. Mindig ellenőrizze a betűkészlet EULA‑ját, mielőtt kimeneteket terjesztene.