新增 dcm 等医疗数位影像预览

This commit is contained in:
gaoxiongzaq
2023-04-20 16:06:01 +08:00
parent 76043a5b46
commit 83e20ac83c
19 changed files with 86959 additions and 1 deletions

View File

@ -0,0 +1,103 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8"/>
<meta name="viewport" content="width=device-width, user-scalable=yes, initial-scale=1.0">
<title>DCM预览</title>
<#include "*/commonHeader.ftl">
</head>
<style>
.container{
width: 100%;
height: 600px;
max-width: 900px;
margin: auto;
position: absolute;
top: 0;
left: 0;
bottom: 0;
right: 0;
background-color: green;
}
</style>
<body>
<#if currentUrl?contains("http://") || currentUrl?contains("https://")>
<#assign finalUrl="${currentUrl}">
<#else>
<#assign finalUrl="${baseUrl}${currentUrl}">
</#if>
<div class="container" id="cornerstoneViewport">
</div>
<script src="dcm/cornerstone.js"></script>
<script src="dcm/cornerstoneMath.js"></script>
<script src="dcm/cornerstoneTools.js"></script>
<script src="dcm/dicomParser.js"></script>
<script src="dcm/cornerstoneWADOImageLoader.bundle.min.js"></script>
<script src="dcm/hammer.min.js"></script>
<script src="dcm/initCornerstone.js"></script>
<script src="dcm/react.development.js" ></script>
<script src="dcm/react-dom.development.js"></script>
<script>
"use strict";
var process = {
env: {
NODE_ENV: "production"
}
};
window.process = process;
</script>
<script src="dcm/index.umd.js"></script>
<script>
var url = '${finalUrl}';
var baseUrl = '${baseUrl}'.endsWith('/') ? '${baseUrl}' : '${baseUrl}' + '/';
if (!url.startsWith(baseUrl)) {
url = baseUrl + 'getCorsFile?urlPath=' + encodeURIComponent(Base64.encode(url));
}
"use strict";
var imageNames = [];
for (var i = 1; i < 546; i++) {
imageNames.push(url);
}
// console.log(url);
var imageIds = imageNames.map(name => {
return 'dicomweb:'+url+'';
});
var imagePromises = imageIds.map(imageId => {
return cornerstone.loadAndCacheImage(imageId);
});
var exampleData = {
stack: {
currentImageIdIndex: 0,
imageIds: imageIds
}
};
var CornerstoneViewport = window["react-cornerstone-viewport"];
var props = {
viewportData: exampleData,
cornerstone,
cornerstoneTools,
activeTool: "Brush"
};
var app = React.createElement(CornerstoneViewport, props, null);
ReactDOM.render(
app,
document.getElementById("cornerstoneViewport")
);
/*初始化水印*/
window.onload = function () {
initWaterMark();
}
</script>
</body>
</html>

View File

@ -79,6 +79,7 @@
<li>支持 svg 矢量图像格式文件</li>
<li>支持 mp3,wav,mp4,flv 等音视频格式文件</li>
<li>支持 avi,mov,rm,webm,ts,rm,mkv,mpeg,ogg,mpg,rmvb,wmv,3gp,ts,swf 等视频格式转码预览</li>
<li>支持 dcm 等医疗数位影像预览</li>
</ol>
</div>
<#-- 输入下载地址预览文件 -->

View File

@ -46,6 +46,16 @@
<div class="page-header">
<h1>版本发布记录</h1>
</div>
<div class="panel panel-success">
<div class="panel-heading">
<h3 class="panel-title">2023年04月20日v4.3.0-SNAPSHOT版本</h3>
</div>
<div class="panel-body">
<div>
1.新增 dcm 等医疗数位影像预览<br>
</div>
</div>
<div class="panel panel-success">
<div class="panel-heading">
<h3 class="panel-title">2023年04月18日v4.2.1 版本</h3>