我遇到了一个比较困难的情况,很难在Google上搜索到详细解释。我们公司在铝板上印刷照片,给我们的客户两个选择:
1. 第一种选择是按照客户提供的图片在铝板上打印,所以如果图片有白色背景,则会将白色背景一起打印出来。
2. 第二种选择是我们可以不使用白色进行打印。我们会保留所有“白色值”(<-这是我能想到的最好的解释)的透明度,而不进行打印。
我知道Fabric JS中有一个removeWhite滤镜,它可以用透明替换白色区域。但这不是我需要的。我需要一个Fabric JS滤镜、ImageMagick或任何其他PHP或JS解决方案,可以使像素的“白色值”变成透明。我知道这些东西可能对你们来说听起来非常模糊,但让我试着这样解释:
1. 如果我遇到一个白色像素,我需要将它变成透明。
2. 如果我遇到一个灰色像素,我需要将它从白色和黑色的组合变成透明和黑色的组合。
3. 如果我遇到一个彩色像素,我也需要将使其变亮的“白色值”变成透明。
以下是我尝试实现的滤镜/效果的之前和之后的例子:
Before:
After:
如果你不理解我的请求,请随时询问。
1. 第一种选择是按照客户提供的图片在铝板上打印,所以如果图片有白色背景,则会将白色背景一起打印出来。
2. 第二种选择是我们可以不使用白色进行打印。我们会保留所有“白色值”(<-这是我能想到的最好的解释)的透明度,而不进行打印。
我知道Fabric JS中有一个removeWhite滤镜,它可以用透明替换白色区域。但这不是我需要的。我需要一个Fabric JS滤镜、ImageMagick或任何其他PHP或JS解决方案,可以使像素的“白色值”变成透明。我知道这些东西可能对你们来说听起来非常模糊,但让我试着这样解释:
1. 如果我遇到一个白色像素,我需要将它变成透明。
2. 如果我遇到一个灰色像素,我需要将它从白色和黑色的组合变成透明和黑色的组合。
3. 如果我遇到一个彩色像素,我也需要将使其变亮的“白色值”变成透明。
以下是我尝试实现的滤镜/效果的之前和之后的例子:
Before:
![](https://istack.dev59.com/IFsHc.webp)
![](https://istack.dev59.com/8h2rL.webp)