幻燈片名稱默認爲undefined,因此您會收到一個空字符串。如果您使用鏈接的VBA示例,然後嘗試上面的代碼,則會得到幻燈片名稱。 相應的設置器也可以工作...
由於幻燈片名稱只能通過VBA修改 - 我會使用幻燈片標題來代替,但取決於您的使用案例。
public static void main(String[] args) throws Exception {
// slide name has been set via VBA ...
FileInputStream fis = new FileInputStream("slidename.pptx");
XMLSlideShow ppt = new XMLSlideShow(fis);
fis.close();
XSLFSlide sl = ppt.getSlides().get(0);
System.out.println(sl.getXmlObject().getCSld().getName());
// set slide name via POI and validate it
sl.getXmlObject().getCSld().setName("new name");
FileOutputStream fos = new FileOutputStream("slidename2.pptx");
ppt.write(fos);
fos.close();
ppt.close();
fis = new FileInputStream("slidename2.pptx");
ppt = new XMLSlideShow(fis);
fis.close();
System.out.println(sl.getXmlObject().getCSld().getName());
ppt.close();
}
我認爲這是一個錯誤,默認名稱不返回,因爲它會在VBA中。默認名稱似乎是「Sld」+幻燈片的ID –
此功能可能適用於潛在的usermodel方法,但不適用於基礎xmlbeans。我可以將其添加到API中,但我還不確定這種方法是否合理。如果你打開一個bugzilla入口,請也描述你的用例(簡要地)。 – kiwiwings
我有一個JSF Jira帳戶,但Nob bugzilla帳戶 - 是否有某種單點登錄選項?最好的選擇是如果你將所有東西都移植到github上。該問題系統與其他系統的集成要好得多。 –