Форум: "Основная";
Текущий архив: 2003.05.26;
Скачать: [xml.tar.bz2];
ВнизЗапись цвета в поток Найти похожие ветки
← →
Vick (2003-05-15 13:13) [0]Доброго всем дня!
Может кто подскажет чайнику, как зансти в поток цвет. Со строками и числами понятно, типа Stream.WriteBuffer(AValue, 8), где AValue: double и т.п, а как цвет текста туда занести??
Это нужно для переноса данных в Эксель из DBGrid, т.е. перенести из него данные и соответсвенно цвета, шрифты и ширину колонок.
Заранее спасибо за ответ.
← →
clickmaker (2003-05-15 13:16) [1]Имеешь в виду TColor? Так это тот же DWORD. ColorToRGB и в поток
← →
Карелин Артем (2003-05-15 13:16) [2]И эксель понимает?? Можно мне код посмотреть, опытом поделиться?? Я с екселем частенько общаюсь...
Короче цвет от 4-байтового целого числа ничем не отличается...
← →
Skier (2003-05-15 13:16) [3]>Vick
1) Не понял ! Почему double ?
2)
> а как цвет текста туда занести??
TFont.Color - это имеется в виду ?
← →
Карелин Артем (2003-05-15 13:18) [4]clickmaker © (15.05.03 13:16)
А зачем ColorToRGB использовать??
← →
Digitman (2003-05-15 13:18) [5]var
MyColor: TColor;
...
Stream.WriteBuffer(MyColor, SizeOf(MyColor));
общий же случай ничем не отличается от случая с "цветом"
можно и "запах" и "вкус" записать в поток)))
var
MyVariable: TMyType;
...
Stream.WriteBuffer(MyVariable, SizeOf(MyVariable));
← →
Palladin (2003-05-15 13:23) [6]другое дело: в каком же виде эксель этот цвет от тебя ожидает
← →
Vick (2003-05-15 13:36) [7]Даю конкретную установку: есть такая библиотека EhLib, в ней есть процедуры конвертирования в разные типы файлов, в том числе и в Эксель. Так вот я пытаюсь переисать эту процедуру так, чтобы она писала в Эксель кроме текста, еще и остальные установки грида, а эта фигня вся делается через потоки...
← →
vuk (2003-05-15 13:44) [8]Тогда для начала неплохо бы формат файлов Excel знать. Там, кстати, цвета не абсолютные, а из внутренней таблицы, которая для каждого файла может быть сформирована своя.
← →
Vick (2003-05-15 14:54) [9]>vuk ©
Ой, а как узнать формать файла Excel и как потом ему цвета туда запузырить???
← →
vuk (2003-05-15 14:59) [10]Информации по формату Excel в открытом доступе нет. Если повезет, может найдёте выпуск MSDN на CD где-то за 1998-99 годы. Там эта информация была.
← →
Vick (2003-05-15 15:11) [11]> vuk ©
Ну хорошо, а если не учитывать всякие форматы, как добраться до этой таблицы? И как в нее эти данные положить?
← →
vuk (2003-05-15 15:16) [12]Не зная формата Excel, экспорт в Excel можно сделать только средствами самого Excel. Так что к Вас вариантов несколько:
1. Оставить всё как есть.
2. Разобраться-таки с форматом.
3. Найти готовое.
4. Сделать экспорт, используя сам Excel.
Я, в своё время, разбирался с форматом, правда мне для моих нужд выделение цветом было не нужно. :o)
← →
Vick (2003-05-15 15:35) [13]Что могут обозначать для Экселя такие массивы:
CXlsBof: array[0..5] of Word = ($809, 8, 0, $10, 0, 0);
CXlsEof: array[0..1] of Word = ($0A, 00);
CXlsLabel: array[0..5] of Word = ($204, 0, 0, 0, 0, 0);
CXlsNumber: array[0..4] of Word = ($203, 14, 0, 0, 0);
CXlsRk: array[0..4] of Word = ($27E, 10, 0, 0, 0);
← →
vuk (2003-05-15 15:51) [14]Это куски записей BIFF файла для хранения служебных данных и данных ячеек.
Bof - begin of file
Eof - End of file
Label - текст
Number - число с плаывающей точкой.
RK - целое число (есть 4 различных формата)
← →
Vick (2003-05-15 16:25) [15]ЛОгично, ато сам цифры обозначают?
← →
vuk (2003-05-15 16:53) [16]Заголовок записи, понятное дело.:o) Тип и длина.
P.S. Я Вам формат Excel здесь расписывать не буду, даже не надейтесь, это документ не на один мегабайт. Надо - занимайтесь самостоятельно, где искать - я уже написал.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.05.26;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.008 c