Welcome Guest! To enable all features, please Login or Register.

Notification

Icon
Error

Options
View
Last Go to last post Unread Go to first unread post
#1 Posted : Sunday, October 9, 2016 3:35:17 AM(UTC)
la_morte1977

Groups: Registered
Posts: 30


Hello,
it's possible to drag the annotation object (similar to design mode on automated annotations) created on this example?

https://www.leadtools.co...automatedannotation.html

I'm using windows.form vb.net/c# with latest downloaded demo version
 

Try the latest version of LEADTOOLS for free for 60 days by downloading the evaluation: https://www.leadtools.com/downloads

Wanna join the discussion? Login to your LEADTOOLS Support accountor Register a new forum account.

#2 Posted : Monday, October 10, 2016 2:10:24 PM(UTC)

Hadi  
Hadi

Groups: Manager, Tech Support, Administrators
Posts: 171

Was thanked: 5 time(s) in 5 post(s)

Hello,

Thank you for contacting LEADTOOLS Support. The tutorial that you are referencing is the Non-Automated annotations so it does not have the same functionality that the automated annotations have. If you are wanting to implement automated annotations, please see the following tutorial for a step-by-step guide on how to create a simple project:

https://www.leadtools.co...utomatedannotations.html

I have created and attached a simple Automated annotation demo using Winforms here so that you can download it and get started evaluating.

Please let me know if you have any other questions or issues

File Attachment(s):
SimpleWinformsAnnotations.zip (11kb) downloaded 229 time(s).
Hadi Chami
Developer Support Manager
LEAD Technologies, Inc.

LEAD Logo
 
#3 Posted : Monday, October 10, 2016 4:20:55 PM(UTC)
la_morte1977

Groups: Registered
Posts: 30


Hello Hadi,

I think, I need a non-automated annotation for this type of requirement:

I need to create automatically an AnnotationStampObject with a picture in a certain position of rasterimageviewer. The image on StampObject may be generated with leadtools.barcode such as barcode image or may be printed from an external application to the leadtools virtual printer as barcode image.

I need to move with this Stamp Object, with the mouse by dragging It, if by chance overlaps the images or text that are in raterimageviewer.

And finally, I can use the realize command to burn annotation image over the rasterimage.

On this post I have been advised to use the annotation stamp, but I don't have understood how to do this:
https://www.leadtools.co...pdf-raster-or-pdf-vector


Thanks for your help!
 
#4 Posted : Tuesday, October 11, 2016 4:18:56 PM(UTC)

Hadi  
Hadi

Groups: Manager, Tech Support, Administrators
Posts: 171

Was thanked: 5 time(s) in 5 post(s)

If you are just trying to add annotations programmatically while still being able to drag/edit the annotations, then you don't need to use non-automated annotations.

I have written a small sample demo that shows how to use our Automated annotations along with our BarcodeEngine and BarcodeWriter classes to write barcodes to a AnnStampObject.

Here is a screenshot of what the demo looks like:

demo screenshot

Here is the relevant code from the sample:

Code to write the barcode to an image:

Code:
RasterImage barcodeImage = RasterImage.Create(300, 300, 24, 150, RasterColor.White);

LogicalRectangle writebounds = LogicalRectangle.FromLTRB(0, 0, barcodeImage.ImageSize.Width, barcodeImage.ImageSize.Height, LogicalUnit.Pixel);
BarcodeEngine barcodeEngine = new BarcodeEngine();
QRBarcodeData qrData = BarcodeData.CreateDefaultBarcodeData(BarcodeSymbology.QR) as QRBarcodeData;
qrData.Value = barcodestring;

QRBarcodeWriteOptions options = new QRBarcodeWriteOptions();
options.HorizontalAlignment = BarcodeAlignment.Center;
options.VerticalAlignment = BarcodeAlignment.Center;

barcodeEngine.Writer.CalculateBarcodeDataBounds(writebounds, barcodeImage.XResolution, barcodeImage.YResolution, qrData, options);
barcodeEngine.Writer.WriteBarcode(barcodeImage, qrData, options);


Code to add the Barcode Image to the stamp and the stamp to the Automation programmatically:

Code:
AnnStampObject stamp = new AnnStampObject();
stamp.Rect = LeadRectD.Create(200, 200, 600, 600);
stamp.Text = "";
stamp.Stroke.Stroke = AnnSolidColorBrush.Create("");

using (MemoryStream ms = new MemoryStream())
using (RasterCodecs codecs = new RasterCodecs())
{
     codecs.Save(barcodeImage, ms, RasterImageFormat.Png, 32);
     stamp.Picture = new AnnPicture(ms.ToArray());
}

annAutomation.Container.Children.Add(stamp);
annAutomation.InvalidateObject(stamp);


You can download the project here:
File Attachment(s):
LEADTOOLS Barcode Annotation Demo.zip (12kb) downloaded 236 time(s).
Hadi Chami
Developer Support Manager
LEAD Technologies, Inc.

LEAD Logo
 
#5 Posted : Sunday, April 16, 2017 9:35:15 PM(UTC)
wangbill18

Groups: Registered
Posts: 45


Hi Charmi,

how to show the ContextMenu when annotation is right clicked? so user can change annotation text, size or just delete..
 
#6 Posted : Monday, April 17, 2017 8:34:20 AM(UTC)

Hadi  
Hadi

Groups: Manager, Tech Support, Administrators
Posts: 171

Was thanked: 5 time(s) in 5 post(s)

In order to have the ContextMenu show when you right click, you will need to subscribe to the OnShowContextMenu event from the Automation like so:

Code:
         automation.OnShowContextMenu += new EventHandler<AnnAutomationEventArgs>(automation_OnShowContextMenu);


Code:
void automation_OnShowContextMenu(object sender, AnnAutomationEventArgs e)
      {
         if (e != null && e.Object != null)
         {
            _automationControl.AutomationInvalidate(LeadRectD.Empty);
            AnnAutomationObject annAutomationObject = e.Object as AnnAutomationObject;
            if (annAutomationObject != null)
            {
               ObjectContextMenu menu = annAutomationObject.ContextMenu as ObjectContextMenu;
               if (menu != null)
               {
                  menu.Automation = sender as AnnAutomation;
                  menu.Show(this, _viewer.PointToClient(Cursor.Position));
               }
            }
         }
         else
         {
            ManagerContextMenu defaultMenu = new ManagerContextMenu();
            defaultMenu.Automation = sender as AnnAutomation;
            defaultMenu.Collapse += defaultMenu_Collapse;
            defaultMenu.Show(this, _viewer.PointToClient(Cursor.Position));
         }
      }
Hadi Chami
Developer Support Manager
LEAD Technologies, Inc.

LEAD Logo
 
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.

Powered by YAF.NET | YAF.NET © 2003-2017, Yet Another Forum.NET
This page was generated in 0.234 seconds.