VintaSoft Imaging .NET SDK 14.0: Документация для Веб разработчика
В этом разделе
    Просмотр DICOM-метаданных поверх изображения в веб DICOM-просмотрщике
    В этом разделе
    VintaSoft Web DICOM Viewer позволяет отображать текстовые наложения поверх изображения в веб DICOM-просмотрщике. Текстовое наложение представлено классом WebDicomTextOverlayJS и позволяет указать текст, привязку текста, формат текста, шрифт текста, видимость наложения.

    Функция WebDicomViewerBaseControlJS.get_TextOverlays позволяет получить коллекцию, содержащую текстовые наложения, которые отображаются в DICOM просмотрщике.

    Вот JavaScript-код, который демонстрирует, как добавить текстовое наложение с значением DICOM-тега в DICOM-просмотрщик:
    /**
     Adds a text overlay with DICOM tag value to the DICOM viewer.
     @param {object} dicomControl An instance of Vintasoft.Imaging.Dicom.WebDicomControlJS class.
    */
    function addTextOverlayWithDicomTagValueToDicomViewer(dicomControl) {
        // get DICOM viewer that is used in DICOM control
        var dicomViewerControl = dicomControl.get_DicomViewerControl();
    
        // get file metadata from DICOM image
        var fileMetadata = dicomViewerControl.get_FocusedImage().get_FileMetadata();
    
        // zero-based index of metadata element
        var metadataElementIndex = 1;
        // get metadata element
        var metadataElement = fileMetadata[metadataElementIndex];
        // get element identifier
        var medataElementId = metadataElement.get_ElementId();
    
        // create anchor that defines position of text overlay
        var anchor = new Vintasoft.Imaging.Primitives.WebAnchorTypeEnumJS("Top");
    
        // create text overlay for metadata element
        var textOverlay = new Vintasoft.Imaging.Dicom.WebDicomMetadataTextOverlayJS(anchor, medataElementId);
    
        // get the text overlay collection that is used by DICOM viewer
        var textOverlayCollection = dicomViewerControl.get_TextOverlays();
        // add text overlay to the text overlay collection
        textOverlayCollection.add(textOverlay);
    
        // redraw DICOM viewer
        dicomViewerControl.update();
    }
    
    


    Вот JavaScript-код, который демонстрирует, как добавить текстовое наложение с статическим текстом в DICOM-просмотрщик:
    /**
     Adds a text overlay with static text to the DICOM viewer.
     @param {object} dicomControl An instance of Vintasoft.Imaging.Dicom.WebDicomControlJS class.
    */
    function addTextOverlayWithStaticTextToDicomViewer(dicomControl) {
        // get DICOM viewer that is used in DICOM control
        var dicomViewerControl = dicomControl.get_DicomViewerControl();
    
        // create anchor that defines position of text overlay
        var anchor = new Vintasoft.Imaging.Primitives.WebAnchorTypeEnumJS("Top");
    
        // create text overlay
        var textOverlay = new Vintasoft.Imaging.Dicom.WebDicomTextOverlayJS(anchor);
    
        // set text for text overlay
        textOverlay.set_Text("Test");
    
        // get the text overlay collection that is used by DICOM viewer
        var textOverlayCollection = dicomViewerControl.get_TextOverlays();
        // add text overlay to the text overlay collection
        textOverlayCollection.add(textOverlay);
    
        // redraw DICOM viewer
        dicomViewerControl.update();
    }
    
    


    Вот JavaScript-код, который демонстрирует, как изменить текстовое наложение в DICOM-просмотрщике:
    /**
     Changes a text overlay in DICOM viewer.
     @param {object} dicomControl An instance of Vintasoft.Imaging.Dicom.WebDicomControlJS class.
    */
    function changeOverlayTextInDicomViewer(dicomControl) {
        // get DICOM viewer that is used in DICOM control
        var dicomViewerControl = dicomControl.get_DicomViewerControl();
    
        // get text overlay collection
        var textOverlayCollection = dicomViewerControl.get_TextOverlays();
    
        // zero-based index of overlay element that shoud be changed
        var overlayElementIndex = 9;
        var overlayElement = textOverlayCollection.getItem(overlayElementIndex);
    
    
        // set new position for overlay
        overlayElement.set_Anchor(new Vintasoft.Imaging.Primitives.WebAnchorTypeEnumJS("TopLeft"));
    
        // set new text for overlay
        overlayElement.set_Text("Test");
    
    
        // create new font properties for overlay text
    
        var fontName = "Calibri";
        var fontSize = 20;
        var fontColor = "rgb(255,0,0)";
        var isBold = false;
        var isItalic = false;
        var isUnderline = false;
        var isStrikeout = false;
    
        var fontProperties = overlayElement.get_FontProperties();
        if (fontProperties != null) {
            isBold = fontProperties.get_IsBold();
            isItalic = fontProperties.get_IsItalic();
            isUnderline = fontProperties.get_IsUnderline();
            isStrikeout = fontProperties.get_IsStrikeout();
        }
    
        fontProperties = new Vintasoft.Imaging.Dicom.WebVintasoftFontPropertiesJS(fontName, fontSize, fontColor, isBold, isItalic, isUnderline, isStrikeout);
        // set new font properties for overlay
        overlayElement.set_FontProperties(fontProperties);
    
    
        // redraw DICOM viewer
        dicomViewerControl.update();
    }
    
    


    Вот JavaScript-код, который демонстрирует, как удалить текстовые наложения из DICOM-просмотрщика:
    /**
     Removes text overlays from DICOM viewer.
     @param {object} dicomControl An instance of Vintasoft.Imaging.Dicom.WebDicomControlJS class.
    */
    function removeTextOverlaysFromDicomViewer(dicomControl) {
        // get DICOM viewer that is used in DICOM control
        var dicomViewerControl = dicomControl.get_DicomViewerControl();
    
        // get the text overlay collection that is used by DICOM viewer
        var textOverlayCollection = dicomViewerControl.get_TextOverlays();
    
        // zero-based index of text overlay that must be removed from the text overlay collection
        var overlayElementIndex = 9;
        // get overlay element
        var overlayElement = textOverlayCollection.getItem(overlayElementIndex);
        // remove overlay element from the text overlay collection
        textOverlayCollection.remove(overlayElement);
    
        // zero-based index of overlay element that must be removed from the text overlay collection
        overlayElementIndex = 10;
        // remove overlay element by index
        textOverlayCollection.removeAt(overlayElementIndex);
    
        // redraw DICOM viewer
        dicomViewerControl.update();
    }