Aspose.Slides for .NET是獨特的演示處理API,使應用程式能夠讀取,編寫,修改和轉換PowerPoint演示文稿。作為獨立的API,它提供了管理PowerPoint關鍵功能的功能,例如管理文本,形狀,表格和動畫,向幻燈片添加音頻和視頻,預覽幻燈片等等。 近期,Aspose.Sli ...
Aspose.Slides for .NET是獨特的演示處理API,使應用程式能夠讀取,編寫,修改和轉換PowerPoint演示文稿。作為獨立的API,它提供了管理PowerPoint關鍵功能的功能,例如管理文本,形狀,表格和動畫,向幻燈片添加音頻和視頻,預覽幻燈片等等。
近期,Aspose.Slides for .NET更新至最新版v19.10,現在有一些非常有趣且實用的功能值得為大家講解一下,比如新增支持字體回退,以及在占位符中設置提示文本,接下來通過一些簡單的示例來為大家說明一下!
支持字體回退
當遇到的字元不屬於任何其他可用字體的組成部分時,將使用後備字體中的符號代替。通常,後備字體將包含代表各種類型的Unicode字元的符號。現在,該支持也已成為Aspose.Slides的一部分。
下麵的代碼示例演示如何使用FontFallBackRule對象設置字體回退。
uint startUnicodeIndex = 0x0B80;
uint endUnicodeIndex = 0x0BFF;
IFontFallBackRule firstRule = new FontFallBackRule(startUnicodeIndex, endUnicodeIndex, "Vijaya");
IFontFallBackRule secondRule = new FontFallBackRule(0x3040, 0x309F, "MS Mincho, MS Gothic");
//字體列表也可以通過幾種方式添加:
string[] fontNames = new string[] { "Segoe UI Emoji, Segoe UI Symbol", "Arial" };
IFontFallBackRule thirdRule = new FontFallBackRule(0x1F300, 0x1F64F, fontNames);複製代碼
與此類似的基於Java的示例:
Presentation presentation = new Presentation();
try {
IFontFallBackRulesCollection userRulesList = new FontFallBackRulesCollection();
userRulesList.add(new FontFallBackRule(0x0B80, 0x0BFF, "Vijaya"));
userRulesList.add(new FontFallBackRule(0x3040, 0x309F, "MS Mincho, MS Gothic"));
presentation.getFontsManager().setFontFallBackRulesCollection(userRulesList);
} finally {
if (presentation != null) presentation.dispose();
}複製代碼
在占位符中設置提示文本
一個提示文本是當它是第一負載,但是當用戶開始輸入到該消失出現在文本欄位的文本的文本欄位。基本上,這是為了使用戶易於瞭解要在所選欄位中輸入的內容。我們知道標準佈局和預構建佈局包含帶有預設文本的占位符,如Click添加標題 或 Click添加字幕。使用Aspose.Slides可以通過訪問預設占位符來手動添加提示文本。下麵的代碼段顯示瞭如何使用此功能:
// The path to the documents directory.
string dataDir = RunExamples.GetDataDir_Text();
using (Presentation pres = new Presentation(dataDir + "Presentation2.pptx"))
{
ISlide slide = pres.Slides[0];
foreach (IShape shape in slide.Slide.Shapes) // iterate through the slide
{
if (shape.Placeholder != null && shape is AutoShape)
{
string text = "";
if (shape.Placeholder.Type == PlaceholderType.CenteredTitle) // title - the text is empty, PowerPoint displays "Click to add title".
{
text = "Click to add custom title";
}
else if (shape.Placeholder.Type == PlaceholderType.Subtitle) // the same for subtitle.
{
text = "Click to add custom subtitle";
}
((IAutoShape)shape).TextFrame.Text = text;
Console.WriteLine($"Placeholder with text: {text}");
}
}
pres.Save(dataDir + "Placeholders_PromptText.pptx", SaveFormat.Pptx);
}複製代碼
如果您有任何疑問或需求,請隨時加入Aspose技術交流群(642018183)!