Inkscape
Vector Graphics Editor
|
#include <emf-inout.h>
Public Member Functions | |
bool | check (Inkscape::Extension::Extension *module) override |
Verify any dependencies. | |
void | save (Inkscape::Extension::Output *mod, SPDocument *doc, char const *filename) override |
std::unique_ptr< SPDocument > | open (Inkscape::Extension::Input *mod, char const *uri, bool is_importing) override |
Open a file. | |
![]() | |
Metafile ()=default | |
~Metafile () override | |
![]() | |
Implementation ()=default | |
virtual | ~Implementation ()=default |
virtual bool | load (Inkscape::Extension::Extension *) |
virtual void | unload (Inkscape::Extension::Extension *) |
virtual ImplementationDocumentCache * | newDocCache (Inkscape::Extension::Extension *, SPDesktop *) |
Create a new document cache object. | |
virtual bool | cancelProcessing () |
virtual void | commitDocument () |
virtual std::unique_ptr< SPDocument > | new_from_template (Inkscape::Extension::Template *) |
virtual void | get_template_presets (const Template *tmod, TemplatePresets &presets) const |
virtual void | resize_to_template (Inkscape::Extension::Template *tmod, SPDocument *doc, SPPage *page) |
virtual bool | match_template_size (Inkscape::Extension::Template *tmod, double width, double height) |
virtual void | save (Inkscape::Extension::Output *, SPDocument *, gchar const *) |
Find out information about the file. | |
virtual void | export_raster (Inkscape::Extension::Output *module, const SPDocument *doc, std::string const &png_file, gchar const *filename) |
Convert from PNG to raster format. | |
virtual Gtk::Widget * | prefs_effect (Inkscape::Extension::Effect *module, SPDesktop *desktop, sigc::signal< void()> *changeSignal, ImplementationDocumentCache *docCache) |
Find out information about the file. | |
virtual void | effect (Inkscape::Extension::Effect *, ExecutionEnv *, SPDesktop *, ImplementationDocumentCache *) |
virtual void | effect (Inkscape::Extension::Effect *, ExecutionEnv *, SPDocument *document) |
virtual bool | apply_filter (Inkscape::Extension::Effect *module, SPItem *item) |
virtual unsigned | setup (Inkscape::Extension::Print *) |
virtual unsigned | set_preview (Inkscape::Extension::Print *) |
virtual unsigned | begin (Inkscape::Extension::Print *, SPDocument *) |
virtual unsigned | finish (Inkscape::Extension::Print *) |
virtual bool | textToPath (Inkscape::Extension::Print *) |
Tell the printing engine whether text should be text or path. | |
virtual bool | fontEmbedded (Inkscape::Extension::Print *) |
Get "fontEmbedded" param, i.e. | |
virtual unsigned | bind (Inkscape::Extension::Print *, Geom::Affine const &, float) |
virtual unsigned | release (Inkscape::Extension::Print *) |
virtual unsigned | fill (Inkscape::Extension::Print *, Geom::PathVector const &, Geom::Affine const &, SPStyle const *, Geom::OptRect const &, Geom::OptRect const &, Geom::OptRect const &) |
virtual unsigned | stroke (Inkscape::Extension::Print *, Geom::PathVector const &, Geom::Affine const &, SPStyle const *, Geom::OptRect const &, Geom::OptRect const &, Geom::OptRect const &) |
virtual unsigned | image (Inkscape::Extension::Print *, unsigned char *, unsigned int, unsigned int, unsigned int, Geom::Affine const &, SPStyle const *) |
virtual unsigned | text (Inkscape::Extension::Print *, char const *, Geom::Point const &, SPStyle const *) |
virtual void | processPath (Inkscape::XML::Node *) |
virtual void | setDetachBase (bool detach) |
If detach = true, when saving to a file, don't store URIs relative to the filename. | |
Static Public Member Functions | |
static void | init () |
Static Protected Member Functions | |
static void | print_document_to_file (SPDocument *doc, const gchar *filename) |
static double | current_scale (PEMF_CALLBACK_DATA d) |
static std::string | current_matrix (PEMF_CALLBACK_DATA d, double x, double y, int useoffset) |
static double | current_rotation (PEMF_CALLBACK_DATA d) |
static void | enlarge_hatches (PEMF_CALLBACK_DATA d) |
static int | in_hatches (PEMF_CALLBACK_DATA d, char *test) |
static uint32_t | add_hatch (PEMF_CALLBACK_DATA d, uint32_t hatchType, U_COLORREF hatchColor) |
static void | enlarge_images (PEMF_CALLBACK_DATA d) |
static int | in_images (PEMF_CALLBACK_DATA d, const char *test) |
static uint32_t | add_image (PEMF_CALLBACK_DATA d, void *pEmr, uint32_t cbBits, uint32_t cbBmi, uint32_t iUsage, uint32_t offBits, uint32_t offBmi) |
static void | enlarge_gradients (PEMF_CALLBACK_DATA d) |
static int | in_gradients (PEMF_CALLBACK_DATA d, const char *test) |
static uint32_t | add_gradient (PEMF_CALLBACK_DATA d, uint32_t gradientType, U_TRIVERTEX tv1, U_TRIVERTEX tv2) |
static void | enlarge_clips (PEMF_CALLBACK_DATA d) |
static int | in_clips (PEMF_CALLBACK_DATA d, const char *test) |
static void | add_clips (PEMF_CALLBACK_DATA d, const char *clippath, unsigned int logic) |
static void | output_style (PEMF_CALLBACK_DATA d, int iType) |
static double | _pix_x_to_point (PEMF_CALLBACK_DATA d, double px) |
static double | _pix_y_to_point (PEMF_CALLBACK_DATA d, double py) |
static double | pix_to_x_point (PEMF_CALLBACK_DATA d, double px, double py) |
static double | pix_to_y_point (PEMF_CALLBACK_DATA d, double px, double py) |
static double | pix_to_abs_size (PEMF_CALLBACK_DATA d, double px) |
static void | snap_to_faraway_pair (double *x, double *y) |
static std::string | pix_to_xy (PEMF_CALLBACK_DATA d, double x, double y) |
static void | select_pen (PEMF_CALLBACK_DATA d, int index) |
static void | select_extpen (PEMF_CALLBACK_DATA d, int index) |
static void | select_brush (PEMF_CALLBACK_DATA d, int index) |
static void | select_font (PEMF_CALLBACK_DATA d, int index) |
static void | delete_object (PEMF_CALLBACK_DATA d, int index) |
static void | insert_object (PEMF_CALLBACK_DATA d, int index, int type, PU_ENHMETARECORD pObj) |
static int | AI_hack (PU_EMRHEADER pEmr) |
static uint32_t * | unknown_chars (size_t count) |
static void | common_image_extraction (PEMF_CALLBACK_DATA d, void *pEmr, double dx, double dy, double dw, double dh, int sx, int sy, int sw, int sh, uint32_t iUsage, uint32_t offBits, uint32_t cbBits, uint32_t offBmi, uint32_t cbBmi) |
static int | myEnhMetaFileProc (char *contents, unsigned int length, PEMF_CALLBACK_DATA d) |
static void | free_emf_strings (EMF_STRINGS name) |
![]() | |
static uint32_t | sethexcolor (U_COLORREF color) |
static pixel_t * | pixel_at (bitmap_t *bitmap, int x, int y) |
Construct a PNG in memory from an RGB from the EMF file. | |
static void | my_png_write_data (png_structp png_ptr, png_bytep data, png_size_t length) |
static void | toPNG (PMEMPNG accum, int width, int height, const char *px) |
static gchar * | bad_image_png () |
static void | setViewBoxIfMissing (SPDocument *doc) |
static int | combine_ops_to_livarot (const int op) |
Definition at line 165 of file emf-inout.h.
|
staticprotected |
Definition at line 962 of file emf-inout.cpp.
References Inkscape::Extension::Internal::EMF_CALLBACK_DATA::D2PscaleX, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::dc, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::level, scale, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::ScaleInX, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::ulCornerOutX, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::vieworg, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::winorg, and U_PAIR::x.
Referenced by pix_to_x_point().
|
staticprotected |
Definition at line 972 of file emf-inout.cpp.
References Inkscape::Extension::Internal::EMF_CALLBACK_DATA::D2PscaleY, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::dc, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::E2IdirY, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::level, scale, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::ScaleInY, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::ulCornerOutY, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::vieworg, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::winorg, and U_PAIR::y.
Referenced by pix_to_y_point().
|
staticprotected |
Definition at line 731 of file emf-inout.cpp.
References Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::clip_id, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::clips, Inkscape::Extension::Internal::Metafile::combine_ops_to_livarot(), Inkscape::Extension::Internal::EMF_STRINGS::count, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::dc, enlarge_clips(), fill_oddEven, in_clips(), Inkscape::Extension::Internal::EMF_CALLBACK_DATA::level, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::outdef, Inkscape::Extension::Internal::EMF_STRINGS::size, sp_pathvector_boolop(), sp_svg_read_pathv(), sp_svg_write_path(), Inkscape::SVGOStringStream::str(), and Inkscape::Extension::Internal::EMF_STRINGS::strings.
Referenced by myEnhMetaFileProc().
|
staticprotected |
Definition at line 632 of file emf-inout.cpp.
References Inkscape::Extension::Internal::EMF_STRINGS::count, current_rotation(), Inkscape::Extension::Internal::EMF_CALLBACK_DATA::defs, enlarge_gradients(), Inkscape::Extension::Internal::EMF_CALLBACK_DATA::gradients, in_gradients(), pix_to_x_point(), pix_to_y_point(), Inkscape::Extension::Internal::Metafile::sethexcolor(), Inkscape::Extension::Internal::EMF_STRINGS::size, Inkscape::SVGOStringStream::str(), Inkscape::Extension::Internal::EMF_STRINGS::strings, Inkscape::Extension::Internal::trivertex_to_colorref(), U_TRIVERTEX::x, and U_TRIVERTEX::y.
Referenced by myEnhMetaFileProc().
|
staticprotected |
Definition at line 227 of file emf-inout.cpp.
References Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::bkColor, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::bkMode, Inkscape::Extension::Internal::EMF_STRINGS::count, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::dc, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::defs, enlarge_hatches(), Inkscape::Extension::Internal::EMF_CALLBACK_DATA::hatches, in_hatches(), Inkscape::Extension::Internal::EMF_CALLBACK_DATA::level, Inkscape::Extension::Internal::Metafile::sethexcolor(), Inkscape::Extension::Internal::EMF_STRINGS::size, Inkscape::Extension::Internal::EMF_STRINGS::strings, and Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::textColor.
Referenced by select_brush(), and select_extpen().
|
staticprotected |
Definition at line 453 of file emf-inout.cpp.
References Inkscape::Extension::Internal::Metafile::bad_image_png(), Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::bkColor, Inkscape::Extension::Internal::MEMPNG::buffer, Inkscape::Extension::Internal::EMF_STRINGS::count, current_matrix(), current_rotation(), Inkscape::Extension::Internal::EMF_CALLBACK_DATA::dc, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::defs, enlarge_images(), height, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::images, in_images(), invert(), Inkscape::Extension::Internal::EMF_CALLBACK_DATA::level, Inkscape::Extension::Internal::EMF_STRINGS::size, Inkscape::Extension::Internal::MEMPNG::size, Inkscape::Extension::Internal::EMF_STRINGS::strings, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::textColor, Inkscape::Extension::Internal::Metafile::toPNG(), and width.
Referenced by select_brush(), and select_extpen().
|
staticprotected |
Definition at line 1417 of file emf-inout.cpp.
References U_EMRHEADER::emr, U_EMRSETMAPMODE::emr, U_EMRSETMAPMODE::iMode, U_EMR::iType, U_EMRHEADER::nDescription, U_EMR::nSize, U_EMRHEADER::offDescription, and U_Utf16leToUtf8().
Referenced by myEnhMetaFileProc().
|
overridevirtual |
Verify any dependencies.
Reimplemented from Inkscape::Extension::Implementation::Implementation.
Definition at line 64 of file emf-inout.cpp.
References Inkscape::Extension::db, Inkscape::Extension::DB::get(), and PRINT_EMF.
|
staticprotected |
Definition at line 1462 of file emf-inout.cpp.
References Inkscape::Extension::Internal::Metafile::bad_image_png(), Inkscape::Extension::Internal::MEMPNG::buffer, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::clip_id, current_matrix(), Inkscape::Extension::Internal::EMF_CALLBACK_DATA::dc, height, invert(), Inkscape::Extension::Internal::EMF_CALLBACK_DATA::level, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::outsvg, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::path, Inkscape::Extension::Internal::MEMPNG::size, Inkscape::SVGOStringStream::str(), Inkscape::Extension::Internal::Metafile::toPNG(), and width.
Referenced by myEnhMetaFileProc().
|
staticprotected |
Definition at line 178 of file emf-inout.cpp.
References current_scale(), Inkscape::Extension::Internal::EMF_CALLBACK_DATA::dc, U_XFORM::eM11, U_XFORM::eM12, U_XFORM::eM21, U_XFORM::eM22, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::level, scale, Inkscape::SVGOStringStream::str(), and Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::worldTransform.
Referenced by add_image(), and common_image_extraction().
|
staticprotected |
Definition at line 202 of file emf-inout.cpp.
References Inkscape::Extension::Internal::EMF_CALLBACK_DATA::dc, U_XFORM::eM11, U_XFORM::eM12, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::level, and Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::worldTransform.
Referenced by add_gradient(), add_image(), and myEnhMetaFileProc().
|
staticprotected |
Definition at line 164 of file emf-inout.cpp.
References Inkscape::Extension::Internal::EMF_CALLBACK_DATA::dc, U_XFORM::eM11, U_XFORM::eM12, U_XFORM::eM21, U_XFORM::eM22, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::level, scale, and Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::worldTransform.
Referenced by current_matrix(), and pix_to_abs_size().
|
staticprotected |
Definition at line 1388 of file emf-inout.cpp.
References Inkscape::Extension::Internal::EMF_CALLBACK_DATA::emf_obj, index, Inkscape::Extension::Internal::EMF_OBJECT::lpEMFR, and Inkscape::Extension::Internal::EMF_OBJECT::type.
Referenced by insert_object(), and open().
|
staticprotected |
Definition at line 712 of file emf-inout.cpp.
References Inkscape::Extension::Internal::EMF_CALLBACK_DATA::clips, Inkscape::Extension::Internal::EMF_STRINGS::size, and Inkscape::Extension::Internal::EMF_STRINGS::strings.
Referenced by add_clips().
|
staticprotected |
Definition at line 604 of file emf-inout.cpp.
References Inkscape::Extension::Internal::EMF_CALLBACK_DATA::gradients, Inkscape::Extension::Internal::EMF_STRINGS::size, and Inkscape::Extension::Internal::EMF_STRINGS::strings.
Referenced by add_gradient().
|
staticprotected |
Definition at line 208 of file emf-inout.cpp.
References Inkscape::Extension::Internal::EMF_CALLBACK_DATA::hatches, Inkscape::Extension::Internal::EMF_STRINGS::size, and Inkscape::Extension::Internal::EMF_STRINGS::strings.
Referenced by add_hatch().
|
staticprotected |
Definition at line 432 of file emf-inout.cpp.
References Inkscape::Extension::Internal::EMF_CALLBACK_DATA::images, Inkscape::Extension::Internal::EMF_STRINGS::size, and Inkscape::Extension::Internal::EMF_STRINGS::strings.
Referenced by add_image().
|
staticprotected |
|
staticprotected |
Definition at line 719 of file emf-inout.cpp.
References Inkscape::Extension::Internal::EMF_CALLBACK_DATA::clips, Inkscape::Extension::Internal::EMF_STRINGS::count, Inkscape::Extension::Internal::EMF_STRINGS::strings, and test().
Referenced by add_clips().
|
staticprotected |
Definition at line 611 of file emf-inout.cpp.
References Inkscape::Extension::Internal::EMF_STRINGS::count, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::gradients, Inkscape::Extension::Internal::EMF_STRINGS::strings, and test().
Referenced by add_gradient().
|
staticprotected |
Definition at line 215 of file emf-inout.cpp.
References Inkscape::Extension::Internal::EMF_STRINGS::count, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::hatches, Inkscape::Extension::Internal::EMF_STRINGS::strings, and test().
Referenced by add_hatch().
|
staticprotected |
Definition at line 439 of file emf-inout.cpp.
References Inkscape::Extension::Internal::EMF_STRINGS::count, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::images, Inkscape::Extension::Internal::EMF_STRINGS::strings, and test().
Referenced by add_image().
|
static |
Definition at line 3558 of file emf-inout.cpp.
References Inkscape::Extension::build_from_mem().
Referenced by Inkscape::Extension::init().
|
staticprotected |
Definition at line 1404 of file emf-inout.cpp.
References delete_object(), Inkscape::Extension::Internal::EMF_CALLBACK_DATA::emf_obj, index, Inkscape::Extension::Internal::EMF_OBJECT::level, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::level, Inkscape::Extension::Internal::EMF_OBJECT::lpEMFR, and Inkscape::Extension::Internal::EMF_OBJECT::type.
Referenced by myEnhMetaFileProc().
|
staticprotected |
Definition at line 1561 of file emf-inout.cpp.
References add_clips(), add_gradient(), AI_hack(), U_EMRPOLYPOLYLINE::aPolyCounts, U_EMRPOLYPOLYLINE16::aPolyCounts, U_EMRPOLYBEZIER::aptl, U_EMRPOLYBEZIER16::apts, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::arcdir, SPStyle::baseline_shift, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::bkColor, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::bkMode, Inkscape::Extension::Internal::BLTmode, U_COLORREF::Blue, TRCOLORREF::Blue, TCHUNK_SPECS::boff, U_RECT::bottom, U_EMRBITBLT::cbBitsSrc, U_EMRSTRETCHBLT::cbBitsSrc, U_EMRMASKBLT::cbBitsSrc, U_EMRSTRETCHDIBITS::cbBitsSrc, U_EMRBITBLT::cbBmiSrc, U_EMRSTRETCHBLT::cbBmiSrc, U_EMRMASKBLT::cbBmiSrc, U_EMRSTRETCHDIBITS::cbBmiSrc, U_EMRCOMMENT::cbData, U_EMRSMALLTEXTOUT::cChars, U_EMRBITBLT::cDest, U_EMRSTRETCHBLT::cDest, U_EMRMASKBLT::cDest, U_EMRSTRETCHDIBITS::cDest, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::clip_id, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::clips, TCHUNK_SPECS::co, TCHUNK_SPECS::color, common_image_extraction(), TCHUNK_SPECS::condensed, Inkscape::Util::Quantity::convert(), U_EMRPOLYBEZIER::cptl, U_EMRPOLYPOLYLINE::cptl, U_EMRPOLYBEZIER16::cpts, U_EMRPOLYPOLYLINE16::cpts, U_EMRSETTEXTCOLOR::crColor, U_EMRSTRETCHBLT::cSrc, U_EMRSTRETCHDIBITS::cSrc, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::cur, current_rotation(), U_SIZE::cx, U_SIZE::cy, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::D2PscaleX, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::D2PscaleY, U_EMRCOMMENT::Data, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::dc, TCHUNK_SPECS::decoration, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::defs, U_EMRBITBLT::Dest, U_EMRSTRETCHBLT::Dest, U_EMRMASKBLT::Dest, U_EMRSTRETCHDIBITS::Dest, U_EMRSMALLTEXTOUT::Dest, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::dirty, TR_INFO::dirty, Inkscape::Extension::Internal::DRAW_PAINT, Inkscape::Extension::Internal::DRAW_PATTERN, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::drawtype, U_EMRBITBLT::dwRop, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::dwRop2, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::dwRop3, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::E2IdirY, U_XFORM::eDx, U_XFORM::eDy, U_XFORM::eM11, U_XFORM::eM12, U_XFORM::eM21, U_XFORM::eM22, Inkscape::Extension::Internal::EMF_MAX_DC, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::emf_obj, U_EMRSETMITERLIMIT::eMiterLimit, U_EMREXTTEXTOUTA::emrtext, end, Inkscape::Extension::Internal::faraway, TCHUNK_SPECS::fi_idx, SPStyle::fill, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::fill_mode, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::fill_recidx, SPStyle::fill_rule, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::fill_set, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::font_name, SPStyle::font_size, SPStyle::font_style, SPStyle::font_weight, U_EMRTEXT::fOptions, TCHUNK_SPECS::fs, TR_INFO::fti, ftinfo_load_fontname(), U_EMRSMALLTEXTOUT::fuOptions, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::gradients, U_COLORREF::Green, TRCOLORREF::Green, U_EMRSETARCDIRECTION::iArcDirection, Inkscape::Extension::Internal::ICMmode, U_EMRCREATEBRUSHINDIRECT::ihBrush, U_EMRCREATEMONOBRUSH::ihBrush, U_EMRCREATEDIBPATTERNBRUSHPT::ihBrush, U_EMREXTCREATEFONTINDIRECTW::ihFont, U_EMRDELETEOBJECT::ihObject, U_EMRCREATEPEN::ihPen, U_EMREXTCREATEPEN::ihPen, U_EMRSETMAPMODE::iMode, U_EMRMODIFYWORLDTRANSFORM::iMode, U_EMREXTSELECTCLIPRGN::iMode, index, insert_object(), U_EMRRESTOREDC::iRelative, TCHUNK_SPECS::italics, U_ENHMETARECORD::iType, U_EMRBITBLT::iUsageSrc, U_EMRSTRETCHBLT::iUsageSrc, U_EMRMASKBLT::iUsageSrc, U_EMRSTRETCHDIBITS::iUsageSrc, TCHUNK_SPECS::ldir, U_RECT::left, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::level, U_GRADIENT4::LowerRight, Inkscape::Extension::Internal::EMF_OBJECT::lpEMFR, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::mask, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::MM100InX, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::MM100InY, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::MMX, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::MMY, msdepua(), Inkscape::Extension::Internal::EMF_CALLBACK_DATA::n_obj, U_EMRTEXT::nChars, U_EMRGRADIENTFILL::nGradObj, U_EMRHEADER::nHandles, NonToUnicode(), U_EMRPOLYPOLYLINE::nPolys, U_EMRPOLYPOLYLINE16::nPolys, U_EMRGRADIENTFILL::nTriVert, off, U_EMRBITBLT::offBitsSrc, U_EMRSTRETCHBLT::offBitsSrc, U_EMRMASKBLT::offBitsSrc, U_EMRSTRETCHDIBITS::offBitsSrc, U_EMRBITBLT::offBmiSrc, U_EMRSTRETCHBLT::offBmiSrc, U_EMRMASKBLT::offBmiSrc, U_EMRSTRETCHDIBITS::offBmiSrc, U_EMRTEXT::offString, TCHUNK_SPECS::ori, TR_INFO::out, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::outdef, output_style(), Inkscape::Extension::Internal::EMF_CALLBACK_DATA::outsvg, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::path, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::pDesc, pix_to_abs_size(), pix_to_x_point(), pix_to_xy(), pix_to_y_point(), Inkscape::Extension::Internal::EMF_CALLBACK_DATA::PixelsInX, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::PixelsInY, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::PixelsOutX, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::PixelsOutY, U_EMRMOVETOEX::ptl, U_EMROFFSETCLIPRGN::ptlOffset, U_EMRSETWINDOWORGEX::ptlOrigin, U_EMRTEXT::ptlReference, rc, U_EMRHEADER::rclBounds, U_EMRELLIPSE::rclBox, U_EMRROUNDRECT::rclBox, U_EMREXCLUDECLIPRECT::rclClip, U_EMRHEADER::rclFrame, U_COLORREF::Red, TRCOLORREF::Red, TRCOLORREF::Reserved, U_RECT::right, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::ScaleInX, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::ScaleInY, select_brush(), select_extpen(), select_font(), select_pen(), Inkscape::Extension::Internal::Metafile::sethexcolor(), Inkscape::size, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::sizeView, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::sizeWnd, SP_CSS_FONT_STYLE_ITALIC, SP_CSS_FONT_STYLE_NORMAL, SP_CSS_FONT_STYLE_OBLIQUE, SP_CSS_FONT_WEIGHT_100, SP_CSS_FONT_WEIGHT_200, SP_CSS_FONT_WEIGHT_300, SP_CSS_FONT_WEIGHT_400, SP_CSS_FONT_WEIGHT_500, SP_CSS_FONT_WEIGHT_600, SP_CSS_FONT_WEIGHT_700, SP_CSS_FONT_WEIGHT_800, SP_CSS_FONT_WEIGHT_900, SP_CSS_FONT_WEIGHT_BOLD, SP_CSS_FONT_WEIGHT_BOLDER, SP_CSS_FONT_WEIGHT_LIGHTER, SP_CSS_FONT_WEIGHT_NORMAL, SP_RGBA32_F_COMPOSE(), sp_svg_read_pathv(), sp_svg_write_path(), SP_WIND_RULE_INTERSECT, SP_WIND_RULE_NONZERO, TCHUNK_SPECS::spaces, U_EMRBITBLT::Src, U_EMRSTRETCHBLT::Src, U_EMRMASKBLT::Src, U_EMRSTRETCHDIBITS::Src, start, Inkscape::SVGOStringStream::str(), TCHUNK_SPECS::string, Inkscape::Extension::Internal::EMF_STRINGS::strings, SPStyle::stroke, SPStyle::stroke_dasharray, SPStyle::stroke_miterlimit, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::stroke_mode, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::stroke_recidx, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::stroke_set, SPStyle::stroke_width, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::style, U_EMRROUNDRECT::szlCorner, U_EMRHEADER::szlDevice, U_EMRSETWINDOWEXTEX::szlExtent, U_EMRHEADER::szlMillimeters, TCHUNK_SPECS::taln, SPStyle::text_decoration_line, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::textAlign, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::textColor, U_RECT::top, TR_construct_fontspec(), TR_findcasesub(), TR_layout_2_svg(), TR_layout_analyze(), Inkscape::Extension::Internal::EMF_CALLBACK_DATA::tri, trinfo_clear(), trinfo_load_bk(), trinfo_load_qe(), trinfo_load_textrec(), Inkscape::Extension::Internal::trivertex_to_colorref(), Inkscape::Extension::Internal::EMF_OBJECT::type, U_emf_record_safe(), U_Latin1ToUtf32le(), U_strdup(), U_Utf16leToUtf32le(), U_Utf32leToUtf8(), U_Utf8ToUtf32le(), Inkscape::Extension::Internal::EMF_CALLBACK_DATA::ulCornerInX, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::ulCornerInY, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::ulCornerOutX, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::ulCornerOutY, U_EMRGRADIENTFILL::ulMode, unknown_chars(), U_GRADIENT4::UpperLeft, TCHUNK_SPECS::vadvance, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::vieworg, TCHUNK_SPECS::weight, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::winorg, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::worldTransform, Geom::Point::x(), U_PAIR::x, U_PAIRF::x, TCHUNK_SPECS::x, U_EMRSETWORLDTRANSFORM::xform, U_EMRMODIFYWORLDTRANSFORM::xform, U_EMRBITBLT::xformSrc, U_EMRSTRETCHBLT::xformSrc, U_EMRMASKBLT::xformSrc, Geom::Point::y(), U_PAIR::y, U_PAIRF::y, and TCHUNK_SPECS::y.
Referenced by open().
|
overridevirtual |
Open a file.
filename | File path. Value is in platform-native encoding (see Glib::filename_to_utf8). |
Reimplemented from Inkscape::Extension::Implementation::Implementation.
Definition at line 3477 of file emf-inout.cpp.
References Inkscape::Extension::Internal::EMF_CALLBACK_DATA::clips, SPDocument::createNewDocFromMem(), Inkscape::Extension::Internal::EMF_CALLBACK_DATA::dc, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::defs, delete_object(), Inkscape::Extension::Internal::EMF_MAX_DC, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::emf_obj, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::font_name, free_emf_strings(), Inkscape::Extension::Internal::EMF_CALLBACK_DATA::gradients, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::hatches, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::images, myEnhMetaFileProc(), Inkscape::Extension::Internal::EMF_CALLBACK_DATA::n_obj, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::outsvg, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::pDesc, SPStyle::stroke_dasharray, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::style, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::tri, trinfo_init(), trinfo_load_ft_opts(), and trinfo_release_except_FC().
|
staticprotected |
Definition at line 771 of file emf-inout.cpp.
References Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::clip_id, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::dc, Inkscape::Extension::Internal::DRAW_IMAGE, Inkscape::Extension::Internal::DRAW_LINEAR_GRADIENT, Inkscape::Extension::Internal::DRAW_PAINT, Inkscape::Extension::Internal::DRAW_PATTERN, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::dwRop2, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::dwRop3, Inkscape::Extension::Implementation::Implementation::fill(), SPStyle::fill, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::fill_idx, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::fill_mode, SPStyle::fill_rule, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::fill_set, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::hatches, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::level, MAX, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::outsvg, Inkscape::Colors::Space::RGB, SP_STROKE_LINECAP_BUTT, SP_STROKE_LINECAP_ROUND, SP_STROKE_LINECAP_SQUARE, SP_STROKE_LINEJOIN_BEVEL, SP_STROKE_LINEJOIN_MITER, SP_STROKE_LINEJOIN_ROUND, SP_WIND_RULE_NONZERO, Inkscape::SVGOStringStream::str(), Inkscape::Extension::Internal::EMF_STRINGS::strings, Inkscape::Extension::Implementation::Implementation::stroke(), SPStyle::stroke, SPStyle::stroke_dasharray, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::stroke_idx, SPStyle::stroke_linecap, SPStyle::stroke_linejoin, SPStyle::stroke_miterlimit, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::stroke_mode, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::stroke_set, SPStyle::stroke_width, and Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::style.
Referenced by myEnhMetaFileProc().
|
staticprotected |
Definition at line 1003 of file emf-inout.cpp.
References current_scale(), Inkscape::Extension::Internal::EMF_CALLBACK_DATA::D2PscaleX, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::dc, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::level, and Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::ScaleInX.
Referenced by myEnhMetaFileProc(), select_extpen(), select_font(), and select_pen().
|
staticprotected |
Definition at line 983 of file emf-inout.cpp.
References _pix_x_to_point(), Inkscape::Extension::Internal::EMF_CALLBACK_DATA::dc, U_XFORM::eDx, U_XFORM::eM11, U_XFORM::eM21, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::level, and Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::worldTransform.
Referenced by add_gradient(), myEnhMetaFileProc(), and pix_to_xy().
|
staticprotected |
Definition at line 1025 of file emf-inout.cpp.
References pix_to_x_point(), pix_to_y_point(), snap_to_faraway_pair(), and Inkscape::SVGOStringStream::str().
Referenced by myEnhMetaFileProc().
|
staticprotected |
Definition at line 992 of file emf-inout.cpp.
References _pix_y_to_point(), Inkscape::Extension::Internal::EMF_CALLBACK_DATA::dc, U_XFORM::eDy, U_XFORM::eM12, U_XFORM::eM22, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::level, and Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::worldTransform.
Referenced by add_gradient(), myEnhMetaFileProc(), and pix_to_xy().
|
staticprotected |
Definition at line 70 of file emf-inout.cpp.
References SPItem::display_key_new(), SPDocument::ensureUpToDate(), Inkscape::Extension::get_print(), SPDocument::getRoot(), PRINT_EMF, and Inkscape::Drawing::setRoot().
Referenced by save().
|
override |
Definition at line 116 of file emf-inout.cpp.
References Inkscape::Extension::db, Inkscape::Extension::DB::get(), print_document_to_file(), PRINT_EMF, Inkscape::Extension::Extension::set_param_bool(), and TableGen().
|
staticprotected |
Definition at line 1288 of file emf-inout.cpp.
References add_hatch(), add_image(), U_EMRCREATEDIBPATTERNBRUSHPT::cbBits, U_EMRCREATEDIBPATTERNBRUSHPT::cbBmi, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::dc, Inkscape::Extension::Internal::DRAW_IMAGE, Inkscape::Extension::Internal::DRAW_PAINT, Inkscape::Extension::Internal::DRAW_PATTERN, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::emf_obj, SPStyle::fill, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::fill_idx, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::fill_mode, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::fill_recidx, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::fill_set, index, U_EMRCREATEDIBPATTERNBRUSHPT::iUsage, U_EMRCREATEBRUSHINDIRECT::lb, U_LOGBRUSH::lbColor, U_LOGBRUSH::lbHatch, U_LOGBRUSH::lbStyle, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::level, Inkscape::Extension::Internal::EMF_OBJECT::lpEMFR, U_EMRCREATEDIBPATTERNBRUSHPT::offBits, U_EMRCREATEDIBPATTERNBRUSHPT::offBmi, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::style, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::textColor, and U_RGB_COMPOSE().
Referenced by myEnhMetaFileProc().
|
staticprotected |
Definition at line 1124 of file emf-inout.cpp.
References add_hatch(), add_image(), U_EMREXTCREATEPEN::cbBits, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::dc, Inkscape::Extension::Internal::DRAW_IMAGE, Inkscape::Extension::Internal::DRAW_PAINT, Inkscape::Extension::Internal::DRAW_PATTERN, U_EMREXTCREATEPEN::elp, U_EXTLOGPEN::elpBrushStyle, U_EXTLOGPEN::elpColor, U_EXTLOGPEN::elpHatch, U_EXTLOGPEN::elpNumEntries, U_EXTLOGPEN::elpPenStyle, U_EXTLOGPEN::elpStyleEntry, U_EXTLOGPEN::elpWidth, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::emf_obj, index, Inkscape::Extension::Internal::EMF_OBJECT::level, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::level, Inkscape::Extension::Internal::EMF_OBJECT::lpEMFR, pix_to_abs_size(), SPILength::setDouble(), SP_STROKE_LINECAP_BUTT, SP_STROKE_LINECAP_ROUND, SP_STROKE_LINECAP_SQUARE, SP_STROKE_LINEJOIN_BEVEL, SP_STROKE_LINEJOIN_MITER, SP_STROKE_LINEJOIN_ROUND, SPStyle::stroke, SPStyle::stroke_dasharray, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::stroke_idx, SPStyle::stroke_linecap, SPStyle::stroke_linejoin, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::stroke_mode, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::stroke_recidx, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::stroke_set, SPStyle::stroke_width, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::style, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::textColor, and U_RGB_COMPOSE().
Referenced by myEnhMetaFileProc().
|
staticprotected |
Definition at line 1327 of file emf-inout.cpp.
References SPStyle::baseline_shift, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::dc, U_LOGFONT_PANOSE::elfLogFont, U_EMREXTCREATEFONTINDIRECTW::elfw, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::emf_obj, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::font_name, SPStyle::font_size, SPStyle::font_style, SPStyle::font_weight, index, Inkscape::Extension::Internal::EMF_OBJECT::level, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::level, U_LOGFONT::lfEscapement, U_LOGFONT::lfFaceName, U_LOGFONT::lfHeight, U_LOGFONT::lfItalic, U_LOGFONT::lfStrikeOut, U_LOGFONT::lfUnderline, U_LOGFONT::lfWeight, Inkscape::Extension::Internal::EMF_OBJECT::lpEMFR, pix_to_abs_size(), SP_CSS_FONT_STYLE_ITALIC, SP_CSS_FONT_STYLE_NORMAL, SP_CSS_FONT_WEIGHT_100, SP_CSS_FONT_WEIGHT_200, SP_CSS_FONT_WEIGHT_300, SP_CSS_FONT_WEIGHT_400, SP_CSS_FONT_WEIGHT_500, SP_CSS_FONT_WEIGHT_600, SP_CSS_FONT_WEIGHT_700, SP_CSS_FONT_WEIGHT_800, SP_CSS_FONT_WEIGHT_900, SP_CSS_FONT_WEIGHT_BOLD, SP_CSS_FONT_WEIGHT_BOLDER, SP_CSS_FONT_WEIGHT_LIGHTER, SP_CSS_FONT_WEIGHT_NORMAL, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::style, SPStyle::text_decoration_line, and U_Utf16leToUtf8().
Referenced by myEnhMetaFileProc().
|
staticprotected |
Definition at line 1038 of file emf-inout.cpp.
References Inkscape::Extension::Internal::EMF_CALLBACK_DATA::dc, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::emf_obj, index, Inkscape::Extension::Internal::EMF_OBJECT::level, Inkscape::Extension::Internal::EMF_CALLBACK_DATA::level, U_EMRCREATEPEN::lopn, U_LOGPEN::lopnColor, U_LOGPEN::lopnStyle, U_LOGPEN::lopnWidth, Inkscape::Extension::Internal::EMF_OBJECT::lpEMFR, pix_to_abs_size(), SPILength::setDouble(), SP_STROKE_LINECAP_BUTT, SP_STROKE_LINECAP_ROUND, SP_STROKE_LINECAP_SQUARE, SP_STROKE_LINEJOIN_BEVEL, SP_STROKE_LINEJOIN_MITER, SP_STROKE_LINEJOIN_ROUND, SPStyle::stroke, SPStyle::stroke_dasharray, SPStyle::stroke_linecap, SPStyle::stroke_linejoin, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::stroke_set, SPStyle::stroke_width, Inkscape::Extension::Internal::EMF_DEVICE_CONTEXT::style, U_RGB_COMPOSE(), and U_PAIR::x.
Referenced by myEnhMetaFileProc().
|
staticprotected |
Definition at line 1014 of file emf-inout.cpp.
References Inkscape::Extension::Internal::faraway.
Referenced by pix_to_xy().
|
staticprotected |
Definition at line 1438 of file emf-inout.cpp.
Referenced by myEnhMetaFileProc().