




with-external-metafile (
var
&key
pane
bounds
format
pathname
owner
drawing-mode
) &body
body
=> nil
A variable.
A graphics port, or nil.
A list of four integers. Can also be nil on Microsoft Windows.
One of the keywords :enhanced, :enhanced-plus, :enhanced-gdi and :windows.
A pathname or string.
Specifies the owner of the metafile, which calls to port-owner will return. This has an effect only when
pane
is nil.
One of the keywords :compatible and :quality.
Code containing Graphic Ports operations that draw to var .
The macro with-external-metafile creates a metafile at the location given by
pathname
containing records corresponding to the Graphics Ports operations in
body
that draw to
var
.
On Microsoft Windows the metafile is a device-independent format for storing pictures. For more information about metafiles, see the Microsoft documentation.
On Cocoa and GTK+ the metafile format is PDF.
If
pane
is nil, the macro binds
var
to an object of type metafile-port. If
pane
is non-nil then it must be an instance of output-pane or a subclass. In this case
var
is bound to
pane
, and
pane
is modified within the dynamic extent of with-external-metafile so all drawing operations draw to the metafile instead of
pane
. This can be useful when reusing existing redisplay code that is written expecting an output-pane. The default value of pane is nil.
If
bounds
is nil the metafile size will be computed from the drawing done within the body. This value is not allowed on Cocoa.
If bounds is non-nil (required on Cocoa), it should be a list of integers specifying the coordinate rectangle ( x y width height ) that the metafile contains.
pathname
specifies the filename of the metafile. If its pathname-type is nil, then the file extension "EMF" is used for an Enhanced-metafile, or "WMF" for a Windows-metafile.
drawing-mode
should be either :compatible which causes drawing to be the same as in LispWorks 6.0, or :quality which causes all the drawing to be transformed properly, and allows control over anti-aliasing on Microsoft Windows and GTK+. The default value of
drawing-mode
is :quality.
For more information about drawing-mode , see The drawing mode and anti-aliasing.
On Cocoa and GTK+ the metafile format is always PDF as a single page, and the format argument is ignored. format is used only on Microsoft Windows and it can be one of:
Generate an Enhanced-metafile file containing "dual drawing" both in GDI+ and GDI.
Generate an Enhanced-metafile file containing drawing only in GDI+.
Generate an Enhanced-metafile file containing drawing only in GDI.
Generate a Windows-metafile.
The default value of
format
is :enhanced.
When
drawing-mode
is :compatible (rather than the default value :quality) :enhanced and :enhanced-plus behave like :enhanced-gdi.
:enhanced-plus.with-external-metafile is not implemented on X11/Motif.CAPI User Guide and Reference Manual (Unix version) - 3 Aug 2017