Table.RenderToPicture

From SunFlurry wiki
Jump to: navigation, search
  RenderToPicture (Работа с печатью и выводом)
Объект:Электронная таблица
Статус разработки: Реализована
Тип:Функция
Обращение к БД:Нет
Исключения:Неверные аргументы, системная ошибка.
Визуальность:Нет

Функция подготавливает печать таблицы на принтер (деление на страницы, колонтитулы и пр.), однако, выводит информацию в виде картинок в формате BMP вместо печати. Аргумент задает установки для создания картинок, такие как ширина и высота каждой картинки, глубина ее цвета, дипазон страниц для вывода и пр.

Синтаксис

Table.RenderToPicture(<Список с настройками для создания рисунков (LIST)>):<Картинки в формате BMP (LIST)>

Аргументы

  • <Список с настройками для создания рисунков (LIST)> - Список содержит настройки, наименованиями служат перечисленные ниже наименования настроек, значениями -- их значения.
    • PaperWidth, Width -- настройка задает ширину картинок в точках. Настройка должна обязательно присутствовать.
    • PaperHeight, Height -- настройка задает высоту картинок в точках. Настройка должна обязательно присутствовать.
    • BPP -- настройка задает глубину цвета в создаваемых картинках. По умолчанию 16. Разрешено использовать значения: 8, 16, 24 и 32.
    • FromPage, ToPage -- настройки задают начальную и конечную страницу таблицы для превращения в картинки. По умолчанию превращать все страницы.
    • DPI -- настройка задают плотность точек на бумаге (Dots per inch), которая используется только для определения размеров полей страницы, так как поля задаются в миллиметрах, а не в точках. По умолчанию этот параметр задается как 300. Также часто используются значения 72, 150, 600, но значение может быть любым. Используя это значение размер поля будет вычисляться по формуле <Поле в мм>/25.4*<dpi>.

Возвращаемое значение

Функция возвращает список с некоторым числом объектов типа картинка.

Примеры

пТекст:="Текст для поле в таблице";
Т:=Table.Create();
Т.SetSourceName("Modules\FreeForms\СвободныеТаблицы\ТекстНаЭтикетке");

Т.CopyByX("v31",1);
Т.Area(1,1).WrappingMode:=1;
Т.Printing.Fields.Up:=0;
Т.Printing.Fields.Down:=0;
Т.Printing.Fields.Left:=0;
Т.Printing.Fields.Right:=0;
Т.Printing.Titles.Up.Size:=0;
Т.Printing.Titles.Down.Size:=0;
Т.Printing.PageOptions:=_PRN_PAGE_CENTERX+_PRN_PAGE_CENTERY;
Т.Printing.ScaleMode:=3;

//Параметры превращения в картинку
aList:=List.Create();
//Размеры в точках
aList["Width"]:=600;
aList["Height"]:=200;
//Глубина цвета (16 бит)
aList["BPP"]:=16;

//Должна получиться всего одна картинка
bList:=Т.RenderToPicture(aList);
//Сохраним в файл без изменения формата
bList[1].Save("c:\picture.bmp","bmp");