jjzjj

php - 使用 PHP 选择合适的背景/前景色

我想知道为什么要计算合适的背景颜色和顶部文本的颜色,显然我需要考虑可读性和可访问性。我需要从数组中选择两种颜色,这些颜色存储在它们的十六进制表示中。#CC9966#996633#FFCC99#CCCC99#000000#333333#666633#663333#CC9933#FFCCCC我可以使用像GD/imageMagick这样的PHP库吗?任何建议(请注意我使用的是PHP) 最佳答案 首先,我认为您应该看看这篇优秀的博文,网址为Particletree.也就是说,我会使用他们的smarty_modifier_contrast()

PHP 颜色操作

我目前正在研究颜色操作/选择等,并且遇到了以下代码。我想知道有人可以告诉我下面这段代码在做什么,并为我分解它,谢谢!$newVal=round(round(($rgb['red']/0x33))*0x33);特别是0x33是什么提前致谢 最佳答案 它似乎正在将$rgb['red']转换为最接近的0x33的倍数。它可能会这样做,因此颜色最终会出现在所谓的“网络安全”调色板上,该调色板(如果我没记错的话)由rgb值是0x33的倍数的颜色组成。0x33是51(十进制)的base-16(十六进制)表示。

php - 使用 Imagick 检测图像是灰度还是彩色

我正在尝试根据图像的“饱和度”为图像分配一个值,以查看图像是黑白还是彩色。我正在使用Imagick,并且发现了似乎是命令行的完美代码,并且正在尝试使用PHP库复制它。我想我理解了这个概念:将图像转换为HSL。提取“g”channel(HSL中的Schannel)。计算该channel的平均值。Commandlinecodeconvert'$image_path'-colorspaceHSL-channelg-separate+channel-format'%[fx:mean]'info:我的PHP代码$imagick=newImagick($image_path);$imagick->

php - 将值映射到色标

我有一个值列表,应该用特定颜色绘制到map上。映射到map的绘制已经完成,但我需要找出一种方法将值n映射到代表其值的颜色。到目前为止,我的解决方案是根据min和max对值进行归一化,然后将它们分配给十六进制颜色0最低和255最高。这当然将我自己限制在灰度范围内。这是代码:$color=($value/$max)*255//(miniszero)但是,如果值应该从蓝色变为红色,该怎么办呢?有没有可以解决这个问题的通用库或工具?到目前为止,我还没有找到任何东西。 最佳答案 可能有库可以做到这一点。但是,让我们对一般原则做一个简短的热身。

java - 缓冲图像颜色饱和度

我正在使用jfreesane编写一个简单的扫描应用程序和ApachePDFBox.这里是扫码:InetAddressaddress=InetAddress.getByName("192.168.0.17");SaneSessionsession=SaneSession.withRemoteSane(address);Listdevices=session.listDevices();SaneDevicedevice=devices.get(0);device.open();device.getOption("resolution").setIntegerValue(300);Buffe

java - 如何使用 getRGB 在 Java 中匹配相似的颜色

我正在使用机器人截取屏幕截图,然后在这些屏幕截图中搜索较小的图像。由于Gamma校正,这适用于Windows但不适用于OSX。我能想到的最佳解决方案是简单地匹配相似的颜色,而不是完全匹配颜色。我担心匹配相似的颜色将意味着超越getRGB,因此会减慢我的程序(因为它会截取多个屏幕截图并将它们与较小的图像进行比较以非常快速地搜索匹配项)。我的问题是,假设我有BufferedImageScreenshot和BufferedImagesmallImage,我将如何确定Screenshot.getRGB(1,1)和smallImage.getRGB(1,1)是否相似颜色?

java - 计算图像的颜色数

我有三个不同的图像(jpeg或bmp)。我试图根据每个图像的颜色数量来预测每个图像的复杂性。我怎样才能用Java使它成为可能?谢谢。更新:这些代码不起作用。输出显示1312种颜色,即使它只有纯红色和白色importjava.awt.*;importjava.awt.image.BufferedImage;importjava.io.*;importjava.util.ArrayList;importjavax.imageio.ImageIO;publicclassclutters{publicstaticvoidmain(String[]args)throwsIOException{A

java - JPanels 不会完全拉伸(stretch)以占据可用空间

我有一个面板,我在其中并排放置了几个尺寸和颜色不同的迷你面板,它们应该占据整个父面板(​​水平)。为此,我使用BorderLayout(用于父面板),并使用BoxLayout用于放置所有迷你面板的子面板(参见下面的代码)。它确实可以正常工作并且在调整大小和一切时都能正常运行。然而,随着迷你面板数量的增加,一个奇怪的行为发生了:父面板的末尾出现了空白。我想我发现这是布局管理器中的一个拉伸(stretch)错误,因为为了拉伸(stretch)面板,布局管理器会尝试向每个迷你面板添加一个像素。但是,当mini-panel的数量很大时,为每个mini-panel添加一个像素将导致添加许多像素并

Java BufferedImage 保存不需要的背景颜色

提前感谢您的帮助描述:该程序绘制、显示和保存图像。它的工作原理如下:对象本身扩展了Frame。在构造函数中,该对象创建一个BufferedImage,并调用一个在该图像上绘制的方法。然后,它将图像显示到框架上。最后,它将图像保存到一个文件中(我不关心它使用什么格式)。主程序创建对象,剩下的由它来完成。问题:保存的文件总是有彩色背景!这特别奇怪,因为显示的图像很好。如果我将“jpg”格式与ImageIO.write()一起使用,则背景会偏红。如果我使用“png”格式,则背景为深灰色。我在这上面花了一段时间,但我仍然不知道到底发生了什么!importjava.awt.Frame;impor

java - Vaadin 网格表 : How to disable Sort Function and set the color of one column

我在Vaadin中使用Grid表来表示数据。为此,我试图找出以下两个问题:1.)如何关闭每列表头的排序功能2.)如何设置Grid表格中一列的颜色 最佳答案 首先,我找到了Vaadindocs一个开始寻求帮助的好地方。对于练习的其余部分,假设我们有一个包含3个简单列c1、c2和c3的Grid:Gridgrid=newGrid();grid.addColumn("c1",String.class);grid.addColumn("c2",String.class);grid.addColumn("c3",String.class);1.