Dxf导出jpg文件后丢失元素

image.png (18.4 KB)

image.png (4.5 KB)

上图是dxf和jpg的差异

image.png (86.0 KB)

上面是我的代码

@wangjigen,
您好,您能否分享初始 DXF 文件,以便我们重现该问题。

谢谢,我把setHatch(RasterizationQualityValue.High);改为low就可以显示那个黑色区域了

但是我依然想问,这个问题出现的可能原因,以便之后做出调整

@wangjigen,
我们只能猜测原因,无法调试和调查此元素,我们只能看到它是 HATCH。我们需要调试它的边框是如何形成的,以及是什么原因导致它的缺失。

Template585.zip (14.6 KB)

这是我的原件,有问题的是左上角的指南针,麻烦您试一下。

箭头的右侧三角是一个矩形填充了白色

@wangjigen,
这是我使用 24.6.1 版本的示例。我应该更改什么来观察问题?

CadImage cadImage = (CadImage) Image.load(inputFile);
CadRasterizationOptions cadRasterizationOptions = new CadRasterizationOptions();
cadRasterizationOptions.setPageHeight(2000);
cadRasterizationOptions.setPageWidth(2000);
cadRasterizationOptions.setDrawType(CadDrawTypeMode.UseDrawColor);

JpegOptions jpgOptions = new JpegOptions();
cadImage.save(jpgName, jpgOptions);

Template585.dxf_java_.jpeg (103.1 KB)

看起来没有任何问题,感谢!

@wangjigen,
我们很乐意提供帮助 :slight_smile: ,如果有任何问题,请随时联系我们。

使用21版本的jar,转换jpeg时,jpeg的直线看起来有点断断续续,这是我的源文件的生成的jpeg
file.zip (524.5 KB)

image.png (84.3 KB)

这是我的代码

@wangjigen,
如果我理解正确的话,您说的是我在下面附上的线条。
horizontal.png (2.0 KB)

恐怕这是我们无法完全摆脱的典型光栅化问题。这些线条并非严格水平,而是在绘图中有一些小的 Y 斜率,因此在图像的这个缩放级别,光栅化器能够捕捉到这种变化。

CadImage objImage = (CadImage) CadImage.load(new FileInputStream(srcFile))
这行代码在linux部署中报错空指针异常,这是为什么呢?

@wangjigen,
您能否确认它是否可以在 Windows 上运行?请附上初始文件以供进一步调查,以便我们可以重现此问题。

可以在windows上运行,但是如果在linux上运行则会出现空指针异常
src.zip (40.5 KB)
这是源文件

新建 文本文档 (2)(1).zip (1.4 KB)

这是他的报错提醒

@wangjigen,
感谢您的详细信息。
谢谢,我们已经创建了 CADJAVA-11813 票来调查问题的根源并进行修复。

意思是复现问题了吗?要等多久呢

@wangjigen,
我们还没有尝试在 Linux 中重现此问题,我希望在一两周内得到第一批结果。交付时间取决于问题的复杂性和我们当前的任务计划。我们每隔几个月发布一次 Java 产品。同时,您可以尝试在 AutoCad 中重新保存此文件(以相同格式或其他格式),有时会有所帮助。系统中可能缺少绘图所需的字体,请验证这一点。