summaryrefslogtreecommitdiffstats
path: root/src/extension/internal/cairo-ps-out.cpp
diff options
context:
space:
mode:
authorAdib Taraben <theadib@gmail.com>2008-01-16 23:31:51 +0000
committertheadib <theadib@users.sourceforge.net>2008-01-16 23:31:51 +0000
commit85e52afa1bb6bc1272bd50aec88fd3388ca5ea97 (patch)
tree0fd911e0fc3104ba2af6053f0306bfea5f19f1df /src/extension/internal/cairo-ps-out.cpp
parentStopped the export bitmap dialog from being sizeable (diff)
downloadinkscape-85e52afa1bb6bc1272bd50aec88fd3388ca5ea97.tar.gz
inkscape-85e52afa1bb6bc1272bd50aec88fd3388ca5ea97.zip
now act on settings in dialogue
(bzr r4529)
Diffstat (limited to 'src/extension/internal/cairo-ps-out.cpp')
-rw-r--r--src/extension/internal/cairo-ps-out.cpp22
1 files changed, 20 insertions, 2 deletions
diff --git a/src/extension/internal/cairo-ps-out.cpp b/src/extension/internal/cairo-ps-out.cpp
index b3cf1fa26..b163f2aff 100644
--- a/src/extension/internal/cairo-ps-out.cpp
+++ b/src/extension/internal/cairo-ps-out.cpp
@@ -53,7 +53,7 @@ CairoPsOutput::check (Inkscape::Extension::Extension * module)
return TRUE;}
static bool
-ps_print_document_to_file(SPDocument *doc, gchar const *filename, unsigned int level, bool texttopath, bool filtertobitmap)
+ps_print_document_to_file(SPDocument *doc, gchar const *filename, unsigned int level, bool texttopath, bool filtertobitmap, int resolution)
{
CairoRenderer *renderer;
CairoRenderContext *ctx;
@@ -73,6 +73,7 @@ ps_print_document_to_file(SPDocument *doc, gchar const *filename, unsigned int l
ctx->setPSLevel(level);
ctx->setTextToPath(texttopath);
ctx->setFilterToBitmap(filtertobitmap);
+ ctx->setBitmapResolution(resolution);
bool ret = ctx->setPsTarget(filename);
if(ret) {
@@ -149,12 +150,29 @@ CairoPsOutput::save (Inkscape::Extension::Output *mod, SPDocument *doc, const gc
g_warning("Parameter <blurToBitmap> might not exists");
}
+ int old_bitmapResolution = 72;
+ int new_bitmapResolution = 72;
+ try {
+ old_bitmapResolution = ext->get_param_int("resolution");
+ new_bitmapResolution = mod->get_param_int("resolution");
+ ext->set_param_int("resolution", new_bitmapResolution);
+ }
+ catch(...) {
+ g_warning("Parameter <resolution> might not exists");
+ }
+
gchar * final_name;
final_name = g_strdup_printf("> %s", uri);
- ret = ps_print_document_to_file(doc, final_name, level, new_textToPath, new_blurToBitmap);
+ ret = ps_print_document_to_file(doc, final_name, level, new_textToPath, new_blurToBitmap, new_bitmapResolution);
g_free(final_name);
try {
+ ext->set_param_int("resolution", old_bitmapResolution);
+ }
+ catch(...) {
+ g_warning("Parameter <resolution> might not exists");
+ }
+ try {
ext->set_param_bool("blurToBitmap", old_blurToBitmap);
}
catch(...) {