当前位置: 首页 > 面试题库 >

将JPanel导出到矢量图形

姚俊贤
2023-03-14
问题内容

我想将JPanel中的图像导出到矢量图形文件中,以便可以以高于屏幕的分辨率对其进行编辑和打印。本质上,我希望paint()使用目标图形调用它的功能,该目标图形将绘图命令保存到矢量图形文件中。

有什么好的简单方法呢?推荐哪些库?哪种矢量格式最好,为什么?


问题答案:

看看Java EPS Graphics2D包。

许多Java程序都使用Graphics2D在屏幕上绘制内容,虽然很容易将输出另存为png或jpeg文件,但将其导出为EPS以包含在文档或纸张中要难一些。

这个包使整个过程变得非常容易,因为您可以像使用Graphics2D对象一样使用EpsGraphics2D对象。唯一的不同是,所有已实现的方法都将创建EPS输出,这意味着可以调整绘制的图的大小,而不会导致在调整基于像素的图像(例如JEPG和PNG文件)的大小时可能出现的锯齿状边缘。



 类似资料:
  • 问题内容: 在我的一个项目中,我使用JUNG2可视化显示在applet中的非常大的多父级层次结构图。我需要将图形的全部/部分导出为高分辨率的静止图像,因为屏幕截图在打印时看起来很丑陋(特别是如果图形已经缩小)。 我当前使用的代码如下: 这会创建不是特别高分辨率的PNG图像。所以我的问题如下: 是否可以将PNG导出分辨率提高到300 dpi? 是否可以将图形或与此相关的任何摆动组件导出为基于矢量的格

  • 我已经设置了一个geoserver与Postgres/PostGIS数据存储和启用geoserver矢量插件。在geoserver中加载图层后,可以使用geoserver门户提供的开放图层界面查看地图。在这之后,我一直在尝试让这些瓷砖在前端使用OpenLayers渲染,遵循这里的教程。 该代码对于教程中给出的示例世界地图数据来说就像魅力一样,但是当试图渲染我在Postgres数据存储中拥有的任何其

  • 在上一章中,我们学习了如何在Leaflet中使用标记。 除了标记,我们还可以添加各种形状,如圆形,多边形,矩形,折线等。在本章中,我们将讨论如何使用Google地图提供的形状。 Polyline 要使用Leaflet JavaScript库在地图上绘制折线叠加层,请按照以下步骤操作 - Step 1 - 通过传递“ div ”元素(字符串或对象)和映射选项(可选)来创建Map对象。 Step 2

  • 在我的应用程序中,我允许用户设置背景颜色和图像。因此,为了确保所有必要的信息和图标都是可见的,我使用了带有不同颜色阴影的文本。通过在xml中设置阴影属性可以很容易地进行设置。 然而,我找不到在vector drawable上绘制轮廓的方法。我发现了类似的问题,但答案或多或少都是用阴影画出矩形或方形背景。这让我看起来太难看了。我想勾勒出形状的轮廓,而不是用shaddow将背景设置为正方形。

  • 问题内容: 我们使用iText从Java生成PDF(部分基于此站点的建议)。但是,将徽标的副本以GIF之类的图像格式嵌入会导致人们放大和缩小时看起来有些奇怪。 理想情况下,我们希望以矢量格式嵌入图像,例如EPS,SVG或只是PDF模板。该网站声称EPS支持已被删除,在PDF中嵌入PDF或PS可能会导致错误,甚至没有提到SVG。 我们的代码直接使用Graphics2D API而不是iText,但是我

  • 注意:我知道以前在SO上也问过类似的问题,但我觉得它们没有帮助或非常清楚。 第二点注意:对于这个项目/任务的范围,我试图避免使用第三方库,比如Boost。 我想看看是否有一种方法可以让一个向量在它的每个索引中包含多种类型。例如,假设我有以下代码示例: 我听过向量 在我的实际应用中,我知道哪些可能的类型可能被插入到一个向量中,但是这些类型并不都来自同一个超级类,并且不能保证所有这些类型都会被推到向量