当前位置:网站首页>RGB颜色转HEX进制与单位换算
RGB颜色转HEX进制与单位换算
2022-04-23 06:26:00 【大可山人】
RGB颜色转HEX进制:
function rgbToHex(R,G,B) {return toHex(R)+toHex(G)+toHex(B)}
function toHex(N) {
if (N==null) return "00";
N=parseInt(N); if (N==0 || isNaN(N)) return "00";
N=Math.max(0,N); N=Math.min(N,255); N=Math.round(N);
return "0123456789ABCDEF".charAt((N-N%16)/16)
+ "0123456789ABCDEF".charAt(N%16);
}
function getColorStringFromRGB(r, g, b) {
return "#" + toHex(r) + toHex(g) + toHex(b);
}
c#:
public static string RgbToHex(int r, int g, int b)
{
return ToHex(r)+ToHex(g)+ToHex(b);
}
priavate string ToHex(int? N)
{
if (N==null || N==0) return "00";
N=Math.Max(0,N);
N=Math.Min(N,255);
N=Math.Round(N);
return "0123456789ABCDEF".charAt((N-N%16)/16)
+ "0123456789ABCDEF".charAt(N%16);
}
public static string ColorStringFromRGB(int r, int g, int b)
{
return "#" + RgbToHex(r, g, b);
}
//下面的备用
function JSONBlocksToJSONArray(jsonBlocks) {
var jsonArray = '{';
var firstBlock = true;
for (var key in jsonBlocks) {
if (jsonBlocks.hasOwnProperty(key)) {
jsonArray += (firstBlock ? '' : ',') + '"' + key + '" : ' + jsonBlocks[key];
firstBlock = false;
}
}
jsonArray += '}';
return jsonArray;
}
//AI or PS JSON Color To RGB
convertColorToRGB : function (colorJSON) {
var pickerDesc = new ActionDescriptor();
pickerDesc.putBoolean( stringIDToTypeID( 'newDocPresetJSON'), true);
pickerDesc.putString( stringIDToTypeID( 'color' ), colorJSON);
pickerDesc.putEnumerated(stringIDToTypeID( 'colorSpace'), stringIDToTypeID( 'colorSpace'), stringIDToTypeID('RGB'));
var resultDesc = executeAction( stringIDToTypeID('convertColorToSpace'), pickerDesc, DialogModes.ALL );
return resultDesc.getString(stringIDToTypeID('color'));
}
function getRGBFromColorString(colorString) {
var r = 0,
g = 0,
b = 0;
try {
colorString = colorString.substr(colorString.indexOf("#") + 1); // Strip off '#'
// Ignore alpha
if (colorString.length > 6) {
colorString = colorString.substr(0, 6);
}
var val = parseInt(colorString, 16);
r = (val >> 16) & 255;
g = (val >> 8) & 255;
b = val & 255;
} catch (ignore) {}
return newRGB(r, g, b);
}
单位换算:
picasToPixels: function (picas) {
return Math.round(picas * 16);
}
cmToPixels: function (cms) {
return Math.round(cms * 37.79527559055);
}
inToPixels: function (inches) {
return Math.round(inches * 96.0000000000011);
}
mmToPixels: function (mm, resolution) {
var pt = mm * 2.83464566929134;
return pointsToPixels(pt, resolution);
}
pointsToPixels: function (pt, resolution) {
return Math.round((pt / 72) * resolution);
}
pixelsToPoints: function (px, resolution) {
return (px * 72) / resolution;
}
//换算为Points:
function ConvertUnitsToPoints(unitType, unitValue) {
if (unitType === MeasurementUnits.POINTS) {
return unitValue;
}
var pointsValue = unitValue;
switch (unitType) {
case MeasurementUnits.Q:
pointsValue = pointsValue * 0.7086614173228346;
break;
case MeasurementUnits.AMERICAN_POINTS:
pointsValue = pointsValue * (0.3514 / 25.4 * 72);
break;
case MeasurementUnits.MILLIMETERS:
pointsValue = (pointsValue * 72.0) / 25.4;
break;
case MeasurementUnits.HA:
pointsValue = pointsValue * 0.7086614173228346;
break;
case MeasurementUnits.BAI:
pointsValue = pointsValue * 6.336;
break;
case MeasurementUnits.U:
pointsValue = (pointsValue * 72.0 * 11.0) / 1000.0;
break;
case MeasurementUnits.MILS:
pointsValue = pointsValue * 0.072;
break;
case MeasurementUnits.PICAS:
pointsValue = pointsValue * 12.0;
break;
case MeasurementUnits.INCHES:
case MeasurementUnits.INCHES_DECIMAL:
pointsValue = pointsValue * 72.0;
break;
case MeasurementUnits.CENTIMETERS:
pointsValue = (pointsValue * 72.0) / 2.54;
break;
case MeasurementUnits.CICEROS:
pointsValue = pointsValue * 12.7878751998;
break;
case MeasurementUnits.AGATES:
pointsValue = (pointsValue * 72.0) / 14.0;
break;
case MeasurementUnits.PIXELS:
//No conversion required
break;
default:
//alert('convertUnitsToPoints: Unknown unitType');
break;
}
return pointsValue;
};
版权声明
本文为[大可山人]所创,转载请带上原文链接,感谢
https://blog.csdn.net/johnsuna/article/details/120799285
边栏推荐
猜你喜欢

SAP DEBUG调试FOR IN、REDUCE等复杂的语句

反思 | 事件总线的局限性,组件化开发流程中通信机制的设计与实现

BTree、B+Tree和HASH索引

SAP PI/PO rfc2RESTful 发布rfc接口为RESTful示例(Proxy间接法)

Reflect on the limitations of event bus and the design and implementation of communication mechanism in component development process

Simple random roll call lottery (written under JS)

ogldev-读书笔记

Design optimization of MySQL database

‘npm‘不是内部或外部命令,也不是可运行的程序 或批处理文件

keytool: command not found
随机推荐
游戏辅助脚本开发之旅
Authorization+Token+JWT
对STL容器的理解
面经总结2
数组扁平化
redis连接出错 ERR AUTH <password> called without any password configured for the default user.
Nacos / sentinel gateway current limiting and grouping (code)
Authorization+Token+JWT
Ogldev reading notes
页面动态显示时间(升级版)
js案例之求最大值,反转数组,冒泡排序
设置了body的最大宽度,但是为什么body的背景颜色还铺满整个页面?
自定义时间格式(YYYY-MM-DD HH:mm:ss 星期X)
Authorization server (simple construction of authorization server)
每日一题 | 曾被反转链表支配的恐惧
Processing of common dependency module
【自我激励系列】到底是什么真正阻碍了你?
13. User and authority management
js之函数的两种声明方式
ABAP 7.4 SQL Window Expression