I am having problems deciphering the limited notes
in the api.
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">I am hoping someone can give
me a suggestion to find out more about MapGuide plotting using the API
(onEndLayout).
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">I have not been able to find
somebody who uses plain old MapGuide to plot files on D or E size layouts.
The usual suggestion is use LiteView. I created an app that allows the
user to select which image they want on the output, which size (D or E) and
which rotation (portrait or Landscape).
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
size=2>Based on what I have
read in the limited api documentation, setting of the extents (ext) is a
function of where on the output the image will be, measure in
pixels.
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
size=2>Based empirical trial
and error, this equals about 315pixels per inch.
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
size=2>This seemed to be
working until they tried some random scales and rotations that created totally
inconsistent results.
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">THIS SHOULD NOT BE SUCH A
HASSLE! The image placement appears to be random depending on rotation and
scale selections.
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">I used cookies because global
variables always a pain in the neck for me.
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">function
onEndLayout(layout, info)
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>{
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial> //
Get values from the PrintLarge.htm form
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
var theSize = GetCookie("sizeCookie");
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
var theSign = GetCookie("signCookie");
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial> if
(theSign == null)
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
{ var sym = layout.addSymbol("disclaimer"); }// add basic
disclaimer 'MyLogo' symbol to layout and return as 'sym'
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
else
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
{
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
if ( theSign == "true" )
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
{ var sym = layout.addSymbol("signature");}
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
else
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
{ var sym = layout.addSymbol("no_signature"); }
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial> }
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
if (theSize == null)
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
{var ext = sym.getExtent(); // display symbol the top-left corner of
page
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
ext.set(50,2300,2200,3055); // bottom disclaimer was
ext.set(950,25,4200,800);
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
sym.setExtent(ext);}
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
else
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
{
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
if (theSize == "D-L") //D-size - Landscape
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
{ var ext = sym.getExtent();
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
ext.set(3350,6000,8700,6600); //
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
sym.setExtent(ext);}
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
if (theSize == "D-P") //D-size - Portrait
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
{ var ext = sym.getExtent();
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
ext.set(1750,6650,5000,7250); //(1750,9700,6300,10300)
19th (1750,8150,5950,8650) 18th
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
sym.setExtent(ext);}
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
if (theSize == "E-P") //E-size - Portrait
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
{ var ext = sym.getExtent();
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
ext.set(3350,13050,8700,13500); //
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
sym.setExtent(ext);}
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
if (theSize == "E-L") //E-size - Landscape
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
{ var ext = sym.getExtent();
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
ext.set(5150,9600,10500,10450); //
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
sym.setExtent(ext);}
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>
}
style="FONT-SIZE: 12pt">
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
// function ends if symbol doesn't load properly
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
if (sym == null) return;
style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">
face=Arial>}