親愛なるみんな、
私は Apache POI を使用しており、コードからいくつかのチャートを含むスライドを複製したいと考えています。
以下のコード ( https://poi.apache.org/slideshow/xslf-cookbook.html#Mergeに触発された) は、スライドにグラフがない場合に正常に動作します。
残念ながら、この方法ではグラフが複製されないようです。結果のファイルを開こうとすると、Powerpoint が問題を検出し、修復を試みますが失敗し、空のスライドが表示されます。
基礎となる XML ファイルを (Open XML SDK を使用して) 確認したところ、グラフ自体 (フォルダー内/ppt/charts
) が複製されておらず、関係ファイル (フォルダー内/ppt/slides/_rels
) が完全に更新されていないようです。
これが私の現在のコードです:
// Open slideshow
FileInputStream fileInputStream = new FileInputStream(sourceFilePath);
XMLSlideShow slideShow = new XMLSlideShow(fileInputStream);
fileInputStream.close();
// Duplicate slide
XSLFSlideLayout layout = slide.getSlideLayout();
XSLFSlide newSlide = slideshow.createSlide(layout);
newSlide.importContent(slide);
// Save updated slideshow
FileOutputStream fileOutputStream = new FileOutputStream(outputFilePath);
slideShow.write(fileOutputStream);
fileOutputStream.close();
スライドとそのチャートを複製する方法を知っていますか?
どうもありがとう、そしてよろしく!