后台程序获取JPG/GIF/PNG图片宽度、高度
这是很久之前编写的代码,该代码是读取流数据指定位置的内容,获取图片的宽度、高度值。
由于系统更新,这些代码丢之不用,在这里存个档吧!
1. 获取gif图片宽度、高度。(binary_是图片流数据)
'***************************
' 函数: gif_size()
' 说明: 获取gif的宽高值
' 返回: [Array]
' Array(0) 宽度值
' Array(1) 高度值
'
Private Function gif_size()
On Error Resume Next
Dim w, h
w = sysString.hexToOct( hex(ascb(midb(binary_,,))) & hex(ascb(midb(binary_,,))) )
h = sysString.hexToOct( hex(ascb(midb(binary_,,))) & hex(ascb(midb(binary_,,))) ) If Err.Number<> Then
gif_size = Array(,)
Err.Clear()
Else
If sysNumber.isInt(w, ) And sysNumber.isInt(h, ) Then
gif_size = Array(w, h)
Else
gif_size = Array(,)
End If
End If
End Function
2. 获取jpg图片宽度、高度。(binary_是图片流数据)
'***************************
' 函数: jpg_size()
' 说明: 获取jpg的宽高值
' 返回: [Array]
' Array(0) 宽度值
' Array(1) 高度值
'
Private Function jpg_size()
On Error Resume Next
Dim w, h
Dim splitStr, i, tmp_binary 'FF 的ASC值为 255 C0 的ASC值为 192
'split是无法将流进行分割,但instrb可以获取标识所在的位置点
'由于有些图片含有多个ff c0标识,但最后一个才是最终的标识,所以采用反复不停过滤掉ff c0方式
tmp_binary = binary_
splitStr = chrb() & chrb()
i = instrb(tmp_binary, splitStr)
Do While i<>
w = sysString.hexToOct( hex(ascb(midb(tmp_binary,i+,))) & hex(ascb(midb(tmp_binary,i+,))) )'宽
h = sysString.hexToOct( hex(ascb(midb(tmp_binary,i+,))) & hex(ascb(midb(tmp_binary,i+,))) )'高
tmp_binary = midb(tmp_binary,i+)
i = instrb(tmp_binary, splitStr)
Loop If Err.Number<> Then
jpg_size = Array(,)
Err.Clear()
Else
If sysNumber.isInt(w, ) And sysNumber.isInt(h, ) Then
jpg_size = Array(w, h)
Else
jpg_size = Array(,)
End If
End If
End Function
3. 获取png图片宽度、高度。(binary_是图片流数据)
'***************************
' 函数: jpg_size()
' 说明: 获取jpg的宽高值
' 返回: [Array]
' Array(0) 宽度值
' Array(1) 高度值
'
Private Function png_size()
On Error Resume Next
Dim w, h
w = sysString.hexToOct( hex(ascb(midb(binary_,,))) & hex(ascb(midb(binary_,,))) & hex(ascb(midb(binary_,,))) & hex(ascb(midb(binary_,,))) )
h = sysString.hexToOct( hex(ascb(midb(binary_,,))) & hex(ascb(midb(binary_,,))) & hex(ascb(midb(binary_,,))) & hex(ascb(midb(binary_,,))) )'高 If Err.Number<> Then
png_size = Array(,)
Err.Clear()
Else
If sysNumber.isInt(w, ) And sysNumber.isInt(h, ) Then
png_size = Array(w, h)
Else
png_size = Array(,)
End If
End If
End Function
后台程序获取JPG/GIF/PNG图片宽度、高度的更多相关文章
- WINFORM中几句程序获取整个屏幕的图片及当前窗口的图片快照
/// <summary> /// 获取整个屏幕的图片 /// </summary> /// <returns></returns ...
- JQuery无法获取动态添加的图片宽度问题解决办法
$('.imgUl li,.v_img').click(function(){ var _left = 0; var _top = 0; $('body').append('<div class ...
- js获取Html元素的实际宽度高度
第一种情况就是宽高都写在样式表里,就比如#div1{width:120px;}.这中情况通过#div1.style.width拿不到宽度,而通过#div1.offsetWidth才可以获取到宽度. 第 ...
- 原生js获取Html元素的实际宽度高度
第一种情况就是宽高都写在样式表里,就比如#div1{width:120px;}.这中情况通过#div1.style.width拿不到宽度,而通过#div1.offsetWidth才可以获取到宽度. 第 ...
- [JavaScript] js获取Html元素的实际宽度高度
第一种情况就是宽高都写在样式表里,就比如#div1{width:120px;}.这中情况通 过#div1.style.width拿不到宽度,而通过#div1.offsetWidth才可以获取到宽度. ...
- js获取浏览器body或窗宽度高度合集
<script type="text/javascript"> var s = " "; document.documentElement.scro ...
- 【亲测可行,图片宽度高度自适应】c# Graphics MeasureString精确测量字体宽度
, , ) { int count = number.Length; //需要配置的字段 //Font f = new Font("Microsoft Sans Serif", f ...
- 2018-11-26-win10-uwp-获取窗口的坐标和宽度高度
title author date CreateTime categories win10 uwp 获取窗口的坐标和宽度高度 lindexi 2018-11-26 15:4:0 +0800 2018- ...
- 用JQuery中的Ajax方法获取web service等后台程序中的方法
用JQuery中的Ajax方法获取web service等后台程序中的方法 1.准备需要被前台html页面调用的web Service,这里我们就用ws来代替了,代码如下: using System; ...
随机推荐
- HDU 3695 Computer Virus on Planet Pandora (AC自己主动机)
题意:有n种病毒序列(字符串),一个模式串,问这个字符串包括几种病毒. 包括相反的病毒也算.字符串中[qx]表示有q个x字符.具体见案列. 0 < q <= 5,000,000尽然不会超, ...
- Kubernetes(二)-- 搭建(未完待续)
一.部署前规划 1. 操作系统初始化设置 :需要设置好集群机器,关闭防火墙和selinux 2. 创建ca证书和私钥 :集群间通信要加密,那么肯定要有ca的创建,以后就用这一步创建的ca当作证书颁发机 ...
- iOS:多媒体(18-01-25更)
1.音频 2.视频 1. 2.AVPlayer 1.音频 2.视频 1. 2.AVPlayer 0).写在前面 AVPlayer 主要包含 AVPlayer.AVPlayerItem.AVPlayer ...
- java获取服务器基本信息
实现步骤: (1)创建servlet BrowserServer (2)调用HttpServletRequest对象的getServerName()方法获取服务器名称 (3)调用HttpServlet ...
- JavaScript的迭代函数与迭代函数的实现
前言 如果对技术很自信,请直接看 实现的源码 如果想回顾一下基础,请按文章顺序阅读 说到迭代方法,最先想到的是什么?forEach还是map,迭代的方法ES5提供了5种方法 以下定义来自 Ja ...
- MyEclipse部署项目时点finish点不动finish按钮灰色的
在MyEclipse中项目的propertes中输入tomcat搜索,jdk选择你本机安装的jdk
- 学习python的一些脚本
python生产者与消费者模型 # -*- coding:utf-8 -*- import threading import random import time gMoney = 1000 gLoc ...
- 微信小程序点击按钮,修改状态
WXML中: <view wx:if="{{orderstate}} = '待送检' " data-no="{{orderstate}}" bindtap ...
- POJ1035_Spell checker_KEY
题目传送门 一道暴力可以过的水题.(直接暴力模拟的那种) 但是我打Trie练练模板,但是TMD因为数组开太小卡了好久. code: #include <cstdio> #include & ...
- 【HNOI2014】世界树
题面 题解 虚树好题(只是细节太多) 构出虚树后,一定要仔细梳理关键点之间的点是上面属于父亲,下面属于儿子. 然后二分出所有的点的所属就可以了 代码 #include<cstdio> #i ...