blob: 16d68f3e4cb9a7c06d614645c1ce5e459a11353a [file] [log] [blame]
Andrew Nguyen8f1836c2009-07-15 22:00:22 -05001/*
2 * Copyright (c) 2009 Andrew Nguyen
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
13 *
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17 */
18
19#ifndef __WINE_T2EMBAPI_H
20#define __WINE_T2EMBAPI_H
21
22#ifdef __cplusplus
23extern "C" {
24#endif
25
Jacek Caban846c0e32012-02-07 16:00:05 +010026#define CHARSET_UNICODE 1
27#define CHARSET_DEFAULT 1
28#define CHARSET_SYMBOL 2
29#define CHARSET_GLYPHIDX 3
30
31#define LICENSE_INSTALLABLE 0x0000
32#define LICENSE_DEFAULT 0x0000
33#define LICENSE_NOEMBEDDING 0x0002
34#define LICENSE_PREVIEWPRINT 0x0004
35#define LICENSE_EDITABLE 0x0008
36
37#define TTLOAD_PRIVATE 0x0001
38
Andrew Nguyen8f1836c2009-07-15 22:00:22 -050039/* Possible return values. */
Michael Stefaniucad0f8b62011-11-22 00:59:59 +010040#define E_NONE __MSABI_LONG(0x0000)
41#define E_API_NOTIMPL __MSABI_LONG(0x0001)
Andrew Nguyen8f1836c2009-07-15 22:00:22 -050042
43typedef ULONG (WINAPIV * READEMBEDPROC)(void*,void*,ULONG);
André Hentschel29d58872011-03-03 13:09:56 +010044typedef ULONG (WINAPIV * WRITEEMBEDPROC)(void*,void*,ULONG);
Andrew Nguyen8f1836c2009-07-15 22:00:22 -050045
46typedef struct
47{
48 unsigned short usStructSize;
49 unsigned short usRefStrSize;
50 unsigned short *pusRefStr;
51} TTLOADINFO;
52
André Hentschel29d58872011-03-03 13:09:56 +010053typedef struct
54{
55 unsigned short usStructSize;
56 unsigned short usRootStrSize;
57 unsigned short *pusRootStr;
58} TTEMBEDINFO;
59
Andrew Nguyen8f1836c2009-07-15 22:00:22 -050060LONG WINAPI TTLoadEmbeddedFont(HANDLE*,ULONG,ULONG*,ULONG,ULONG*,READEMBEDPROC,
61 LPVOID,LPWSTR,LPSTR,TTLOADINFO*);
Jacek Caban846c0e32012-02-07 16:00:05 +010062LONG WINAPI TTDeleteEmbeddedFont(HANDLE,ULONG,ULONG*);
Andrew Nguyen8f1836c2009-07-15 22:00:22 -050063
Nikolay Sivovb16b1222010-03-30 21:48:32 +040064/* embedding privileges */
65#define EMBED_PREVIEWPRINT 1
66#define EMBED_EDITABLE 2
67#define EMBED_INSTALLABLE 3
68#define EMBED_NOEMBEDDING 4
69
70LONG WINAPI TTGetEmbeddingType(HDC, ULONG*);
71
Andrew Nguyen8f1836c2009-07-15 22:00:22 -050072#ifdef __cplusplus
73}
74#endif
75
76#endif