10

私が Apache POI に取り組むのはこれが初めてであり、私が尋ねようとしている質問はこのサイトですでに尋ねられていますが、明確な回答が得られていないため、すべての助けを借りるしかありません。

1 つのフォルダーから画像を取得し、その画像を Word 文書に挿入する Java プログラムを作成しようとしています。このプログラムには Apache POI を使用しています。ここに私のコードを掲載しています。

import java.io.*;
import java.util.*;
import org.apache.poi.util.IOUtils;
import org.apache.poi.xwpf.usermodel.*;

public class ImagesDoc 
{
    public static void main(String[] args) throws IOException 
    {
        XWPFDocument docx = new XWPFDocument();
        XWPFParagraph par = docx.createParagraph();
        XWPFRun run = par.createRun();
        run.setText("Hello, World. This is my first java generated docx-file. Have fun.");
        run.setFontSize(13);
        InputStream pic = new FileInputStream("C:\\Users\\amitabh\\Pictures\\pics\\pool.jpg");
        byte [] picbytes = IOUtils.toByteArray(pic);
        docx.addPicture(picbytes, Document.PICTURE_TYPE_JPEG);

        FileOutputStream out = new FileOutputStream("C:\\Users\\amitabh\\Pictures\\pics\\simple1.docx"); 
        docx.write(out); 
        out.close(); 
        pic.close();
    }
}

Wordドキュメントファイルを作成でき、テキストも挿入できますが、docx.addPicture(picbytes, Document.PICTURE_TYPE_JPEG);行に「キャストをdocxに追加」というエラーが表示されます。このプログラムに使用可能なすべての jar を追加しました。このエラーについて、ネット全体を検索したところ、多くの人が同様の問題を抱えていることがわかりました。XWPFDocument 参照の「addPicture」が機能しない。この問題を解決するのを手伝ってください。

4

2 に答える 2