1*cdf0e10cSrcweir/*************************************************************************
2*cdf0e10cSrcweir *
3*cdf0e10cSrcweir * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4*cdf0e10cSrcweir *
5*cdf0e10cSrcweir * Copyright 2000, 2010 Oracle and/or its affiliates.
6*cdf0e10cSrcweir *
7*cdf0e10cSrcweir * OpenOffice.org - a multi-platform office productivity suite
8*cdf0e10cSrcweir *
9*cdf0e10cSrcweir * This file is part of OpenOffice.org.
10*cdf0e10cSrcweir *
11*cdf0e10cSrcweir * OpenOffice.org is free software: you can redistribute it and/or modify
12*cdf0e10cSrcweir * it under the terms of the GNU Lesser General Public License version 3
13*cdf0e10cSrcweir * only, as published by the Free Software Foundation.
14*cdf0e10cSrcweir *
15*cdf0e10cSrcweir * OpenOffice.org is distributed in the hope that it will be useful,
16*cdf0e10cSrcweir * but WITHOUT ANY WARRANTY; without even the implied warranty of
17*cdf0e10cSrcweir * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18*cdf0e10cSrcweir * GNU Lesser General Public License version 3 for more details
19*cdf0e10cSrcweir * (a copy is included in the LICENSE file that accompanied this code).
20*cdf0e10cSrcweir *
21*cdf0e10cSrcweir * You should have received a copy of the GNU Lesser General Public License
22*cdf0e10cSrcweir * version 3 along with OpenOffice.org.  If not, see
23*cdf0e10cSrcweir * <http://www.openoffice.org/license.html>
24*cdf0e10cSrcweir * for a copy of the LGPLv3 License.
25*cdf0e10cSrcweir *
26*cdf0e10cSrcweir ************************************************************************/
27*cdf0e10cSrcweir
28*cdf0e10cSrcweir#ifndef com_sun_star_graphic_GraphicDescriptor_idl
29*cdf0e10cSrcweir#define com_sun_star_graphic_GraphicDescriptor_idl
30*cdf0e10cSrcweir
31*cdf0e10cSrcweir#include <com/sun/star/graphic/GraphicType.idl>
32*cdf0e10cSrcweir#include <com/sun/star/beans/XPropertySet.idl>
33*cdf0e10cSrcweir#include <com/sun/star/awt/Size.idl>
34*cdf0e10cSrcweir
35*cdf0e10cSrcweirmodule com { module sun { module star { module graphic
36*cdf0e10cSrcweir{
37*cdf0e10cSrcweir
38*cdf0e10cSrcweir/** This service describes all graphic properties that are available
39*cdf0e10cSrcweir	via the <type scope="com::sun::star::beans">XPropertySet</type> interface
40*cdf0e10cSrcweir
41*cdf0e10cSrcweir	@see XPropertySet
42*cdf0e10cSrcweir*/
43*cdf0e10cSrcweirpublished service GraphicDescriptor
44*cdf0e10cSrcweir{
45*cdf0e10cSrcweir    /** The property interface by which the properties of all
46*cdf0e10cSrcweir        supported services are exchanged
47*cdf0e10cSrcweir    */
48*cdf0e10cSrcweir    interface ::com::sun::star::beans::XPropertySet;
49*cdf0e10cSrcweir
50*cdf0e10cSrcweir	/** The type of the graphic
51*cdf0e10cSrcweir
52*cdf0e10cSrcweir		@see GraphicType
53*cdf0e10cSrcweir	*/
54*cdf0e10cSrcweir	[property] byte GraphicType;
55*cdf0e10cSrcweir
56*cdf0e10cSrcweir	/** The MimeType of the loaded graphic
57*cdf0e10cSrcweir
58*cdf0e10cSrcweir		<p> The mime can be the original mime type of the graphic
59*cdf0e10cSrcweir		source the graphic container was constructed from or it
60*cdf0e10cSrcweir		can be the internal mime type image/x-vclgraphic, in which
61*cdf0e10cSrcweir		case the original mime type is not available anymore</p>
62*cdf0e10cSrcweir
63*cdf0e10cSrcweir		<p> Currently, the following mime types are supported for
64*cdf0e10cSrcweir		loaded graphics:<\p>
65*cdf0e10cSrcweir		<ul>
66*cdf0e10cSrcweir			<li>image/bmp</li>
67*cdf0e10cSrcweir			<li>image/gif</li>
68*cdf0e10cSrcweir			<li>image/jpeg</li>
69*cdf0e10cSrcweir			<li>image/x-photo-cd</li>
70*cdf0e10cSrcweir			<li>image/x-pcx</li>
71*cdf0e10cSrcweir			<li>image/png</li>
72*cdf0e10cSrcweir			<li>image/tiff</li>
73*cdf0e10cSrcweir			<li>image/x-xbitmap</li>
74*cdf0e10cSrcweir			<li>image/x-xpixmap</li>
75*cdf0e10cSrcweir			<li>image/x-portable-bitmap</li>
76*cdf0e10cSrcweir			<li>image/x-portable-graymap</li>
77*cdf0e10cSrcweir			<li>image/x-portable-pixmap</li>
78*cdf0e10cSrcweir			<li>image/x-cmu-raster</li>
79*cdf0e10cSrcweir			<li>image/x-targa</li>
80*cdf0e10cSrcweir			<li>image/x-photoshop</li>
81*cdf0e10cSrcweir			<li>image/x-eps</li>
82*cdf0e10cSrcweir			<li>image/x-dxf</li>
83*cdf0e10cSrcweir			<li>image/x-met</li>
84*cdf0e10cSrcweir			<li>image/x-pict</li>
85*cdf0e10cSrcweir			<li>image/x-sgf</li>
86*cdf0e10cSrcweir			<li>image/x-svm</li>
87*cdf0e10cSrcweir			<li>image/x-wmf</li>
88*cdf0e10cSrcweir			<li>image/x-sgv</li>
89*cdf0e10cSrcweir			<li>image/x-emf</li>
90*cdf0e10cSrcweir			<li>image/x-vclgraphic</li>
91*cdf0e10cSrcweir		</ul>
92*cdf0e10cSrcweir
93*cdf0e10cSrcweir	*/
94*cdf0e10cSrcweir	[property] string MimeType;
95*cdf0e10cSrcweir
96*cdf0e10cSrcweir	/** The Size of the graphic in pixel.
97*cdf0e10cSrcweir
98*cdf0e10cSrcweir		<p> This property may not be available in case of
99*cdf0e10cSrcweir		vector graphics or if the pixel size can not be
100*cdf0e10cSrcweir		determined correctly for some formats without loading
101*cdf0e10cSrcweir		the whole graphic</p>
102*cdf0e10cSrcweir	*/
103*cdf0e10cSrcweir	[optional, property] ::com::sun::star::awt::Size SizePixel;
104*cdf0e10cSrcweir
105*cdf0e10cSrcweir	/** The Size of the graphic in 100th mm.
106*cdf0e10cSrcweir
107*cdf0e10cSrcweir		<p> This property may not be available in case of
108*cdf0e10cSrcweir		pixel graphics or if the logical size can not be
109*cdf0e10cSrcweir		determined correctly for some formats without loading
110*cdf0e10cSrcweir		the whole graphic</p>
111*cdf0e10cSrcweir	*/
112*cdf0e10cSrcweir	[optional, property] ::com::sun::star::awt::Size Size100thMM;
113*cdf0e10cSrcweir
114*cdf0e10cSrcweir	/** The number of bits per pixel used for the pixel graphic
115*cdf0e10cSrcweir
116*cdf0e10cSrcweir		<p> This property is not available for vector
117*cdf0e10cSrcweir		graphics and may not be available for some kinds
118*cdf0e10cSrcweir		of pixel graphics</p>
119*cdf0e10cSrcweir	*/
120*cdf0e10cSrcweir	[optional, property] byte BitsPerPixel;
121*cdf0e10cSrcweir
122*cdf0e10cSrcweir	/** Indicates that it is a transparent graphic
123*cdf0e10cSrcweir
124*cdf0e10cSrcweir		<p>This property is always <TRUE/> for vector graphics.
125*cdf0e10cSrcweir		The status of this flag is not always clear if the
126*cdf0e10cSrcweir		graphic was not loaded at all, e.g. in case of just
127*cdf0e10cSrcweir		querying for the <type>GraphicDescriptor</type>.</p>
128*cdf0e10cSrcweir	*/
129*cdf0e10cSrcweir	[optional, property] boolean Transparent;
130*cdf0e10cSrcweir
131*cdf0e10cSrcweir	/** Indicates that it is a pixel graphic with an alpha channel
132*cdf0e10cSrcweir
133*cdf0e10cSrcweir		<p>The status of this flag is not always clear if the
134*cdf0e10cSrcweir		graphic was not loaded at all, e.g. in case of just
135*cdf0e10cSrcweir		querying for the <type>GraphicDescriptor</type></p>
136*cdf0e10cSrcweir	*/
137*cdf0e10cSrcweir	[optional, property] boolean Alpha;
138*cdf0e10cSrcweir
139*cdf0e10cSrcweir	/** Indicates that it is a graphic that consists of several
140*cdf0e10cSrcweir		frames that can be played as an animation
141*cdf0e10cSrcweir
142*cdf0e10cSrcweir		<p>The status of this flag is not always clear if the
143*cdf0e10cSrcweir		graphic was not loaded at all, e.g. in case of just
144*cdf0e10cSrcweir		querying for the <type>GraphicDescriptor</type></p>
145*cdf0e10cSrcweir	*/
146*cdf0e10cSrcweir	[optional, property] boolean Animated;
147*cdf0e10cSrcweir};
148*cdf0e10cSrcweir
149*cdf0e10cSrcweir} ; } ; } ; } ;
150*cdf0e10cSrcweir
151*cdf0e10cSrcweir#endif
152