|
| БЕСПЛАТНАЯ ежедневная online лотерея! Выигрывай каждый день БЕСПЛАТНО! |
|
|
GdiComment
The GdiComment function copies a comment from a buffer into a specified enhanced-format metafile.
BOOL GdiComment(
HDC hdc, // handle to a device context UINT cbSize, // size of text buffer CONST BYTE *lpData // pointer to text buffer );
Parameters
hdc
Identifies an enhanced-metafile device context.
cbSize
Specifies the length of the comment buffer, in bytes.
lpData
Points to the buffer that contains the comment.
Return Values
If the function succeeds, the return value is nonzero. If the function fails, the return value is zero.
Remarks
A comment can include any kind of private information ѕ for example, the source of a picture and the date it was created. A comment should begin with an application signature, followed by the data. Comments should not contain application-specific or position-specific data. Position-specific data specifies the location of a record, and it should not be included because one metafile may be embedded within another metafile. A public comment is a comment that begins with the comment signature identifier GDICOMMENT_IDENTIFIER. The following public comments are defined:
Comment Description GDICOMMENT_WINDOWS_METAFILE The GDICOMMENT_WINDOWS_METAFILE public comment contains a Windows-format metafile that is equivalent to an enhanced-format metafile. This comment is written only by the SetWinMetaFileBits function. The comment record, if given, follows the ENHMETAHEADER metafile record. The comment has the following form:
DWORD ident; // This contains GDICOMMENT_IDENTIFIER. DWORD iComment; // This contains GDICOMMENT_WINDOWS_METAFILE. DWORD nVersion; // This contains the version number of the // Windows-format metafile. DWORD nChecksum; // This is the additive DWORD checksum for // the enhanced metafile. The checksum // for the enhanced metafile data including // this comment record must be zero.
// Otherwise, the enhanced metafile has been // modified and the Windows-format // metafile is no longer valid. DWORD fFlags; // This must be zero. DWORD cbWinMetaFile; // This is the size, in bytes. of the // Windows-format metafile data that follows.
GDICOMMENT_BEGINGROUP The GDICOMMENT_BEGINGROUP public comment identifies the beginning of a group of drawing records. It identifies an object within an enhanced metafile. The comment has the following form:
DWORD ident; // This contains GDICOMMENT_IDENTIFIER. DWORD iComment; // This contains GDICOMMENT_BEGINGROUP. RECTL rclOutput; // This is the bounding rectangle for the // object in logical coordinates. DWORD nDescription; // This is the number of characters in the // optional Unicode description string that // follows. This is zero if there is no // description string.
GDICOMMENT_ENDGROUP The GDICOMMENT_ENDGROUP public comment identifies the end of a group of drawing records. The GDICOMMENT_BEGINGROUP comment and the GDICOMMENT_ENDGROUP comment must be included in a pair and may be nested. The comment has the following form:
DWORD ident; // This contains GDICOMMENT_IDENTIFIER. DWORD iComment; // This contains GDICOMMENT_ENDGROUP.
GDICOMMENT_MULTIFORMATS The GDICOMMENT_MULTIFORMATS public comment allows multiple definitions of a picture to be included in an enhanced metafile. Using this comment, for example, an application can include an encapsulated PostScript definition as well as an enhanced metafile definition of a picture. When the record is played back, GDI selects and renders the first format recognized by the device. The comment has the following form:
DWORD ident; // This contains GDICOMMENT_IDENTIFIER. DWORD iComment; // This contains GDICOMMENT_MULTIFORMATS. RECTL rclOutput; // This is the bounding rectangle for the // picture in logical coordinates. DWORD nFormats; // This contains the number of formats in // the comment. EMRFORMAT aemrformat[1];// This is an array of EMRFORMAT structures // in the order of preference. The data
// for each format follows the last // EMRFORMAT structure.
The EMRFORMAT structure has the following form:
typedef struct tagEMRFORMAT { DWORD dSignature; DWORD nVersion; DWORD cbData; DWORD offData; } EMRFORMAT;
See Also
CreateEnhMetaFile, EMRFORMAT, SetWinMetaFileBits
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
GdiComment
Функция GdiComment копирует комментарий из буфера в расширенный формат определенного метафайла.
BOOL GdiComment(
HDC hdc, // РУЧКА в контекст устройства UINT cbSize, // размера текстового буферного БАЙТА CONST *указатель lpData // в текстовый буфер );
Параметры
hdc
Идентифицирует контекст расширенного метафайла устройства.
cbSize
Определяет длину буфера комментария, в байтах.
lpData
Точки на буфер, которые содержат комментарий.
Обратные Величины
Если функция добивается успеха, обратная величина ненулевая. Если функция терпит неудачу, обратная величина нулевая.
Замечания
Комментарий может включить любой тип частной информации U например, источник изображения и дата было создано. Комментарий должен начинать с прикладной сигнатуры, сопровожденной данными. Комментарии не должны содержать специализированные или позиционировать-специфические данные. Позиционировать-специфические данные определяет позицию записи, и это не должно включано поскольку один метафайл может быть вставлен в пределах другого метафайла. Общественный комментарий является комментарием, который начинает с идентификатора сигнатуры комментария GDICOMMENT_IDENTIFIER. Следующие общественные комментарии определены:
Комментарий Description GDICOMMENT_WINDOWS_METAFILE Общественный комментарий GDICOMMENT_WINDOWS_METAFILE содержит метафайл формата Windows-, который - эквивалент расширенному формату метафайла. Этот комментарий записывается только функцией SetWinMetaFileBits. Запись комментария, если дано, было последовано за записью метафайла ENHMETAHEADER. Комментарий имеет следующее формы:
DWORD ident; // Это содержит GDICOMMENT_IDENTIFIER. iComment DWORD; // Это содержит GDICOMMENT_WINDOWS_METAFILE. DWORD nVersion; // Это содержит номер версии // метафайла формата Windows-. DWORD nChecksum; // Это - контрольная сумма добавки DWORD для // расширенный метафайл. Контрольная сумма // для расширенных данных метафайла включая // эту запись комментария должно - нулевым.
// В противном случае, расширенный метафайл был // модифицировать и формат / Windows-/ метафайл больше правильный. DWORD fFlags; // Это должно - нулевым. DWORD cbWinMetaFile; // Это - размер, в bytes. // данных метафайла формата Windows-, который следует.
GDICOMMENT_BEGINGROUP Общественный комментарий GDICOMMENT_BEGINGROUP идентифицирует начало группы чертежа записей. Это идентифицирует объект в пределах расширенного метафайла. Комментарий имеет следующее формы:
DWORD ident; // Это содержит GDICOMMENT_IDENTIFIER. iComment DWORD; // Это содержит GDICOMMENT_BEGINGROUP. RECTL rclOutput; // Это - прямоугольник bounding для // объекта в логических координатах. DWORD nDescription; // Это - количество символов в // строке описания дополнительного Уникода, что // следует. Это - нуль если нет // описания строки.
GDICOMMENT_ENDGROUP Общественный комментарий GDICOMMENT_ENDGROUP идентифицирует конец группы чертежа записей. Комментарий GDICOMMENT_BEGINGROUP и комментарий GDICOMMENT_ENDGROUP должны быть включены в пару и могут быть вложены. Комментарий имеет следующее формы:
DWORD ident; // Это содержит GDICOMMENT_IDENTIFIER. iComment DWORD; // Это содержит GDICOMMENT_ENDGROUP.
GDICOMMENT_MULTIFORMATS Общественный комментарий GDICOMMENT_MULTIFORMATS допускает многочисленные определения изображения, которое нужно включаться в расширенный метафайл. Используя этот комментарий, например, приложение может включить скрытое определение PostScript, а также расширенное определение метафайла изображения. Когда запись сыграна, GDI выбирается и предоставляет первый формат признанный устройством. Комментарий имеет следующее формы:
DWORD ident; // Это содержит GDICOMMENT_IDENTIFIER. iComment DWORD; // Это содержит GDICOMMENT_MULTIFORMATS. RECTL rclOutput; // Это - прямоугольник bounding для // изображения в логических координатах. DWORD nFormats; // Это содержит количество форматов в // комментарий. EMRFORMAT aemrformat[1];// ЭТО - массив структур / EMRFORMAT/ в порядке предпочтения. Данные
// для каждого формата следует за последней // структурой EMRFORMAT.
Структура EMRFORMAT имеет следующее формы:
typedef struct tagEMRFORMAT { dSignature DWORD; DWORD nVersion; DWORD cbData; DWORD offData; } EMRFORMAT;
Смотри Также
CreateEnhMetaFile, EMRFORMAT, SetWinMetaFileBits
|
|
|
|
| |