Полупрозрачные объекты в ТРВ-Редакторе (TRichView)

<< Нажмите, чтобы показать Содержание >>

Полупрозрачные объекты в ТРВ-Редакторе (TRichView)

Документы могут содержать объекты с прозрачными и полупрозрачными областями, такие как:

рисунки (например, GIF, PNG, значки, bitmap с альфа-каналом)

фон абзаца (с указанной степенью непрозрачности Opacity)

фон таблицы (который может включать прозрачные изображения и полупрозрачную заливку цветом)

фон ячейки таблицы (который может включать прозрачные изображения и полупрозрачную заливку цветом)

фон сноски в рамке и текстовых полей (с указанной непрозрачностью), показываемых только при печати в TRVPrint и в СРВ-Редакторе (ScaleRichView).

Примечание FireMonkey: в FireMonkey любые цвета могут быть полупрозрачными, поэтому любой объект может быть полупрозрачным. Свойства, задающие степень непрозрачности (Opacity), применяются в дополнение к прозрачности цвета.

Печать в TRVPrint [VCL и Lazarus]

Большинство принтеров не поддерживают рисование полупрозрачных объектов, поэтому TRVPrint рисует полупрозрачные объекты следующим образом:

1.создаёт растровое изображение,

2.рисует фон под прозрачным объектом в этом растровом изображении,

3.рисует этот объект в этом растровом изображении,

4.печатает это растровое изображение.

TRVPrint имеет ограниченную поддержку прозрачности в сносках в рамке и текстовых полях (при рисовании на шаге 2):

через прозрачную область нельзя увидеть другие сноски в рамке и текстовые поля;

через прозрачную область в боковой заметке или текстовом поле виден только фон страницы (но не содержимое);

TRVPrint не поддерживает текстурированные фоны в повёрнутых объектах (вместо них используется простой цвет).

Примечание FireMonkey: в FireMonkey ТРВ-Редакторе не использует специальные методы для печати полупрозрачных объектов, поскольку стандартное рисование дает хорошие результаты.

Рисование и печать в TRVReportHelper

При печати TRVReportHelper использует тот же метод (с использованием растровых изображений для рисования полупрозрачных объектов), что и TRVPrint.

При выводе на экран TRVReportHelper может либо рисовать с полупрозрачностью, либо использовать растровые изображения (в зависимости от свойства AllowTransparentDrawing).

srv_icon Рисование и печать в СРВ-Редакторе (ScaleRichView)

В TSRichViewEdit рисование на экране аналогично рисованию в TRichViewEdit: компонент использует соответствующие методы для полупрозрачного рисования.

При печати, как и TRVPrint, TSRichViewEdit использует растровое изображение для рисования полупрозрачных областей. Однако шаг 2 (рисование фона под прозрачным объектом в растровом изображении) реализован иначе. При рисовании фона под прозрачным объектом TSRichViewEdit рисует все слои страницы под объектом. Благодаря этому, через прозрачные области можно видеть текстовые поля и сноски в рамке, а через прозрачные области в текстовых полях и сносках в рамке – основной документ.

В TSRichViewEdit нет ограничений на печать фонов повёрнутых объектов.

Растровые изображения, созданные для рисования полупрозрачных областей в СРВ-Редакторе, создаются с плотностью пикселей 96 dpi. Из-за этого при печати на принтерах с высоким разрешением полупрозрачные области печатаются более грубо, чем окружающий текст.