/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* * This file is part of the LibreOffice project. * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. * * This file incorporates work covered by the following license notice: * * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed * with this work for additional information regarding copyright * ownership. The ASF licenses this file to you under the Apache * License, Version 2.0 (the "License"); you may not use this file * except in compliance with the License. You may obtain a copy of * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ #ifndef com_sun_star_graphic_MediaProperties_idl #define com_sun_star_graphic_MediaProperties_idl #include #include #include module com { module sun { module star { module graphic { /** This service describes the properties that are used when using the XGraphicProvider interface methods */ published service MediaProperties { /** Property that describes the location of the source or target of the graphic as URL.

A URL can be used instead of the #InputStream or #OutputStream property

In addition to the normal protocols like file:// or http:// you can use private URLs as follows to get access to graphics lying inside the resource system within an Office context:

  • private:resource/projectshortname/bitmap/12345
  • private:resource/projectshortname/bitmapex/12345
  • private:resource/projectshortname/image/12345
  • private:resource/projectshortname/imagelist/12345
  • private:resource/projectshortname/imagelist/12345/12
And additionally, GraphicObject scheme URLs like
  • vnd.sun.star.GraphicObject:10000000000001940000012FB99807BD
can be used to access graphics held by the GraphicCache implementation.

Yet more, you can access graphics in the application-wide image repository by specifying URLs of the form private:graphicrepository/<path_in_repository>.

*/ [optional, property ] string URL; /** This property is only used for loading graphics or querying graphic descriptors

A #InputStream can be used instead of the #URL property

@see com::sun::star::io::XInputStream */ [optional, property ] ::com::sun::star::io::XInputStream InputStream; /** This property is only used for storing graphics

A #OutputStream can be used instead of the #URL property

@see com::sun::star::io::XStream */ [optional, property ] ::com::sun::star::io::XStream OutputStream; /** This property is only used for storing graphics and describes the format into which the graphic is to be converted

At the moment, the following mime types are supported for storing graphics:

  • image/bmp
  • image/gif
  • image/jpeg
  • image/png
  • image/tiff
  • image/svg+xml
  • image/x-cmu-raster
  • image/x-emf
  • image/x-eps
  • image/x-met
  • image/x-pict
  • image/x-portable-bitmap
  • image/x-portable-pixmap
  • image/x-wmf
  • image/x-svm
  • image/x-xpixmap
  • image/x-vclgraphic
*/ [optional, property ] string MimeType; /** Additional properties that will be passed to the appropriate filter module. */ [optional, property] ::com::sun::star::beans::PropertyValues FilterData; }; } ; } ; } ; } ; #endif /* vim:set shiftwidth=4 softtabstop=4 expandtab: */