Re: Controlling scale of Graphics on paper
- To: mathgroup at smc.vnet.net
- Subject: [mg126186] Re: Controlling scale of Graphics on paper
- From: Yves Klett <yves.klett at googlemail.com>
- Date: Tue, 24 Apr 2012 05:31:10 -0400 (EDT)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- References: <jmtd9i$sim$1@smc.vnet.net> <jn388q$g83$1@smc.vnet.net>
Addendum to my first post: This does only work properly if the PlotRange of the graphics object is set to reflect the values of "format" (had not used that one in a while). So making sure your dimensions are correct by using ghostview is always a good idea ;-) So the right way to use this is: gfx = Graphics[Line[{{10, 10}, {110, 10}, {110, 110}}], PlotRange -> {{0, 200}, {0, 200}}] ExportScaled[filename_, gfx_, format_: {210, 297}, opts___?OptionQ] := Module[{mm}, mm = 72/25.4; Export[filename, Show[gfx, ImageSize -> format*mm, ImageMargins -> 0, ImagePadding -> None, AspectRatio -> Automatic], opts]] ExportScaled["test.eps", gfx, -Subtract @@@ (PlotRange /. Options[gfx, PlotRange])] It is a good idea to set the PlotRange values for your graphics object *explicitely*, because extracting the with FullOptions can result in added whitespace (at least in some cases). Regards, Yves Am 23.04.2012 11:43, schrieb Yves Klett: > ExportScaled[filename_,gfx_,format_:{210,297},opts___?OptionQ]:=Module[{mm}, > mm=72/25.4; > Export[filename,Show[gfx,ImageSize->format*mm,ImageMargins->0,ImagePadding->None,AspectRatio->Automatic],opts] > ]