Jump to: navigation, search

Annotation and HotSpot


Annotation (also known as redlining or inking) is a type of visual marking on documents. It is currently possible on PDF and image documents with the annotation classificatioin. The typical types of different annotations include inking, free text, text markup and shape.

HotSpotting summarizes a general technique in UBIK®, that allows to overlay data on the visual representation of other UBIK® objects. The overlaid data can be of quite a variety, starting from annotations (also known as Redlining or Inking) over Links/Cross-references between objects, to UBIK® Properties in all their different possible types and appearances. While HotSpotting is an abstract approach that could be applied to any kind of UBIK® object, the client currently only supports displaying and interacting with HotSpots on PDF document objects.

Annotations

All annotations overlay on top of the documents. Technically speaking, they are separately stored in dedicated ANNOTATIONS properties. When an annotation is created, the current user is remembered as the owner who is allowed to edit it afterwards.

Merge/Flatten

Annotations on a document can be merged/flattened/burnt in. After that, the annotations become a part of the document file and can be viewed in applications other than UBIK® as well. However, you also lose the possibility to edit or interact with them.

  • For image documents, it is only possible to merge annotations on the clients and it is the default behavior. But you can turn it off through the MergeAnnotationsOnSave (XAML) configuration.
  • For PDF documents, it is only possible to merge annotations on the server.
IC Hint square.pngSince server 3.7.0 Build 15424 free text annotations support Chinese characters when flattening them into pdf.

Known issues

Can not select free texts and text markups on UWP

On the UWP/WinX client, there is currently an issue with the PDF control we use which causes the the user information to be lost on free text and text markup annotations during saving.

  • Because of that, you can't select/edit such annotations once they are saved.
  • Unfortunately, this also affects already existing annotations of such types. To clarify, simply viewing the annotations will not cause the lost of the user information. It happens as soon as you save all annotations (after either editing/deleting existing ones or adding new ones).

We will be in contact with our PDF control provider and try to find a fix for it.

Can not select older annotations on Xamarin

We changed the way we uniquely identify annotations on the Xamarin client, in order to avoid using slightly different colors for ink annotations, which proved to be problematic when you have many annotations of the same chosen color. This means, if you use the new Xamarin client to view annotations created on older clients, you will not be able to select or edit them.

HotSpots

All HotSpots have in common that they know

  • on which layer they sit
  • their offset relative to the Top/Left corner of the layer
  • their width and their height
  • their shape (angular or round/elliptical)

When it comes to their representations and capabilities, there are different types that support certain use-cases and/or types of backing UBIK® objects or properties:

InputSpot

An InputSpot is a link to a property from a UBIK® Object. It displays the value of the property and reacts to user interaction, e.g. with popping up the property editor when tapped on it. Any existing UBIK® property can be represented as an InputSpot.

MediaSpot

A MediaSpot is a specialization of an InputSpot that works with properties that can hold media (Audio/Video) data.

SignatureSpot

A SignatureSpot is a specialization of an InputSpot that works with properties of type Signature. It allows for graphically signing of objects.

ScanSpot

A scan spot is a HotSpot that scans the area it covers using OCR. So when the user moves it around a document or resizes it, it will write the recognized OCR text to its value.

Wiki Under Construction Start.PNG

HotSpotting consists of 3 main elements, the Target, the Layer(s) and the HotSpots:

Target

A HotSpotting target can be basically any UBIK® object that holds the classification HotSpotting target. In most of the use cases, this target will be file document or a derivative of that class.

Layer

A layer can be envisioned as a transparent film that is overlaid on the target and contains the actual HotSpots. Technically their can be as many layers as desired, overlaying each others. A layer covers the whole physical area of its target, i.e. the dimensions of the page of a document.

HotSpots

A HotSpot is a single data object that sits on a layer and typically has a visual representation, such as the value of a property it represents.

How to enable Hotspotting in the UI

In order to enable the hotspotting feature in the newest 4.0 release you have to do the following. Go to the UBIKDocumentArea.xaml and add the 'HotspotButtonVisibility="Visible"' line to the UBIKPdfViewer. The <ctrls:UBIKPdfViewer> should look like the following:

<ctrls:UBIKPdfViewer
   HotspotButtonVisibility="Visible"
   AutoSave="{Binding DataContext.ApplicationSettings.CurrentProfile.ContentSettings.AutoSaveMode, ElementName=pdfBorder}"
   ContentViewModel="{Binding Path=DataContext, ElementName=pdfBorder}"
   HotSpotTappedCommand="{Binding DataContext.HotSpotViewModel.HotSpotTappedCommand, ElementName=pdfBorder}"
   HotSpotTemplateSelector="{StaticResource DefaultHotSpotTemplateSelector}"
   PageChangedCommand="{Binding DataContext.HotSpotViewModel.PageChangedCommand, ElementName=pdfBorder}" />

Wiki Under Construction End.PNG

See also