Free Support Forum - aspose.com

Aspose.Diagram for java转换问题

你好,我使用Aspose.Diagram for java转换完visio后,图片是这样的WechatIMG27.png (6.8 KB),原始文件是测试visio.vsd.zip (71.4 KB)
请问是什么原因呢?

@chenxf
在使用Aspose.Diagram for Java 20.9测试场景时,我们能够注意到环境中的类似问题。因此,我们已在问题跟踪系统中将其记录为DIAGRAMJAVA-50702。解决后,我们会立即通知您。请耐心等待,为我们节省一些时间。

我们对造成的不便很抱歉。

@chenxf

我们调查了票证,发现问题是由于字体缺失所致。请使用以下代码段设置字体目录。

doc.setFontDirs(new String[] { "e:\\<FangSong_GB2312 font file directory>\\" });

您好,这个字体文件我们这边没有,方便发我一份吗?

@chenxf

您可以从以下链接下载该字体:

这个是我的测试代码,我已经下载了字体文件,但是还是存在一样的问题。

import com.aspose.diagram.Diagram;
import com.aspose.diagram.License;
import com.aspose.diagram.SaveFileFormat;
import com.aspose.diagram.examples.LicenseUtil;
import com.aspose.diagram.examples.Utils;

public class ExportToImage {
public static void main(String[] args) throws Exception {
License license = new License();
license.setLicense(LicenseUtil.class.getClassLoader().getResource("").getPath() + “License/” + “Aspose.Diagram.lic”);
String dataDir = Utils.getSharedDataDir(ExportToImage.class) + “LoadSaveConvert/”;

	Diagram diagram = new Diagram(dataDir + "3.vsd");
	diagram.setFontDirs(new String[] { "f:\\FangSong_GB2312.dfont\\"});
	diagram.save(dataDir + "1.png", SaveFileFormat.PNG);
}

}

@chenxf

请在我们的环境中使用Aspose.Diagram for Java 20.9检查以下代码段以及从中生成的附加输出PNG。

File inFile = new File(dataDir + "测试visio.vsd");
String outFileName = dataDir + "测试visio.png";
byte inBytes[] = java.nio.file.Files.readAllBytes(inFile.toPath());
com.aspose.diagram.Diagram d = new com.aspose.diagram.Diagram(new ByteArrayInputStream(inBytes));
d.setFontDirs(new String[] { dataDir + "FangSong_GB2312\\"});
d.save(outFileName, SaveFileFormat.PNG);

OnlineWebFonts_COM.zip (2.4 MB)
测试visio.png (10.9 KB)

我们还附加了字体文件,供您参考。您是否可以确保使用最新版本的API,如果问题仍然存在,请与我们共享一个示例控制台应用程序,该应用程序可以复制该问题。我们将再次在我们的环境中测试该场景并相应地解决它。