XML Script
Choose this command to execute functions whose settings are defined in a XML file.
Introduction
Select Execute XML Script from File menu or drag-and-drop then xml file to the OCAD window.
XML Script General
File
Node <OcadScript> | Parameter | Data type | Values / Description |
---|---|---|---|
File.New | File | String | file name of existing symbol set |
File.Open | File | String | ocd file name |
File.Close | Enabled | Boolean | true, false |
File.Save | Enabled | Boolean | true, false |
File.SaveAs | File | String | ocd file name |
File.Import.Ocd | File SymbolOption ColorOption |
String Integer Integer |
File name [0..3] [0, 1] |
File.MultipleFileImport | Directory CoordinateSystem NewOffset Horizontally Vertically Angle MapScale GridDistance DatabaseType Codepage KeyField LayerField |
String Integer Boolean Integer Integer Double Integer Double Integer Integer String String |
Directory of import files -1 = WGS 84, 1000 = existing grid of OCAD file 0 = dBase, 1 = Access 2007, 2 = Access 2003/2010, 3 = Do not create a database 0 = Default, Codepage number ' ' = Create new key field, field name ' ' = do not import layer information, field name |
File.Exit | Enabled | Boolean | true, false |
View
Node <OcadScript> | Parameter | Data type | Values / Description |
---|---|---|---|
View.Mode | Enum types | normalMode, spotColorMode, draftMode | |
View.EntireMap | Enabled | Boolean | true, false |
View.MoveTo | X Y |
Double Double |
|
View.Zoom | Double |
Map
Node <OcadScript> | Parameter | Data type | Values / Description |
---|---|---|---|
Map.OptimizeRepair | Enabled | Boolean | true, false |
Map.ChangeScale | NewScale EnlargeReduceSymbols |
Integer Boolean |
e. g. 10 000 true, false |
Map.ConvertLayer | CrtFile | String | crt file name |
Map.LoadSymbolsFrom | File | String | ocd file name (with symbols to be loaded) The option replace existing colors and symbols is used |
Database
Node <OcadScript> | Parameter | Data type | Values / Description |
---|---|---|---|
Database.Dataset.New | DatasetName DBaseFile OdbcDataSource Table KeyField SymbolField TextField SizeField LengthUnit AreaUnit Decimals HorizontalCoordinate VerticalCoordinate Username Passwort |
String String String String String String String String String String Integer String String String String |
mandatory mandatory mandatory |
Database.Dataset.Remove | Dataset | String Integer |
all for all databases 3, 2, 1, ... for only one or several |
Database.Assign.Symbols | Dataset CntFile |
String Integer String |
all for all databases 1, 2, 3, ... for only one database Condition table file |
Database.Assign.Texts | Dataset TextField Symbol ReplaceExistingObjects |
String Integer String String Boolean |
all for all databases 1, 2, 3, ... for only one database ex. 101.0 true, false (Default) |
Database.Assign.Angles | Dataset AngleField |
String Integer String |
all for all databases 1, 2, 3, ... for only one database |
Database.CreateObjects | Dataset SelectSymbol Condition HorizontalCoordinate VerticalCoordinate Unit TextField HorizontalOffset VerticalOffset |
Integer Double String String String Enum types String Double Double |
1, 2, 3, ... Number of dataset Symbol numer. ex. 207.0 SQL String (ex. SYMBOL LIKE 207.0) Database fieldname Database fieldname m, km Database fieldname |
Background Map
Node <OcadScript> | Parameter | Data type | Values / Description |
---|---|---|---|
BackgroundMap.Open | FileName Visible VisibleInFavorites Dimm Transparent SpotColor Blockout Infrared |
String Boolean Boolean Integer Boolean String Boolean Integer |
true, false; Default = true true, false; Default = true [0..100]; Default = 0 [only works if Blockout is false] true, false; Default = false [only works if Blockout is false] spot color name true, false; Default = false 0=undefined, 1=32bit-infrared, 2=32bit RGB |
BackgroundMap.Remove | String | all or filename |
Example
<?xml version="1.0" encoding="ISO-8859-1"?> <!-- OCAD XML Script for multiple Shape import and assigning symbols from database --> <OcadScript> <File.New> <!-- This path has to be adjusted before using the script! Choose a template file. --> <File>C:\Export\Chlosterwald.ocd</File> </File.New> <File.MultipleFileImport> <!-- This path has to be adjusted before using the script! --> <Directory>C:\Export\Files</Directory> <CoordinateSystem>1000</CoordinateSystem> <NewOffset>true</NewOffset> <Horizontally>600000</Horizontally> <Vertically>200000</Vertically> <Angle>0</Angle> <MapScale>10000</MapScale> <GridDistance>500</GridDistance> <LayerField>OBJECTVAL</LayerField> </File.MultipleFileImport> <Database.Assign.Texts> <Dataset>all</Dataset> <TextField>TEXT</TextField> <Symbol>902.000</Symbol> <ReplaceExistingObjects>false</ReplaceExistingObjects> </Database.Assign.Texts> <Database.Assign.Angles> <Dataset>all</Dataset> <AngleField>ANGLE</AngleField> </Database.Assign.Angles> <Database.Assign.Symbols> <Dataset>all</Dataset> <CntFile>C:\Export\Chlosterwald.cnt</CntFile> </Database.Assign.Symbols> <Database.Dataset.Remove> <Dataset>all</Dataset> </Database.Dataset.Remove> <Map.OptimizeRepair> <Enabled>true</Enabled> </Map.OptimizeRepair> <View.EntireMap> <Enabled>true</Enabled> </View.EntireMap> <File.Save> <Enabled>false</Enabled> </File.Save> <File.SaveAs> <File>C:\Export\Chlosterwald_Example.ocd</File> </File.SaveAs> <File.Close> <Enabled>true</Enabled> </File.Close> <File.Exit> <Enabled>false</Enabled> </File.Exit> </OcadScript>
XML Script Partial Map
Node <OcadScript> | Parameter | Data type | Values / Description |
---|---|---|---|
Export | File coordSystem L, R, B, T |
String Enum types Float |
eg.: ‚ c:\export\PartialMap1.ocd ‘ OCAD creates files PartialMap1_#verticalPages_#horizontalPages.ocd mm (paper, m (real world) left, right, bottom, top |
Export.loop | Enabled HorizontalPages VerticalPages HorizontalOverlap VerticalOverlap |
Bool Integer Integer Float Float |
true, false number of pages in horizontal direction number of pages in vertical direction horizontal overlap in [mm] or [m] vertical overlap in [mm] or [m] |
Example
<ocadScript> // comment <partialMapScript>
<export id="0"> // first export section <file>c:\export\PartialMap1.ocd</file> // export file <coordSystem>mm</coordSystem> // paper oder real world coordinates <T>100</T> // export rectangle with Top Left point and Bottom Right point <L>0</L> <B>50</B> <R>50</R> <loop> // the loop export several ocd files. For this example 21 files. <enabled>true</enabled> <horizontalPages>7</horizontalPages> <verticalPages>3</verticalPages> <horizontalOverlap>10</horizontalOverlap> // horizontal and vertical overlap. <verticalOverlap>10</verticalOverlap> </loop> </export> <export id="1"> // second export section <file>c:\export\PartialMap2.ocd</file> <coordSystem>mm</coordSystem> <L>0</L> <R>50</R> <B>50</B> <T>100</T> <loop> // export only one ocd file <enabled>false</enabled> </loop> </export>
</partialMapScript> </ocadScript>
XML Script Print
Print parameters can be saved in a XML script.
Node <OcadScript> | Parameter | Data type | Values / Description |
---|---|---|---|
File.Print.Printer | Name DmPaperSize DmDefaultSource DmPrintQuality DmColor DmMediaType |
String Integer Integer Integer Integer Integer |
Eg. ,HP Color LaserJet 2840 PCL' File->Print->Save XML Script->Open the Script and depending on which printer was choosen, the informations are there. |
File.Print.Portrait | Enabled | Bool | true, false |
File.Print.SpotColor | Enabled Colors |
Bool String |
true, false Name of the spot color(s) |
File.Print.PartialMap | Range L, R, B, T |
Integer Float |
1 Left, Right, Bottom, Top |
File.Print.HorizontalOverlap | Float | ||
File.Print.VerticalOverlap | Float | ||
File.Print.PrintScale | Integer | Eg. 25000 | |
File.Print.Copies | Integer | Number of copies | |
File.Print.Intensity | Integer | ||
File.Print.LineWidth | Integer | ||
File.Print.PrintScreenGrid | Enabled PrintScreenGridColor |
Bool Integer |
true, false Ocad color number |
XML Script Export
Watch out for the file endings.
Resolution is only used if File.Export.GeoRef -> Enabled = false
AI (Adobe Illustrator), PDF
Node <OcadScript> | Parameter | Data type | Values / Description |
---|---|---|---|
File.Export | File Format Resolution ExportScale |
String Enum types Integer Integer |
eg.: ,c::\Export\Chlosterwald.ai‘ AI, PDF in dpi [40..2540] (only if the map has raster background maps) eg. '10000' for the scale 1:10'000 |
File.Export.PartOfMap | Enabled Coordinates L, R, B, T |
Bool Enum types Float |
true, false mm (page), m (real world) left, right, bottom, top |
File.Export | Colors | Enum types | normal, spotColors |
File.Export.SpotColors | Combine Enabled |
Bool String |
true, false [only if Colors = spotColors] Spotcolor name [only if Colors = spotColors] |
BMP, GIF, JPEG
Node <OcadScript> | Parameter | Data type | Values / Description |
---|---|---|---|
File.Export | File Format Quality Resolution Anti-Aliasing ColorCorrection |
String Enum types Integer Integer Boolean Boolean |
eg.: ‚c:\Export\Chlosterwald.bmp‘ BMP, GIF, JPEG only for JPEG, [0..100] in dpi [40..2540] true, false true, false |
File.Export.PartOfMap | Enabled Coordinates L, R, B, T |
Bool Enum types Float |
true, false mm (page), m (real world) left, right, bottom, top for rotated maps use here the coordinate of the upper left und lower right corner |
File.Export.Tiles | Enabled Width Height |
Boolean Integer Integer |
true, false [only if Enabled = true] [only if Enabled = true] |
File.Export.GeoRef | Enabled PixelSize CreateWorldFile |
Bool Float Bool |
true, false in meter [only if Enabled = true] true, false [only if Enabled = true] |
EPS
Node <OcadScript> | Parameter | Data type | Values / Description |
---|---|---|---|
File.Export | File Format ExportScale |
String Enum types Integer |
eg.: ‚c:\Export\Chlosterwald.eps ‘ EPS e.g. '10000' for the scale 1:10'000 |
File.Export.PartOfMap | Enabled Coordinates L, R, B, T |
Bool Enum types Float |
true, false mm (page), m (real world) left, right, bottom, top |
File.Export | Colors | Enum types | normal, spotColors |
File.Export.SpotColors | Enabled | Spotcolor name | [only if Colors = spotColors] |
SVG (Scalable Vector Graphics)
Node <OcadScript> | Parameter | Data type | Values / Description |
---|---|---|---|
File.Export | File Format ExportScale CompressFile |
String Enum types Integer Boolean |
eg.: ‚c:\Export\Chlosterwald.svg ‘ SVG e.g. '10000' for the scale 1:10'000 true, false |
File.Export.PartOfMap | Enabled Coordinates L, R, B, T |
Bool Enum types Float |
true, false mm (page), m (real world) left, right, bottom, top |
TIFF
Node <OcadScript> | Parameter | Data type | Values / Description |
---|---|---|---|
File.Export | File Format Resolution Anti-Aliasing ColorCorrection |
String Enum types Integer Boolean Boolean |
eg.: ‚c:\Export\Chlosterwald.tif‘ TIFF in dpi [40..2540] true, false true, false |
File.Export.PartOfMap | Enabled Coordinates L, R, B, T |
Bool Enum types Float |
true, false mm (page), m (real world) left, right, bottom, top |
File.Export.Tiles | Enabled Width Height |
Bool Integer Integer |
true, false [only if Enabled = true] [only if Enabled = true] |
File.Export.GeoRef | Enabled PixelSize CreateWorldFile |
Bool Float Bool |
true, false in meter [only if Enabled = true] true, false [only if Enabled = true] |
File.Export | Colors | Enum types | normal, spotColors |
File.Export.SpotColors | Combine Enabled |
Bool Spotcolor name |
true, false [only if Colors = spotColors] [only if Colors = spotColors] |
File.Export | ColorMode | Integer | 0 = 32 bit CMYK 1 = 24 bit RGB 2 = 256 colors 3 = grayscale 4 = 8 bit CMYK 5 = 1 bit black/white 6 = halftone screen [only if spotColor = true] |
File.Export | Compression | Integer | 1 = no compression 2 = CCITT [only used with ColorMode 5/6] 4 = FaxG4 [only used with ColorMode 5/6] 5 = LZW |
DXF
Node <OcadScript> | Parameter | Data type | Values / Description |
---|---|---|---|
File.Export | File Format ExportScale ConvertAnsiToOem ConvertOemToUnicode ObjectSelectedSymbols AddSymbolDescription UseCrtFileName ExportAsSplines Coordinates |
String Enum types Integer Boolean Boolean Boolean Boolean String Boolean Enum types |
eg.: ‚c:\Export\Chlosterwald.dxf ‘ DXF e.g. '10000' for the scale 1:10'000 true, false true, false true, false true, false eg.: ‚c:\CRT\Chlosterwald.crt‘ true, false m, mm |
Shape
Node <OcadScript> | Parameter | Data type | Values / Description |
---|---|---|---|
File.Export | ExportPath Format PointObjects LineObjects AreaObjects TextObjects Dataset WordWrap ProjectionFile Utf8Encoding |
String Enum types Boolean Boolean Boolean Boolean String Integer Boolean Boolean Boolean |
eg.: ‚c:\Export‘ (only path name) SHAPE true, false true, false true, false true, false all for all databases 1, 2, 3, ... for only one database true, false true, false true, false |
Example
The following example exports two pdf files in spot colors and two Shape files. Each OcadScript node can contain many children.
<?xml version="1.0" encoding="ISO-8859-1"?> <OcadScript>
<File.Open> <File>M:\OCAD11\Changes\11-06xx\11-0663\Chlosterwald.ocd</File> </File.Open>
<File.Export> //PDF export <File>M:\OCAD11\Changes\11-06xx\11-0663\output\Chlosterwald.pdf</File> <Format>PDF</Format> <PartOfMap> <Enabled>true</Enabled> <Coordinates>mm</Coordinates> <L>0</L> <R>50</R> <B>50</B> <T>100</T> </PartOfMap> <ExportScale>10000</ExportScale> <Colors>spotColors</Colors> <SpotColors> <Combine>false</Combine> <Enabled>Blau</Enabled> <Enabled>Gelb</Enabled> </SpotColors> </File.Export> <File.Export> //Shape export <ExportPath>M:\OCAD11\Changes\11-06xx\11-0663\output\</ExportPath> <Format>SHAPE</Format> <PointObjects>false</PointObjects> <LineObjects>true</LineObjects> <AreaObjects>true</AreaObjects> <TextObjects>false</TextObjects> <Dataset>all</Dataset> <WordWrap>true</WordWrap> <ProjectionFile>false</ProjectionFile> </File.Export>
<File.Save> <Enabled>true</Enabled> </File.Save>
<File.Close> <Enabled>true</Enabled> </File.Close> </OcadScript>
Run XML Script from the Command Line
It is possible to execute a XML script file from the command line or from batch file.
Open the Windows command and enter the OCAD program name and the xml script file. For example: "C:\Program Files\OCAD\OCAD 11\Ocad11.exe" "C:\Data\ExportScriptExample_PDF.xml"
Do not forget to use the parameter <File.Open> to open the file, <File.Close> to close it and <File.Exit> to close OCAD.
Open ocd File from the Command Line
It is possible to open an ocd file from the command line with optional view parameters.
Open the Windows command and enter the OCAD program name and the ocd file name.
For example:
"C:\Program Files\OCAD\OCAD 11\Ocad11.exe" "M:\Data\Map.cod"
Additional OCAD supports the following optional view parameters to open an map at desired postion and view scale.
-c: center for view -s: view scale
For example:
"C:\Program Files\OCAD\OCAD 11\Ocad11.exe" -c 710000,231000 -s 2500 "M:\Data\Map.cod"
Previous Chapter: Database
Next Chapter: Course Setting for Orienteering
Back to Main Page