禁用 Java ImageIO 色度子采样

2024-03-27

我正在尝试使用 ImageIO 将 BufferedImage 保存为 JPEG。但即使使用 100 质量进行保存,我也会因色度子采样而遭受质量损失。

我通过恢复到旧的 JAI 库并明确将水平和垂直子采样设置为 1,成功解决了这个问题。 然而,一个关键要求是我将图像保存为渐进式,而 JAI 似乎不支持这一点。

有没有办法使用较新的 ImageWriter 禁用子采样?

提前致谢

如果可能的话,我想避免使用 ImageMagick


阅读JPEG 元数据格式规范和使用说明 http://docs.oracle.com/javase/7/docs/api/javax/imageio/metadata/doc-files/jpeg_metadata.html似乎表明这可以通过使用自定义写入图像来实现IIOMetadata.

网上一搜索就出现了https://codereview.appspot.com/3082041/patch/204004/210007 https://codereview.appspot.com/3082041/patch/204004/210007,它似乎正是以这种方式使用 ImageIO 。

我没有尝试过,也不知道它是否真的有效。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

禁用 Java ImageIO 色度子采样 的相关文章

  • Java Swing:清除JList而不触发监听器

    我的情况如下 我有一个 JList 只要在列表中进行选择 它就会触发搜索 使用 ListSelectionListener 我正在尝试使用以下命令重置列表上的选择list clearSelection 这样做的问题是使用clearSelec
  • 以编程方式将 PEM 证书导入 Java KeyStore

    我有一个由两个文件 crt 和 key 组成的客户端证书 我希望将其导入到 java KeyStore 中 然后在 SSLContext 中使用 以通过 Apache 的 HTTPClient 发送 HTTP 请求 但是 我似乎找不到一种以
  • 使用多个构造函数创建不可变类

    我正在阅读这一页 https docs oracle com javase tutorial essential concurrency imstrat html关于在 Java 中创建不可变类 并决定根据页面上概述的规范修改我正在编写的类
  • 使用 Java 编程式 HTML 文档生成

    有谁知道如何在 Java 中以编程方式生成 HTMLDocument 对象 而不需要在外部生成字符串 然后使用 HTMLEditorKit read 来解析它 我问的两个原因 首先 我的 HTML 生成例程需要非常快 并且我认为将字符串解析
  • 方法不必要地被调用?

    我有一个 BaseActivity 它可以通过其他所有活动进行扩展 问题是 每当用户离开 暂停 活动时 我都会将音乐静音 我也不再接听电话 问题是 onPause每当用户在活动之间切换时就会被调用 这意味着应用程序不必要地静音和停止tele
  • firestore快照监听器生命周期和定价之间有什么关系?

    在我的活动中 我有一个字符串列表 这些字符串表示我想要附加快照侦听器的 Firestore 文档 我使用 Acivity ModelView 存储库结构 在活动的 onCreate 中 我向 ViewModelProvider 询问适当的
  • 如何在具有动态列的表中插入值 Jdbc/Mysql

    我想在具有动态列的表中添加值 我设法创建一个包含动态列的表 但我不知道如何插入数据 Create Table sql CREATE TABLE MyDB myTable level INTEGER 255 int columnNumber
  • 无法从后台服务通过 WiFi 访问互联网

    我将直接介绍我发现的一些事实 数据 如果您遇到 解决了类似的问题 请帮助我 我每 5 分钟向服务器发送一次数据 除非用户在服务器的帮助下手动将其关闭 wakeful broadcast receiver通过一个intent service
  • 我们可以在三元运算符(Java)中使用命令吗?

    这是一个工作代码 String a first String b second String object System out println object null a b 但它不是 String a first String b se
  • Java 的 QP 求解器 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 会话 bean 中的 EntityManager 异常处理

    我有一个托管无状态会话 bean 其中注入了 EntityManager em 我想做的是拥有一个具有唯一列的数据库表 然后我运行一些尝试插入实体的算法 但是 如果实体存在 它将更新它或跳过它 我想要这样的东西 try em persist
  • 您能让 Tomcat 6 stdout.log 文件表现得像 log4j DailyRollingFileAppender 吗?

    我们使用的是 Tomcat 6 的 Windows 安装 默认情况下 我们应用程序的 log4j 输出将转到 catalina base logs stdout log 文件 该日志文件仅在我们重新启动 Tomcat 时滚动 并且文件名始终
  • grails 上的同步块在 Windows 上有效,但在 Linux 上无效

    我有一个 grails 应用程序 它依赖于服务中的同步块 当我在 Windows 上运行它时 同步按预期工作 但当我在 ams linux 上运行时 会出现 StaleObjectStateException 该问题在以下示例中重现 cla
  • 源服务器未找到目标资源的当前表示或不愿意透露该表示存在

    web xml
  • 如何在将数据发送到 Firebase 数据库之前对其进行加密?

    我正在使用 Firebase 实时数据库制作聊天应用程序 我知道 Firebase 非常安全 只要您的规则正确 但我自己可以阅读使用我的应用程序的人的所有聊天记录 我想阻止这种情况 为此我需要一种解密和加密方法 我尝试使用凯撒解密 但失败了
  • 在 Android 版 Glide 中离线时加载已获取的图像

    我正在使用 Glide 版本 4 8 0 为了加载图像我这样做 GlideApp with HomePageFragment this load remoteURL diskCacheStrategy DiskCacheStrategy A
  • Java中的DRY原则[关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我一直在读关于DRY https en wikipedia org wiki Don 27t repeat yourself原则 虽然看起来
  • java中的比较器链

    正在阅读Oracle 关于接口的 Java 教程 https docs oracle com javase tutorial java IandI createinterface html其中给出了一个例子Card 打牌 我试图理解接口中的
  • Android 中的字符串加密

    我正在使用代码进行加密和加密 它没有给出字符串结果 字节数组未转换为字符串 我几乎尝试了所有方法将字节数组转换为字符 但没有给出结果 public class EncryptionTest extends Activity EditText
  • GKE 出现错误:ImagePullBackOff 和错误:ErrImagePull 错误

    当 kubectl 应用 yaml 将自定义构建的 docker 映像部署到 GCP 中的集群 编辑掉敏感信息 时 我收到以下错误 已尝试以下但没有运气 手动部署镜像 检查以确保防火墙规则允许 443 并且没有任何东西阻止它 尝试将容器注册

随机推荐

  • 错误:存在部署错误

    当我尝试运行任何示例应用程序或新应用程序时 它显示此错误 有人可以帮忙吗 该错误告诉您尚未选择设备 运行应用程序之前请选择有效的设备 您需要选择一个物理手机 或 Android 模拟器 来部署应用程序 Ref 在设备上调试 https de
  • 及时编译 - 存储与始终执行[重复]

    这个问题在这里已经有答案了 可能的重复 为什么 JVM 不缓存 JIT 编译的代码 https stackoverflow com questions 1992486 why doesnt the jvm cache jit compile
  • Rspec、Cucumber:最佳速度数据库清理策略

    我想提高测试速度 我应该使用use transactional fixtures或与database cleaner gem 哪种database cleaner策略是最好的 我注意到 从迁移后 truncation to transact
  • 线程:在 GUI 线程之外使用像素图是不安全的

    我正在构建一个音乐播放器 它使用 SqueezePlay 一个 SqueezeBox 控制器应用程序 检查状态 长话短说 我使用线程每 5 秒检查一次 Squeezeplay 的状态 如果歌曲标题发生变化 我让它更新标签 Qlabel 专辑
  • MySql。如何使用自加入

    我需要在此表上使用自连接 Country Rank Year France 55 2000 Canada 30 2000 Liberia 59 2001 Turkey 78 2000
  • spring在单元测试中使用application.properties吗?

    我的项目使用 Spring Boot 当我运行我的应用程序时 如果我运行我的单元测试 RunWith SpringJUnit4ClassRunner 我得到以下错误 我不知道为什么spring在单元测试中没有使用application pr
  • 如何使用表头视图内的排除路径正确调整文本视图的大小

    我在 tableView 标题中添加了一个视图 其中包含 imageView 和 textView 图像视图在顶角左对齐 文本视图在图像视图上延伸到屏幕的右侧 如下所示 textView 可以有动态内容 并具有如下设置的排除路径 let i
  • Google Play 商店安全警报称您的应用程序包含易受攻击的 JavaScript 库,如何删除安全警告?

    在 Google Play 商店中 我收到如下警告 您的应用程序包含一个或多个存在已知安全问题的库 请看这个Google 帮助中心文章 https support google com faqs answer 9464300了解详情 易受攻
  • MySQL 数据库导入错误#1064

    我有一个 SQL 数据库 我想使用 phplyadmin 导入该数据库 但出现此错误 CREATE TABLE wp commentmeta meta id BIGINT 20 UNSIGNED NOT NULL AUTO INCREMEN
  • 在非 CCK Drupal 表单中“添加另一个项目”

    Drupal 的 CCK 具有一个方便的功能 即允许单个 CCK 字段通过 添加另一个项目 按钮接受多个值 从而在节点中生成数据数组 我想知道是否有任何简单的方法可以将其适应我要调用的非 CCK 表单drupal get form 我宁愿不
  • 尝试防止将重复值添加到数组中。

    当我在点击事件上向数组添加重复值时 我的项目遇到了问题 当我将单击的项目的值推入数组时openedCards push card 该代码允许将多个项目值添加到数组中 从而创建与单个项目匹配的值 我尝试像这样包装这段代码if inArray
  • “AuthDataResult”类型的值没有成员“providerID”Firebase 5.0

    我在使用最新版本的 FirebaseAuth 5 0 时遇到问题 这是我的代码 func registerUser withEmail email String andPassword password String userCreatio
  • AHK:在 Numlock 打开时重新映射数字键盘,使其行为类似于在 Numlock 关闭时的数字键盘

    我想重新映射 Numlock On 的数字键盘 使其表现得像 Numlock Off 的数字键盘 包括能够在按住 Shift Ctrl 的情况下扩展选择范围 我遇到的问题如下 Numpad8 Up 当按下 shift numpad8 时 光
  • JQuery DataTables - 行分组、求和、可折叠、导出

    我已经使用 JQuery DataTables 很长时间了 这是我第一次使用行分组 我找到了一个很好的例子来说明我想从哪里开始 Grouping http www cscc edu resources app data datatables
  • 具有自定义行布局的多选警报对话框

    我需要创建一个包含多个选择项的 AlertDialog 但在尝试将自定义布局文件设置到内部 ListView 时遇到一些麻烦 对于单选项 我使用一个以 ListAdapter 作为参数的构造函数 这样我可以为每行设置正确的布局资源 buil
  • 使用 jQuery 获取网站信息

    使用 jQuery 有没有办法获取网站信息 可能是元数据和图像 我想要完成的一个例子是 当我在 Facebook 上分享链接时 它会提取相关图像并显示网站 文章 中的文本简介 有没有办法使用 jQuery 使用 ajax 轻松完成此任务 好
  • Typo3 在特定页面的 body 标签中添加类

    我试图弄清楚如何有条件地将类添加到特定页面的正文标记 我试图通过typoscipt 来做到这一点 但一直无法弄清楚 也许有更好的方法来做到这一点 该网站使用的是 Typo3 版本 4 4 6 我试过这个没有用 page 4 bodyTag
  • Rails 中的范围和范围

    有人可以解释一下这个方法的作用以及我可以传递给它什么吗 scoped options nil Returns an anonymous scope 那么作用域方法的作用是什么 读完文档后我不明白 在 ActiveRecord 中 所有查询构
  • 有没有办法以编程方式测试浏览器 GPU 加速?

    我想在我当前正在开发的网站上添加一些 花里胡哨 的功能 但我不想让我的用户陷入整个机器的困境 有没有办法可以测试当前浏览器是否支持 GPU 加速 我可以只检查 UserAgents 但我总是听说它不够准确 无法信任 我想我可以构建一个画布元
  • 禁用 Java ImageIO 色度子采样

    我正在尝试使用 ImageIO 将 BufferedImage 保存为 JPEG 但即使使用 100 质量进行保存 我也会因色度子采样而遭受质量损失 我通过恢复到旧的 JAI 库并明确将水平和垂直子采样设置为 1 成功解决了这个问题 然而