Я пытаюсь создать документ PDF/UA с помощью PDFBox 3.2 и воспользовался решением, предложенным @Tilman Hausherr в этой статье о переполнении стека. Мне удалось пометить как текстовые элементы, так и изображения, и изображение отображается правильно помеченным в PAC. Однако я по-прежнему получаю сообщение об ошибке в PAC, указывающее на отсутствие ограничивающей рамки изображения.
Вот что я пытался решить эту проблему:
Marked Content for Rectangle: I created marked content for the image’s rectangle and added it to the document. (No success, as the error persisted).
Adding COSName.BBOX to Figure Structure Element: I added a new item COSName.BBOX with a Rectangle(x, y, width, height) to the figure structure element. (Resulted in a corrupted PDF).
Adding COSName.BBOX to Figure Reference: I added a new item with COSName.BBOX in the figure reference, similar to step 2. (Also resulted in a corrupted PDF).
Несмотря на эти усилия, я по-прежнему ничего не вижу в структуре, представляющей ограничивающую рамку, когда пытаюсь преобразовать PDF в PDF/UA. Буду очень признателен за любые указания о том, чего мне не хватает для правильного определения ограничивающей рамки изображения в PDFBox 3.2! вот код для создания изображений и тегов:
COSDictionary markedContentDictionary3 = new COSDictionary();
markedContentDictionary3.setInt(COSName.MCID, mcidCounter + 2);
markedContentDictionary3.setString(COSName.ALT, "Alternate Image Description");
PDMarkedContentReference mcr3 = new PDMarkedContentReference();
mcr3.setMCID(mcidCounter + 2);
//COSDictionary markedContentDictionary4 = new COSDictionary();
//markedContentDictionary4.setInt(COSName.MCID, mcidCounter + 3);
//PDMarkedContentReference mcr4 = new PDMarkedContentReference();
//mcr4.setMCID(mcidCounter + 3);
contentStream.beginMarkedContent(COSName.IMAGE, PDPropertyList.create(markedContentDictionary3));
contentStream.drawImage(image, x, y, width, height);
contentStream.endMarkedContent();
// Schließen des Inhaltsstroms
contentStream.close();
PDStructureElement figureElement = new PDStructureElement(StandardStructureTypes.Figure, documentElement);
figureElement.setPage(page);
figureElement.setAlternateDescription("Dieses Bild zeigt: ");
figureElement.appendKid(mcr3);
documentElement.appendKid(figureElement);
Подробнее здесь: https://stackoverflow.com/questions/791 ... -in-pdf-ua
PDFBox 3.2: Ошибка отсутствия ограничивающей рамки в PAC для тега изображения в PDF/UA ⇐ JAVA
Программисты JAVA общаются здесь
1730121632
Anonymous
Я пытаюсь создать документ PDF/UA с помощью PDFBox 3.2 и воспользовался решением, предложенным @Tilman Hausherr в этой статье о переполнении стека. Мне удалось пометить как текстовые элементы, так и изображения, и изображение отображается правильно помеченным в PAC. Однако я по-прежнему получаю сообщение об ошибке в PAC, указывающее на отсутствие ограничивающей рамки изображения.
Вот что я пытался решить эту проблему:
Marked Content for Rectangle: I created marked content for the image’s rectangle and added it to the document. (No success, as the error persisted).
Adding COSName.BBOX to Figure Structure Element: I added a new item COSName.BBOX with a Rectangle(x, y, width, height) to the figure structure element. (Resulted in a corrupted PDF).
Adding COSName.BBOX to Figure Reference: I added a new item with COSName.BBOX in the figure reference, similar to step 2. (Also resulted in a corrupted PDF).
Несмотря на эти усилия, я по-прежнему ничего не вижу в структуре, представляющей ограничивающую рамку, когда пытаюсь преобразовать PDF в PDF/UA. Буду очень признателен за любые указания о том, чего мне не хватает для правильного определения ограничивающей рамки изображения в PDFBox 3.2! вот код для создания изображений и тегов:
COSDictionary markedContentDictionary3 = new COSDictionary();
markedContentDictionary3.setInt(COSName.MCID, mcidCounter + 2);
markedContentDictionary3.setString(COSName.ALT, "Alternate Image Description");
PDMarkedContentReference mcr3 = new PDMarkedContentReference();
mcr3.setMCID(mcidCounter + 2);
//COSDictionary markedContentDictionary4 = new COSDictionary();
//markedContentDictionary4.setInt(COSName.MCID, mcidCounter + 3);
//PDMarkedContentReference mcr4 = new PDMarkedContentReference();
//mcr4.setMCID(mcidCounter + 3);
contentStream.beginMarkedContent(COSName.IMAGE, PDPropertyList.create(markedContentDictionary3));
contentStream.drawImage(image, x, y, width, height);
contentStream.endMarkedContent();
// Schließen des Inhaltsstroms
contentStream.close();
PDStructureElement figureElement = new PDStructureElement(StandardStructureTypes.Figure, documentElement);
figureElement.setPage(page);
figureElement.setAlternateDescription("Dieses Bild zeigt: ");
figureElement.appendKid(mcr3);
documentElement.appendKid(figureElement);
Подробнее здесь: [url]https://stackoverflow.com/questions/79133231/pdfbox-3-2-missing-bounding-box-error-in-pac-for-image-tag-in-pdf-ua[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия