java cmyk和rgb的转换_CMYK与RGB相互转换(java)
package util;
import java.awt.*;
import javax.swing.*;
import java.awt.color.*;
public class ColorTranslate {
ICC_Profile ICC_pf;
ICC_ColorSpace ICC_ClSpace;
//以下变量存储CMYK颜色值,取值为0到100
int C = 9;
int M = 9;
int Y = 9;
int K = 9;
//初始化ICC_Profile和ICC_ColorSpace类对象
public ColorTranslate() {
String Filename = "CMYK.pf";
GetICCFrompfFile(Filename);
}
void GetICCFrompfFile(String Filename) {
try {
ICC_pf = ICC_Profile.getInstance(Filename);
}
catch (Exception e) {
JOptionPane.showMessageDialog(null,
"Can''t create ICC_Profile");
}
ICC_ClSpace = new ICC_ColorSpace(ICC_pf);
}
//由RGB色彩空间变换到CMYK
public float[] RGBtoCMYK(Color RGBColor) {
float[] CMYKfloat = ICC_ClSpace.fromRGB
(RGBColor.getRGBComponents(null));
C = (int) (CMYKfloat[0] * 100);
M = (int) (CMYKfloat[1] * 100);
Y = (int) (CMYKfloat[2] * 100);
K = (int) (CMYKfloat[3] * 100);
return CMYKfloat;
}
//由CMYK色彩空间变换到RGB
public Color CMYKtoRGB(float[] CMYKfloat) {
Color RGBColor = new Color(ICC_ClSpace,
CMYKfloat, 1.0f);
return RGBColor;
}
public Color CMYKtoRGB() {
float[] CMYKfloat = new float[4];
CMYKfloat[0] = 0.01f * (float) C;
CMYKfloat[1] = 0.01f * (float) M;
CMYKfloat[2] = 0.01f * (float) Y;
CMYKfloat[3] = 0.01f * (float) K;
Color RGBColor = new Color(ICC_ClSpace, CMYKfloat, 1.0f);
return RGBColor;
}
}
需要下载CMYK.pf文件
//ColorTranslate CMYKtoRGB = new ColorTranslate();
//float[] CMYKfloat = new float[4];
//CMYKfloat[0] = 0.01f * (float) Integer.valueOf(strCMYK.substring(0,2),16).intValue();//C
//CMYKfloat[1] = 0.01f * (float) Integer.valueOf(strCMYK.substring(2,4),16).intValue();//M
//CMYKfloat[2] = 0.01f * (float) Integer.valueOf(strCMYK.substring(4,6),16).intValue();//Y
//CMYKfloat[3] = 0.01f * (float) Integer.valueOf(strCMYK.substring(6,8),16).intValue();//K
//Color color = CMYKtoRGB.CMYKtoRGB(CMYKfloat);
//color.getRED();
java cmyk和rgb的转换_CMYK与RGB相互转换(java)相关推荐
- java 带t日期格式转换_自我整理:java 日期转换
1.获取特定日期格式的字符串,当前时间 SimpleDateFormat sm = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Dat ...
- Java实现从Excel文件转换成XML文件(一)
实现思路: 直接从Excel文件装换成XML文件是可以实现的,这里我采用一个中间装换,也就是先实现excel文件内容放入实现设计好的access数据库文件中,然后再从access中读取 ...
- mupdf中CMYK与RGB的转换算法
之前碰到过RGB与CMYK之间转换的问题,网上也没有比较官方的转换公式,不同的软件可能会采用不同的算法,现在mupdf,正好也看到了这样的算法,还是有一定参考价值的,具体算法如下: #define M ...
- YUV420P、YUV420SP、NV12、NV21和RGB互相转换并存储为JPEG以及PNG图片
音视频实践学习 android全平台编译ffmpeg以及x264与fdk-aac实践 ubuntu下使用nginx和nginx-rtmp-module配置直播推流服务器 android全平台编译ffm ...
- java:BufferedImage判断图像通道顺序并转RGB/BGR
一般来说java ImageIO处理读取图像时,一般是RGB或ARGB格式,但是有的时候,我们需要图像是BGR格式, 比如通过JNI将图像矩阵传递给动态库,动态库里用OpenCV来处理矩阵,而用Ope ...
- 颜色转换,rgb与int颜色数值之间相互转换
项目中碰到需要将js页面获取的背景颜色转换成int类型的数值,然后存入数据库,百度了一些,发现没有合适的,所以就自己写了一个,需要的可以参考 // int转rgb function converArg ...
- java 中的进制转换
二进制: 0-1,满2进1,在java中 0b 或者 0B 开头来表示 八进制: 0-7,满8进1,在java中 以 0 开头来表示 十进制: 0-9,满10进1,日常使用的数字就是十进制 十六 ...
- Google App Engine for Java下的URL编码转换问题
URL编码问题 此部分参考英文资料: http://www.blooberry.com/indexdot/html/topics/urlencoding.htm http://www.w3school ...
- java linux urlencode_java字符编码转换研究(转)
1. 概述 本文主要包括以下几个方面:编码基本知识,java,系统软件,url,工具软件等. 在下面的描述中,将以"中文"两个字为例,经查表可以知道其GB2312编码是" ...
- java 实体属性个数_?Java中比较实用实体转换工具介绍
Java中比较实用实体转换工具介绍 文中源码地址 大家一般编码过程中,经常会遇到DO对象转化为DTO对象,对象和对象之间转换一般需要用到转换工具,毕竟使用getter/setter太过麻烦 DO:D ...
最新文章
- 2018 年最值得期待的学术进展——致人工智能研究者们的年终总结
- 洛谷-P1896 [SCOI2005]互不侵犯
- oracle lob 简单介绍
- 鸿蒙安卓翻版,鸿蒙是PPT、翻版安卓?对于黑粉:鸿蒙要失败了还有谁能成功?...
- LaTeX实战经验:数学公式环境注意事项
- Ubuntu14.04下C++程序编辑、编译、运行
- python哈夫曼树_python霍夫曼树
- python写日志文件_Python logging日志模块 配置文件方式
- dump文件解析之探索.Net的内存
- 蚂蚁组件 axure 蚂蚁_蚂蚁属性细微差别
- Web端打开文件选择和保存对话框
- htaccess配置文件是什么
- 当磁盘工具无法修复磁盘时,你可以这样做!
- ttf能改成gfont吗_如何修改TTF字体
- C#使用Socket实现一个socket服务器与多个socket客户端通信
- 常见系统故障修复(一)——修复MBR扇区故障
- 华为高层谈 35 岁危机,程序员如何破年龄之忧?
- “但行好事 莫问前程 只问耕耘 不问收获 成功不必在我 而功力必不唐捐” 科技袁人·年终盛典——5G是科技时代非常重要的基础设施...
- css人脸识别的圆圈,基于HTML5 的人脸识别活体认证的实现方法
- canvas圆形进度条