问题标签 [imgscalr]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scala - TwelveMonkeys 是否提供图像裁剪功能?
我正在尝试使用 TwelveMonkeys 库进行图像处理;但找不到类似于org.imgscalr.crop(BufferedImage src, int x, int y, int width, int height, BufferedImageOp... ops)
根据x, y, width, height
参数裁剪输入图像的方法。
java - 如何使用相同或更低的 DPI 在 Java 中调整图像大小
我正在尝试在 Java 中调整 jpg 图像文件的大小。为此,我正在使用 Scalr。我有大约 16MB 的图像,分辨率为 6000x4000,分辨率为 350 dpi。
当我将其调整为 4500 宽度时,它也会将 DPI 缩小到 96。
这是我正在使用的代码:
我在没有任何库的情况下尝试了它,代码如下:
但结果是一样的。那么,如果可能的话,我如何调整 dpi 大约为 150 的图像大小,如果不可能的话,我该如何调整 350 dpi 的大小。
javascript - ImageIO.write 将色彩空间 RGB 转换为 JPG 图像的 CMYK
我正在jpg
从客户端发送图像。图像以blob的形式发送。这是发送画布图像的javascript代码
所选文件是由于某些原因jpg
被转换canvas
为然后以blob
.
这是用java编写的服务器图像处理代码:
如果我png
为图像选择格式,ImageIO.write
则可以成功保存,但如果格式为,jpg
则保存黑色图像,并且color space
该黑色图像的CMYK
. 即使它RGB
与原始文件一起使用,我也在控制台上打印了它,然后再保存文件。
仅当在客户端上裁剪图像(或其他内容)然后canvas
从中创建 a 并blob
从中canvas
作为有效负载发送时,才会出现此问题。使用选择文件时没有问题出现<input type="file />
更新:正如迈克所问,我阅读并重jpg
新生成了由ImageIo
. 结果是一样的,一个黑色的图像。
我还用原始文件测试了上面的代码,那个时候ImageIo
可以正确处理它。
我注意到一件重要的事情:黑色图像实际上不是黑色,它只是由于色彩空间的变化而受到干扰的颜色。当我将它上传到 AWS S3 时,我注意到了这一点。下面是 image( CMYK
)
的原始文件:
我设法正确地工作。该线程 上的一位出色的个人建议了此解决方案,甚至效果很好。
但很少有问题保持不变:
- 为什么这只发生在
blob
javascript 发送的数据上,而不是前面提到的普通文件选择器 jpg
为什么仅在将图像格式设置为而不是使用 时发出png
?为什么改变color space
_jpg
ImageIo