5

Apache POI を使用してプログラムで作成されたパワーポイント スライドにメモを追加することは可能ですか?

これが私がこれまでに持っているものです

Slide slide = ppt.createSlide();
org.apache.poi.hslf.record.Notes notesRecord = new ???; // <--- No Public constructor
org.apache.poi.hslf.model.Notes noteModel = new org.apache.poi.hslf.model.Notes(notesRecord ); // <--- Only one constructor which takes a org.apache.poi.hslf.record.Notes
// hopefully make some notes
// add the notes to the slide
slide.setNotes(noteModel);

ご覧のとおり、スライド オブジェクトにメモを追加するために必要なオブジェクトを作成する方法はないようです。

通話中

Notes notesSheet = slide.getNotesSheet();

...null を返します。

おそらく私が見つけていないファクトリクラスを使用して、必要なメモオブジェクトを作成する別の方法はありますか?

または、Note クラスを使用せずにスライドにメモを追加する別の方法はありますか?

4

1 に答える 1

8

質問はかなり古いですが、この回答が誰かの役に立てば幸いです。Apache POI 3.12 を使用すると、次のコードでスライドにテキストをメモとして追加できます。

    // create a new empty slide show
    XMLSlideShow ppt = new XMLSlideShow();

    // add first slide
    XSLFSlide slide = ppt.createSlide();

    // get or create notes
    XSLFNotes note = ppt.getNotesSlide(slide);

    // insert text
    for (XSLFTextShape shape : note.getPlaceholders()) {
        if (shape.getTextType() == Placeholder.BODY) {
            shape.setText("String");
            break;
        }
    }

    // save
    [...]
于 2015-06-11T13:07:37.293 に答える