get_mapper();
set_mapper(value);
Object.defineProperty('mapper');
Type | Description |
---|---|
AnnContainerMapper | The mapper for this AnnContainer. The default value is the object created by AnnContainerMapper.CreateDefault. |
The mapper is used by this container when converting display, container and image coordinates. For more information, refer to AnnContainerMapper.
If you set the value of this property to null, then this container will use an object created from AnnContainerMapper.CreateDefault instead. Therefore, you will always get a valid object when querying the value of this property.
This example will use the mapper to convert a rectangle value from annotation to image units and back.
example: function SiteLibrary_DefaultPage$example() { var inch = 720.0; // Create a new annotation container, 8.5 by 11 inches var container = new lt.Annotations.Core.AnnContainer(); // Size must be in annotation units (1/720 of an inch) container.set_size(lt.LeadSizeD.create(8.5 * inch, 11 * inch)); // Set its mapper, assuming the screen DPI is 96 and the image DPI is 300 container.set_mapper(new lt.Annotations.Core.AnnContainerMapper(96, 96, 300, 300)); // Add a blue on yellow rectangle from 3in 3in to 4in 4in var rectObj = new lt.Annotations.Core.AnnRectangleObject(); rectObj.set_rect(lt.LeadRectD.create(3 * inch, 3 * inch, 1 * inch, 1 * inch)); rectObj.set_stroke(lt.Annotations.Core.AnnStroke.create(lt.Annotations.Core.AnnSolidColorBrush.create("blue"), lt.LeadLengthD.create(1))); rectObj.set_fill(lt.Annotations.Core.AnnSolidColorBrush.create("yellow")); container.get_children().add(rectObj); // Get the rectangle in annotations units var rc = rectObj.get_rect(); alert("Annotations units: " + rc.get_left() + "," + rc.get_top() + "," + rc.get_right() + "," + rc.get_bottom()); // Convert it to image coordinates rc = container.get_mapper().rectFromContainerCoordinates(rc, lt.Annotations.Core.AnnFixedStateOperations.none); alert("Image units (pixels): " + rc.get_left() + "," + rc.get_top() + "," + rc.get_right() + "," + rc.get_bottom()); // If this container is used with an image, you can use the pixels values above to find the exact value on the image // Convert it to back to annotations units rc = container.get_mapper().rectToContainerCoordinates(rc); alert("Original units: " + rc.get_left() + "," + rc.get_top() + "," + rc.get_right() + "," + rc.get_bottom()); },