Вставка изображения в определенную позицию в текстовом документе с использованием docx4j

1

Я хочу добавить изображение в определенную позицию в документе с использованием документа docx4j. Мне не нужна встроенная вставка. В приведенном ниже коде добавляется изображение с текстом. Но мне нужна плавающая вставка, где я могу явно указать место, где изображение должно быть размещено на странице. Пожалуйста, помогите мне.

    public R addUserPic(P parag, WordprocessingMLPackage wordMLPackage)
                throws Exception {

            File file = new File("src/main/resources/PictureNew.png");
            byte[] bytes = convertImageToByteArray(file);   
            BinaryPartAbstractImage imagePart = BinaryPartAbstractImage
                    .createImagePart(wordMLPackage, bytes);
            int docPrId = 1;
            int cNvPrId = 2;

            Inline inline = imagePart.createImageInline("Filename hint",
                    "Alternative text", docPrId, cNvPrId, false);   

            ObjectFactory factory = new ObjectFactory();
            R run = factory.createR();
            org.docx4j.wml.Drawing drawing = factory.createDrawing();
            run.getContent().add(drawing);
            drawing.getAnchorOrInline().add(inline);

            return run;

        }

        private static byte[] convertImageToByteArray(File file)
                throws FileNotFoundException, IOException {
            InputStream is = new FileInputStream(file);
            long length = file.length();

            if (length > Integer.MAX_VALUE) {
                System.out.println("File too large!!");
            }
            byte[] bytes = new byte[(int) length];
            int offset = 0;
            int numRead = 0;
            while (offset < bytes.length
                    && (numRead = is.read(bytes, offset, bytes.length - offset)) >= 0) {
                offset += numRead;
            }

            if (offset < bytes.length) {
                System.out.println("Could not completely read file "
                        + file.getName());
            }
            is.close();
            return bytes;


}
  • 0
    Как вы пытались сделать это в docx4?
  • 0
    да .. я пробовал это встроенным способом ... но я хочу разместить изображение в любой заданной позиции в документе
Показать ещё 2 комментария
Теги:
docx4j

1 ответ

1

Поток, на который вы перешли, находится по адресу http://www.docx4java.org/forums/docx-java-f6/how-to-create-a-floating-image-t1224.html, на ваш вопрос.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню