在线查看图片

在线图片查看器 该工具集成了图片的在线查看,支持双点触控缩放,单点移动,左右切换查看图片。主要做的是网络图片的查看,可在adapter或FinalData中修改,设置成本地图片也可以加载。 立即下载

<div id="loading" style="margin:30px;">
 <!--loading 图片-->
 <span>正在载入图片,请稍待...</span><img src="${base}/ntkoOffice/loading.gif" alt="" />
</div>
<html>
<head>
<base href="${request.getScheme()}://${request.getServerName()}:${request.getServerPort().toString()}${request.getContextPath()}/" />
 <title></title>
 <meta http-equiv="content-type" content="text/html; charset=UTF-8">
<style type="text/css">
<!--
 .nav {font-family:  Arial,Verdana, "宋体";font-size:4px;height:20px}
 .btn {margin:0px;padding:2px;width:32px;height:20px;color:#000;
      font-size:10px;font-family:  Arial,Verdana, "宋体";font-weight:800;text-decoration:none;
      cursor:hand;border:thin outset;background-color:#fff;
      FILTER: alpha(opacity=65); /* IE使用的半透明 */
      -moz-opacity: 0.6; /* Firefox使用的半透明 */
      }
 .btn:hover {background-color:#ccc;color:#c00;}

//-->
</style> 
<script type="text/javascript">
function addPDFSupport()
{
 
 var pathName=document.getElementById("fileURL").value;
 //document.getElementById("img1").src= getPath()+"/ntkoOffice/file/"+pathName; //打开PDF从URL
}

function getPath(){
 //获取当前网址,如: http://localhost:8083/uimcardprj/share/meun.jsp
    var curWwwPath=window.document.location.href;
    //获取主机地址之后的目录,如: uimcardprj/share/meun.jsp
    var pathName=window.document.location.pathname;
    var pos=curWwwPath.indexOf(pathName);
    //获取主机地址,如: http://localhost:8083
    var localhostPaht=curWwwPath.substring(0,pos);
    //获取带"/"的项目名,如:/uimcardprj
    var projectName=pathName.substring(0,pathName.substr(1).indexOf('/')+1);
    return localhostPaht+projectName;
}

 

////////////////////////////////////////////////////////////////////////
window.onload=function(){
drag(document.getElementById('drag'));

document.getElementById('adpanel').style.top = document.body.clientHeight - 120;
orgH=loadpic.height;
orgW=loadpic.width;
document.getElementById('minipic').src=document.getElementById('loadpic').src;
document.getElementById('mainpic').src=document.getElementById('loadpic').src;
loadpic.style.display="none" ;
loading.style.display="none" ;
bar.style.display="block" ;
mainpic.style.display="block" ;
resizefit();
//resize (1);
showpicpos();
setcolors(3);
//var pathName=document.getElementById("fileURL").value;
 //loadpic.src=getPath()+"/ntkoOffice/file/"+pathName;
 //mainpic.src=getPath()+"/ntkoOffice/file/"+pathName;
 //mainpic.title="欢迎使用ImageSee";


}


////////////////////////////////////////////////////////////////////////
window.onresize=function(){
document.getElementById('adpanel').style.top = document.body.clientHeight - 120;
showpicpos();
}

////////////////////////////////////////////////////////////////////////
function drag(o){
 o.onmousedown=function(a){
  var d=document;if(!a)a=window.event;
  var x=a.layerX?a.layerX:a.offsetX,y=a.layerY?a.layerY:a.offsetY;
  if(o.setCapture)
   o.setCapture();
  else if(window.captureEvents)
   window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP);

  d.onmousemove=function(a){
   if(!a)a=window.event;
   if(!a.pageX)a.pageX=a.clientX;
   if(!a.pageY)a.pageY=a.clientY;
   var tx=a.pageX-x,ty=a.pageY-y;

var cH;
var cW;
cH=document.all["mainpic"].height ;
cW=document.all["mainpic"].width ;

if (cW > document.body.clientWidth) {
 if ((tx + cW) < document.body.clientWidth -20) {
  tx = document.body.clientWidth -20 - cW;}
 if (tx > 20) {
 tx = 20;}
} else {
 tx = (document.body.clientWidth - cW)/2;
}

if (cH > document.body.clientHeight) {
 if ((ty + cH) < document.body.clientHeight -20) {
  ty = document.body.clientHeight -20 - cH;}
 if (ty > 20) {
 ty = 20;}
} else {
 ty = (document.body.clientHeight - cH)/2;
}

   o.style.left=tx;
   o.style.top=ty;
                        showpicpos();
  };

  d.onmouseup=function(){
   if(o.releaseCapture)
    o.releaseCapture();
   else if(window.captureEvents)
    window.captureEvents(Event.MOUSEMOVE|Event.MOUSEUP);
   d.onmousemove=null;
   d.onmouseup=null;
  };
 };
}


var orgH;
var orgW;

//var Request=new Object();
//Request=GetRequest();
var pic;
//pic=Request['pic'];

 

////////////////////////////////////////////////////////////////////////
function setcolors (x){
if (x==1) {document.body.style.backgroundColor="#000";}
if (x==2) {document.body.style.backgroundColor="#fff";}
if (x==3) {document.body.style.backgroundColor="#cdcdde";}
}

function setpos (x){
 o=document.getElementById('drag');
 if (x==1) {
  o.style.left=20;
  o.style.top= 20;}
 if (x==2) {
  o.style.left=20;
  o.style.top =document.body.clientHeight - mainpic.height -20;}
 if (x==3) {
  o.style.left=document.body.clientWidth - mainpic.width -20;
  o.style.top= 20;}
 if (x==4) {
  o.style.left=document.body.clientWidth - mainpic.width -20;
  o.style.top =document.body.clientHeight - mainpic.height -20;}
 showpicpos();
}

////////////////////////////////////////////////////////////////////////
function loadpicerror () {
var picname = loadpic.src;
bar.style.display="none" ;
showpicpos ();
document.title ='图片浏览ImageSee';
if (pic) {
 loadpic.src="err.jpg";
 mainpic.src="err.jpg";
 //mainpic.width=256;
 //mainpic.height=256;
 mainpic.title="指定的图片不存在";
 alert('指定的图片不存在' + picname);}
else {
 loadpic.src="welcome.jpg";
 mainpic.src="welcome.jpg";
 //mainpic.width=452;
 //mainpic.height=350;
 mainpic.title="欢迎使用ImageSee";
}

}

////////////////////////////////////////////////////////////////////////
function resizefit () {
if  ( orgW > orgH ) {
var x;
x=orgW;
x=(document.body.clientWidth)/x;
mainpic.width=document.body.clientWidth ;
mainpic.height=orgH * x ;

var k1;
k1=mainpic.width / orgW;

mainpic.height= Math.floor(orgH * x) ;

o=document.getElementById('drag');
Py=Number(o.style.top.replace("px",""));
Py=Math.floor(Py * x / k1);


if ((Py + orgH * x) < document.body.clientHeight -20) {
Py = document.body.clientHeight -20 - orgH * x;
}

if (Py > 20) {
Py = 20;
}

if ( orgH * x < document.body.clientHeight ) {
Py = (document.body.clientHeight - orgH * x)/2;
}
o.style.left=0;
o.style.top= Py;
}
else{
var x;
x=orgH;
x=(document.body.clientHeight)/x;
mainpic.width=orgW * x ;
mainpic.height=document.body.clientHeight ;

var k1;
k1=mainpic.width / orgW;

mainpic.width= Math.floor(orgW * x) ;

o=document.getElementById('drag');
Px=Number(o.style.left.replace("px",""));
Px=Math.floor(Px * x / k1);

if ((Px + orgW * x) < document.body.clientWidth -20) {
Px = document.body.clientWidth -20 - orgW * x;
}


if (Px > 20) {
Px = 20;
}

if ( orgW * x < document.body.clientWidth ) {
Px = (document.body.clientWidth - orgW * x)/2;
}

o.style.left=Px;
o.style.top= 0;
}

o=document.getElementById('drag');
//o.style.left=0;
//o.style.top=0;
document.title = "ZoomTo: FullScreen" + " | " + mainpic.src;
showpicpos ();
}

////////////////////////////////////////////////////////////////////////
function resize (x) {
if (mainpic.width== Math.floor(orgW * x)){} else {
var k1;
k1=mainpic.width / orgW;

mainpic.width= Math.floor(orgW * x) ;
mainpic.height= Math.floor(orgH * x) ;

o=document.getElementById('drag');
Px=Number(o.style.left.replace("px",""));
Py=Number(o.style.top.replace("px",""));
Px=Math.floor(Px * x / k1);
Py=Math.floor(Py * x / k1);

if ((Px + orgW * x) < document.body.clientWidth -20) {
Px = document.body.clientWidth -20 - orgW * x;
}
if ((Py + orgH * x) < document.body.clientHeight -20) {
Py = document.body.clientHeight -20 - orgH * x;
}

if (Px > 20) {
Px = 20;
}
if (Py > 20) {
Py = 20;
}

if ( orgW * x < document.body.clientWidth ) {
Px = (document.body.clientWidth - orgW * x)/2;
}
if ( orgH * x < document.body.clientHeight ) {
Py = (document.body.clientHeight - orgH * x)/2;
}

o.style.left=Px;
o.style.top= Py;
document.title = "ZoomTo: " + Math.round(x*100) +"% | " + mainpic.src;
showpicpos();
}
}


////////////////////////////////////////////////////////////////////////
function RotateImage(x) {
 document.all["mainpic"].style.filter="progid:DXImageTransform.Microsoft.BasicImage(Rotation=" + x + ")";
 document.all["minipic"].style.filter="progid:DXImageTransform.Microsoft.BasicImage(Rotation=" + x + ")";
}

////////////////////////////////////////////////////////////////////////
function showpicpos () {
var cH;
var cW;
cH=document.all["mainpic"].height ;
cW=document.all["mainpic"].width ;

if ((cH > document.body.clientHeight) || (cW > document.body.clientWidth))  {
 var cKH;
 var cKW;
 cKH=cH / document.body.clientHeight;
 cKW=cW / document.body.clientWidth;

 if ( cW > cH ) {
  document.all["minipic"].width=100;
  document.all["minipic"].height=100 * orgH / orgW;
  document.all["minipicview"].style.width=100 * document.body.clientWidth / cW;
  document.all["minipicview"].style.height= document.body.clientHeight / document.body.clientWidth * 100 * document.body.clientWidth / cW;}
 else{
  document.all["minipic"].height=100;
  document.all["minipic"].width=100 * orgW / orgH;
  document.all["minipicview"].style.height= 100 * document.body.clientHeight / cH;
  document.all["minipicview"].style.width= document.body.clientWidth / document.body.clientHeight * 100 * document.body.clientHeight / cH;}

 o=document.getElementById('drag');
 Px=Number(o.style.left.replace("px",""));
 Py=Number(o.style.top.replace("px",""));
 document.all["minipicview"].style.top=- Py * document.all["minipic"].height / document.all["mainpic"].height;
 document.all["minipicview"].style.left=- Px * document.all["minipic"].width / document.all["mainpic"].width;
 document.all["minipicpanel"].style.display="block";}

else{
 document.all["minipicpanel"].style.display="none";}
}

////////////////////////////////////////////////////////////////////////
function moveAdPanel(x) {
 if (x==1) {
  adpanel.style.top=document.body.clientHeight - 20;
  admain.style.display='none';
  adbtn1.style.display='none';
  adbtn2.style.display='inline';}
 if (x==2) {
  adpanel.style.top=document.body.clientHeight - 120;
  admain.style.display='block';
  adbtn1.style.display='inline';
  adbtn2.style.display='none';}
}


////////////////////////////////////////////////////////////////////////
function GetRequest()
{
var url = location.search; //获取url中"?"符后的字串
var theRequest = new Object();
if(url.indexOf("?") != -1)
{
  var str = url.substr(1);
    strs = str.split("&");
  for(var i = 0; i < strs.length; i ++)
    {
     theRequest[strs[i].split("=")[0]]=unescape(strs[i].split("=")[1]);
    }
}
return theRequest;
}

////////////////////////////////////////////////////////////////////////
function movePicByClick(event) {

if (event.offsetX) {
var cX = event.offsetX - Number(document.all["minipicview"].style.width.replace("px","")) / 2;
var cY = event.offsetY - Number(document.all["minipicview"].style.height.replace("px","")) / 2;
}
if (event.layerX) {
var cX = event.layerX - Number(document.all["minipicview"].style.width.replace("px","")) / 2;
var cY = event.layerY - Number(document.all["minipicview"].style.height.replace("px","")) / 2;
}

var cH;
var cW;
cH=document.all["mainpic"].height ;
cW=document.all["mainpic"].width ;
 var cKH;
 var cKW;
 cKH=cH / document.body.clientHeight;
 cKW=cW / document.body.clientWidth;

 o=document.getElementById('drag');
 Px=Number(o.style.left.replace("px",""));
 Py=Number(o.style.top.replace("px",""));
Py =- cY / (document.all["minipic"].height / document.all["mainpic"].height) ;
Px= - cX / (document.all["minipic"].width / document.all["mainpic"].width);

if (cW > document.body.clientWidth) {
 if ((Px + cW) < document.body.clientWidth -20) {
  Px = document.body.clientWidth -20 - cW;}
 if (Px > 20) {
 Px = 20;}
} else {
 Px = (document.body.clientWidth - cW)/2;
}

if (cH > document.body.clientHeight) {
 if ((Py + cH) < document.body.clientHeight -20) {
  Py = document.body.clientHeight -20 - cH;}
 if (Py > 20) {
 Py = 20;}
} else {
 Py = (document.body.clientHeight - cH)/2;
}

o.style.left=Px;
o.style.top=Py;

showpicpos();
}


/////////////////////////////////////////
function addme(){
url = location.href;
var myDate = new Date();
title='收藏图片 ' + myDate.getFullYear() + '年' + (myDate.getMonth()+1) + '月' + myDate.getDate() + '日' + myDate.getHours() + '时' + myDate.getMinutes() + '分'
title = prompt("请输入该图片描述文字", title);
if (title) {} else {title=''}
if(document.all)
{window.external.AddFavorite(url,title)}
else{window.sidebar.addPanel(title, url, "")}
}

//-->
</script>
</head>
<body bgcolor="#ffffff" onload="addPDFSupport()"; scroll="no" style="margin:0px;padding:0px;background-color:#fff;overflow:hidden;
">
<input type="hidden" id="fileURL" value="${(fileURL)!}">
<input type="hidden" id="isPrint" value="${(isPrint)!}">
 <div id="bar" name="bar" style="width:100%;height:20px;position:absolute;Z-index:200; display:none;">
  <table border="0" width="100%" cellspacing="0" cellpadding="0" height="20" id="table1" style="border-collapse: collapse;Z-index:200;" bordercolor="#FFFFFF">
   <tr>
    <td>
     <span class="nav" >
<button class="btn" title="缩放到原图的百分比" onclick="javascript:resize(0.05);">5%</button>
<button class="btn" title="缩放到原图的百分比" onclick="javascript:resize(0.1);">10%</button>
<button class="btn" title="缩放到原图的百分比" onclick="javascript:resize(0.3);">30%</button>
<button class="btn" title="缩放到原图的百分比" onclick="javascript:resize(0.5);">50%</button>
<button class="btn" title="缩放到原图的百分比" onclick="javascript:resize(0.8);">80%</button>
<button class="btn" title="缩放到原图的百分比" onclick="javascript:resize(1.0);" style="color:Purple ;">100%</button>
<button class="btn" title="缩放到原图的百分比" onclick="javascript:resize(1.1);">110%</button>
<button class="btn" title="缩放到原图的百分比" onclick="javascript:resize(1.2);">120%</button>
<button class="btn" title="缩放到原图的百分比" onclick="javascript:resize(1.3);">130%</button>
<button class="btn" title="缩放到原图的百分比" onclick="javascript:resize(1.5);">150%</button>
<button class="btn" title="缩放到原图的百分比" onclick="javascript:resize(1.8);">180%</button>
<button class="btn" title="缩放到原图的百分比" onclick="javascript:resize(2.0);">200%</button>
<!-- 
<button class="btn" title="缩放到原图的百分比" onclick="javascript:resize(2.5);">250%</button>
<button class="btn" title="缩放到原图的百分比" onclick="javascript:resize(3.0);">300%</button>
<button class="btn" title="缩放到原图的百分比" onclick="javascript:resize(4.0);">400%</button>
<button class="btn" title="缩放到原图的百分比" onclick="javascript:resize(6.0);">600%</button>
<button class="btn" title="缩放到原图的百分比" onclick="javascript:resize(8.0);">800%</button>
-->
<button class="btn" onclick="javascript:resizefit();" title="按屏幕缩放" style="color:Purple ;">full</button>
<button class="btn" onclick="RotateImage(1);" title="转动图片左90度(需IE)">R-90</button>
<button class="btn" onclick="RotateImage(3);" title="转动图片右90度(需IE)">R+90</button>
<button class="btn" onclick="RotateImage(2);" title="转动图片180度(需IE)">R180</button>
<button class="btn" onclick="RotateImage(4);" title="取消转动" style="color:Purple ;">R0</button>
</span>
    </td>
    <td width="55px" style="margin:0px;padding:0px;text-align:center;vertical-align:middle;cursor:hand;">
     <span>
<button class="btn" title="使用黑色背景色" onclick="javascript:setcolors(1)" style="padding:0px;width:12px;height:18px;background-color:#000;"></button>
<button class="btn" title="使用灰色背景色" onclick="javascript:setcolors(3)" style="padding:0px;width:12px;height:18px;background-color:#cdcdde"></button>
<button class="btn" title="使用白色背景色" onclick="javascript:setcolors(2)" style="padding:0px;width:12px;height:18px;background-color:#fff"></button></span>
    </td>
</tr></table>
</div>
 <div id="drag" name="drag" style="width:1px;height:1px;margin:0px;border:0;position:absolute;top:20px;left:20px;text-align:center;cursor:move;">
  <img id="mainpic" name="mainpic" src="1.jpg" style="border:0;display:none;" alt="" />
 </div>

<div style="width:100%;height:1px;margin:0px;border:0;text-align:center;">
 <img id="loadpic" name="loadpic" src="${base}/ntkoOffice/file/${(fileURL)!}"    alt="" />
 </div>
 <div id="minipicpanel" name="minipicpanel" style="top:30px;left:15px;position:absolute;Z-index:201;font-size:4px;display:block;border:thin outset;display:none;" >
  <img id="minipic" name="minipic" src="" alt="" width="100px" style="cursor:crosshair;" onClick="javascript:movePicByClick(event)" />
  <div id="minipicview" name="minipicview" style="top:1px;left:1px;position:absolute;margin:0px;border:1px solid #666;"></div>
 <div id="adpanel" name="adpanel" style="width:470px;height:120px;top:-1000px;left:20px;position:absolute;Z-index:199; display:block;">
  </div>
 </div>
</body>
</html>

图片上传在线预览+图片提交 资源文件使用方式请详看我的博客:http://blog.youkuaiyun.com/lxacdf/article/details/77159113 立即下载

相关推荐

图片地址查找器

图片地址查找器:找到图片所在位置。。

图片在线转base64流工具

图片在线转base64流工具,可实现选择图片后生成base64或输入base64点击生成图片便可获得图片 工具截图: 工具地址: 图片在线转base64流工具 http://www.duanlonglong.com/kaifagongju/1208.html

weixin_45850768的博客 875

工作/生活照片归档管理/Exif查看器/GPS定位

手机、相机照片管理器,招牌呢文件的标题、备注设置、检索、查看浏览工具,Exif信息查看器,GPS定位到百度地图上(单机测试版)

vue 在线预览 word ,Excel,pdf,图片 数据流 内网文件流 亲测有效(word 目前支持docx文件以及doc文件(doc需要后端处理))

vue 在线预览 word ,Excel,pdf,图片 数据流 内网文件流 亲测有效

记录常见的问题以及解决办法 3万+

Cursor Cloud Agent:云原生编程工作流的底层重构

编程工作流正从本地计算范式转向云原生执行范式。Cloud Agent 本质是将代码理解、生成、执行与调试等核心能力下沉至隔离、可控、按需分配的云端虚拟机,通过 Firecracker 微虚拟机实现亚秒级启动,并依托上下文快照、环境镜像化和内核级沙箱保障一致性、算力弹性与数据安全。这一范式突破了传统本地 AI 编程助手在环境依赖、调试能力与企业合规上的根本局限,使 IDE 从编辑工具升维为分布式开发指挥中心。本文深入解析其运行机制与工程落地实践。

weixin_34354173的博客 337

零基础玩转STM32CubeIDE LL库:5分钟搞定串口通信(附完整代码)

本文为零基础开发者提供了一份STM32CubeIDE LL库串口通信的快速实战指南。通过CubeMX配置、LL库核心API详解,以及中断接收与环形缓冲区的完整代码实现,帮助读者在5分钟内搭建稳定可靠的串口收发框架,解决从HAL切换到LL库的常见困惑,提升嵌入式开发效率。

weixin_29159441的博客 306

在线工具

在线UML工具 : https://www.draw.io/

☆ 默默地牛逼着 422

LSM6DSOW陀螺仪轮询驱动:从I2C/SPI配置到数据读取全解析

惯性测量单元(IMU)是现代嵌入式系统中实现姿态感知与运动跟踪的核心传感器,其通过加速度计和陀螺仪测量线性加速度与角速度。在嵌入式开发中,轮询(Polling)作为一种基础且可靠的通信方式,通过主循环主动查询传感器状态,简化了初始调试与验证流程。对于I2C/SPI接口的数字传感器,掌握寄存器配置、数据就绪标志检查及原始数据转换是通用的驱动方法,能够快速验证传感器工作状态并理解数据流。LSM6DSOW作为一款高性能6轴IMU,支持可配置的量程与输出数据速率,适用于无人机飞控、手持云台等高动态场景。本文以LSM

weixin_28728265的博客 555

图片在线预览工具 - 输入URL即刻查看远程图片

摘要:图片在线预览工具支持通过URL直接查看远程图片,无需下载。适用于开发者、设计师验证图片链接,支持JPEG、PNG、GIF等格式。使用方法简单,只需粘贴图片链接即可预览。注意图片需可公开访问,部分链接可能需跳转查看。访问地址:https://toolshu.com/image-preview(约100字)

weixin_43680407的博客 1389

一文带你完成ARMv8架构中的cache知识点

【摘要】 在最初开发ARM架构时,处理器的时钟速度和内存的访问速度大致相同。今天的处理器内核要复杂得多,其时钟速度可以快上几个数量级。但是,外部总线和内存设备的频率并没有扩大到同样的程度。有可能实现小块的片上SRAM,它可以以与内核相同的速度运行,但是与标准的DRAM块相比,这种RAM非常昂贵,因为后者的容量可以达到数千倍。在许多基于ARM处理器的系统中,访问外部存储器需要几十甚至几百个内核周期。 cache的技术背景 在最初开发ARM架构时,处理器的时钟速度和内存的访问速度大致相同。今天的处.

ABCCloud的博客 1853

AI落地困局与破局者FDE:从技术神话到价值实干的战略转型

AI落地困局与破局者FDE:从技术神话到价值实干的战略转型 当前AI企业级应用面临三大核心挑战:业务场景深度非标化、技术落地"最后一公里"困局、以及市场竞争焦点转向实用价值。前线部署工程师(FDE)作为破局关键,通过技术-业务-产品三维交汇的复合能力,将AI从实验室推向生产环境。FDE不仅是技术架构师,更是业务价值挖掘机和产品进化传感器,通过"碎石路-高速公路"双循环模式,将定制化需求沉淀为可复用的平台能力。这种模式颠覆了传统SaaS的销售逻辑,形成基于价值的J型增长

随笔记录-分享&记忆 3989

解析图片流

private AppFeedbackService appFeedbackService ; public static final String UPLOAD="upload/"; public void setAppFeedbackService(AppFeedbackService appFeedbackService) { this.appFeedbackService = app

weixin_38639243的博客 814

TI电量计BQ40Z50R2循环学习实战:从量产文件生成到关键标志位解析

本文详细解析了TI电量计BQ40Z50R2的循环学习实战流程,从量产文件生成到关键标志位解析。通过实战案例和易错分析,帮助工程师避开常见陷阱,提升电量计配置效率。重点介绍了循环学习前的准备工作、量产文件生成步骤及关键标志位的深度解读,适用于电池管理系统开发人员。

weixin_30505225的博客 439

无须下载即可在线查看巨型图片的web应用 - HUGEpic

日期:2012-11-22  来源:GBin1.com 在线演示  HUGEpic是一个在线帮助你查看超大图片的web应用。它不使用任何flash的组件,也不依赖于任何插件。可以非常方便的帮助你在手机和桌面客户端查看图片。 使用HUGEpic将 意味着你不需要下载即可查看超大的图片,它使用Google地图方式来帮助你查看,只下载目前缩放度的图片数据。其实在几周前主要的开发人员就Peter...

weixin_33860722的博客 188

跨越移植陷阱:ESP-IDF下LVGL与ILI9341的组件化集成与常见避坑指南

本文详细解析了在ESP-IDF环境下将LVGL图形库与ILI9341显示屏驱动进行组件化集成的完整流程。重点介绍了移植过程中的关键配置策略、内存管理优化技巧以及常见问题解决方案,帮助开发者有效规避内存溢出、显示异常等典型陷阱,实现高效稳定的嵌入式GUI开发。

yhn456789的博客 623

华为OD机试双机位C卷-MVP争夺战 (C/C++/Py/Java/Js/Go)

华为OD机试(机考)双机位C卷 【MVP争夺战】,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。华为OD机试 - MVP争夺战,

qq_45776114的博客 1170

java实现图片在线查看

在线查看图片 response.setContentType("image/jpg"); FileInputStream in = new FileInputStream("C:\\Users\\Administrator\\Desktop/123.jpg"); ServletOutputStream out = response.getOutputStream(); int len = 0; byte[] bytes = new byte[

weixin_46123294的博客 1251

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

vxe-table在线查看PDF及图片

if (fileExt.toUpperCase()=='PDF'){ alwayShowPdfRef.value.openDialog(fileID,fileName); } //图片 if (fileExt.toUpperCase()=='PNG'||fileExt.toUpperCase()=='JPG'||fileExt.toUpperCase()=='BMP' ||

你离优秀差多少 925

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

图片在线查看

实验结果 核心代码 public class MainActivity extends Activity { public EditText edtext; public ImageView image; public NetWorkUtils netWorkUtils; private Handler handler;

Masup123的博客 751

html在线查看pdf源码,viewerjs 在html打开图片或打开pdf文件使用案例(示例代码)

开发者常用到在线访问pdf,txt,浏览图片的插件,这里推荐viewer.js这个插件,简单好用。它的核心亮点就是查看图片和pdf功能。老早以前就用过的,昨天一个小伙伴问我Android开发在线浏览pdf怎么弄?我一下想到这个插件,帮人搞出来了,感觉这个还是得总结一下才好,不然觉得简单又容易忘记。1.使用viewerjs浏览图片使用前需要先引入:css.js其次简单使用代码如下:单个图片就用图片元...

weixin_39594457的博客 1362

2025 年实用工具推荐:专业图片 EXIF 信息查看器(在线版)

2025年EXIF信息查看器是一款实用的在线工具,可查看、导出和清除图片的EXIF元数据。它支持JPG/PNG/TIFF/WebP等格式,能解析拍摄参数、设备型号、GPS位置等信息。工具提供一键清除隐私数据功能,并可导出EXIF为JSON文件,适用于开发调试、摄影学习、隐私保护等场景。操作简单安全,无需安装,适合开发者、摄影师、自媒体从业者使用。在线访问:https://www.itptg.com/tools/exif-viewer.html

IT平头哥的博客 1447

手机在线查看html图片文件夹,在线预览,安全又便捷地查看云端文件

原标题:在线预览,安全又便捷地查看云端文件在线预览功能支持从燕麦云以及分享页面直接在线预览办公文档、图片、视频(MP4格式)、音频(MP3格式)文件;在管理员开启预览水印功能时,从分享页面在线文档、图片及视频时将会显示文件水印,预防文件泄密,保障企业文件数据安全。 从燕麦云网页端在线预览文件:在燕麦云网页端,直接点击文件名称打开文件在线预览。网页端文件预览页面,我们可以看到:在管理员开启水印功能后...

weixin_39678103的博客 819

图片 EXIF 元数据查看与解析:字段含义与在线工具

EXIF 是图片文件里的一段元数据,记录了拍摄设备与参数。开发者在处理图片上传、图片信息展示时,经常要读取或解析 EXIF。这篇把 EXIF 的字段含义和查看方式梳理一遍。它是图片元数据的一部分,独立于像素数据。如果只是临时查一张图的 EXIF,不用写代码,用星点图片元数据查看:上传图片 → 自动读出时间、设备、光圈、快门、ISO、焦距、GPS 等,本地处理不上传。等库解析,后端可用 PIL(Python)、ImageMagick 等。EXIF 是图片的重要元数据,查看用在线工具即可,开发场景用库解析。

Pixelbai的博客 243
上一篇: web视频播放空间 flowplayer-3.2.16
下一篇: java解压rar.zip
nddjava
博客等级 码龄16年 15粉丝 121原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值