Link Search Menu Expand Document

Images

Изображения в шаблоне

Как удобнее показать в шаблоне что в данном месте будет отображено несколько картинок?

Если в шаблоне заранее известное количество рисунков, можно создать пустые изображения и менять из содержимое в runtime. Проблем с подменой содержимого не возникает, тк в форматах на основе XML изображения обычно хранятся в base64, в офисных пакетах это картинки в определенных директориях в самом zip архиве шаблона. Тут все довольно просто

Простые картинки

Если вывод ни чем не осложнен и картинка в шаблоне это обычный прямоугольник, можно описать картинку как и прочие поля

image

На стороне ABAP нам понадобиться лишь 1 дополнительный класс zcl_xtt_image. Его инстанция и будет готовое изображение

 img  TYPE REF TO zcl_xtt_image, " <--- IMAGE

При создании объекта нужно будет передать лишь двоичные данные (iv_image TYPE xString)

    " Create new instance
    <ls_icon>-img = zcl_xtt_image=>create_image( iv_image  = lv_image ).

Дополнительно можно передать размер изображения и его формат (расширение)

    " Create new instance
    <ls_icon>-img = zcl_xtt_image=>create_image( iv_image  = lv_image
                                                     iv_ext    = '.gif'
                                                     iv_width  = lv_width
                                                     iv_height = lv_height ).

Но что если нам нужна еще рамка для изображения и скругленные края?

Шаблоны картинок

Если добавлять параметры в виде текста {R-T-IMG;borderColor=black;border-style=dotted} таких параметров будет очень много и сама реализация будет сильно отличаться в pdf от Excel.

1) Excel

Самый простой вариант добавить в альтернативный текст ID для данного поля image

Но данный способ совсем не информативен (его просто не видно), и чтобы облегчить жизнь абаперу, который будет искать откуда растут ноги у данной картинки, можно назвать само изображение в соответствии с передаваемым в шаблон полем ABAP

image

Вот так будет понятнее, но чтобы минимизировать количество проклятий, можно сделать еще проще

Просто указать поле вместе с шаблоном для картинки в одной ячейке Excel image


Результат Excel

image


2) Word

Кузен Excel также имеет поле альтернативный текст.
Но легко ли его заметить? В Word есть закладки и гиперссылки, но они также имеют тот же не достаток image

В примечаниях его заметить будет намного проще image


Результат Word

image


3) Pdf

И на конец, горячо любимый формат печати Pdf & LiveCycle Designer

Может не только использовать тексты, и менять тип на Image image

Но и позволяет, при определенном желании, давать имена в фигурных скобках на вкладке XML Source image

Но можно также указать его в URL (правда это не так заметно)

image


Результат Pdf

image