1*ddde725dSArmin Le Grand/**************************************************************
2*ddde725dSArmin Le Grand *
3*ddde725dSArmin Le Grand * Licensed to the Apache Software Foundation (ASF) under one
4*ddde725dSArmin Le Grand * or more contributor license agreements.  See the NOTICE file
5*ddde725dSArmin Le Grand * distributed with this work for additional information
6*ddde725dSArmin Le Grand * regarding copyright ownership.  The ASF licenses this file
7*ddde725dSArmin Le Grand * to you under the Apache License, Version 2.0 (the
8*ddde725dSArmin Le Grand * "License"); you may not use this file except in compliance
9*ddde725dSArmin Le Grand * with the License.  You may obtain a copy of the License at
10*ddde725dSArmin Le Grand *
11*ddde725dSArmin Le Grand *   http:\\www.apache.org\licenses\LICENSE-2.0
12*ddde725dSArmin Le Grand *
13*ddde725dSArmin Le Grand * Unless required by applicable law or agreed to in writing,
14*ddde725dSArmin Le Grand * software distributed under the License is distributed on an
15*ddde725dSArmin Le Grand * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*ddde725dSArmin Le Grand * KIND, either express or implied.  See the License for the
17*ddde725dSArmin Le Grand * specific language governing permissions and limitations
18*ddde725dSArmin Le Grand * under the License.
19*ddde725dSArmin Le Grand *
20*ddde725dSArmin Le Grand *************************************************************/
21*ddde725dSArmin Le Grand#ifndef __com_sun_star_graphic_XPrimitive2DRenderer_idl__
22*ddde725dSArmin Le Grand#define __com_sun_star_graphic_XPrimitive2DRenderer_idl__
23*ddde725dSArmin Le Grand
24*ddde725dSArmin Le Grand#include <com/sun/star/uno/XInterface.idl>
25*ddde725dSArmin Le Grand#include <com/sun/star/rendering/XBitmap.idl>
26*ddde725dSArmin Le Grand#include <com/sun/star/beans/PropertyValue.idl>
27*ddde725dSArmin Le Grand#include <com/sun/star/geometry/RealRectangle2D.idl>
28*ddde725dSArmin Le Grand
29*ddde725dSArmin Le Grandmodule com {  module sun {  module star {  module graphic {
30*ddde725dSArmin Le Grand
31*ddde725dSArmin Le Grandinterface XPrimitive2D;
32*ddde725dSArmin Le Grand
33*ddde725dSArmin Le Grand/** XPrimitive2DRenderer interface
34*ddde725dSArmin Le Grand
35*ddde725dSArmin Le Grand    This interface allows to convert from a sequence of XPrimitive2Ds
36*ddde725dSArmin Le Grand    to a XBitmap
37*ddde725dSArmin Le Grand */
38*ddde725dSArmin Le Grandinterface XPrimitive2DRenderer : ::com::sun::star::uno::XInterface
39*ddde725dSArmin Le Grand{
40*ddde725dSArmin Le Grand    /** return rasterized version of given XPrimitive2D
41*ddde725dSArmin Le Grand
42*ddde725dSArmin Le Grand		@param Primitive2DSequence
43*ddde725dSArmin Le Grand            The graphic content description
44*ddde725dSArmin Le Grand
45*ddde725dSArmin Le Grand		@param aViewInformationSequence
46*ddde725dSArmin Le Grand            The ViewInformation2D
47*ddde725dSArmin Le Grand
48*ddde725dSArmin Le Grand		@param DPI_X
49*ddde725dSArmin Le Grand			The horizontal resolution of the callers device in pixel per inch. This
50*ddde725dSArmin Le Grand            value is needed to calculate the correct dimensions of the graphic to be
51*ddde725dSArmin Le Grand            rasterized. If a value of <value>0</value> is given, a horizontal default
52*ddde725dSArmin Le Grand            resolution of 72 DPI is used.
53*ddde725dSArmin Le Grand
54*ddde725dSArmin Le Grand		@param DPI_Y
55*ddde725dSArmin Le Grand			The vertical resolution of the callers device in pixel per inch. This
56*ddde725dSArmin Le Grand            value is needed to calculate the correct dimensions of the graphic to be
57*ddde725dSArmin Le Grand            rasterized. If a value of <value>0</value> is given, a vertical default
58*ddde725dSArmin Le Grand            resolution of 72 DPI is used.
59*ddde725dSArmin Le Grand
60*ddde725dSArmin Le Grand        @param Range
61*ddde725dSArmin Le Grand			The range in 1/100th mm of the graphic to be rasterized
62*ddde725dSArmin Le Grand
63*ddde725dSArmin Le Grand        @param MaximumQuadraticPixels
64*ddde725dSArmin Le Grand            The maximum allowed number of pixels to be used to allow limiting the
65*ddde725dSArmin Le Grand            possible size of used pixels. The AspectRatio is preserved, the result
66*ddde725dSArmin Le Grand            gets limited to given number. If a value of 0 is given, a default of
67*ddde725dSArmin Le Grand            500000 is used.
68*ddde725dSArmin Le Grand     */
69*ddde725dSArmin Le Grand	com::sun::star::rendering::XBitmap rasterize(
70*ddde725dSArmin Le Grand        [in] sequence< XPrimitive2D > Primitive2DSequence,
71*ddde725dSArmin Le Grand        [in] sequence< ::com::sun::star::beans::PropertyValue > aViewInformationSequence,
72*ddde725dSArmin Le Grand        [in] unsigned long DPI_X,
73*ddde725dSArmin Le Grand        [in] unsigned long DPI_Y,
74*ddde725dSArmin Le Grand        [in] ::com::sun::star::geometry::RealRectangle2D Range,
75*ddde725dSArmin Le Grand        [in] unsigned long MaximumQuadraticPixels);
76*ddde725dSArmin Le Grand};
77*ddde725dSArmin Le Grand
78*ddde725dSArmin Le Grand}; }; }; };
79*ddde725dSArmin Le Grand
80*ddde725dSArmin Le Grand#endif
81