转换的pdf线条和文字很粗,还有下面的第1张共1张的数字1和金导体一层网版图怎么没按照预想的位置居中而是往右侧偏移了。
具体代码块:
LoadOptions loadOptions = new LoadOptions();
loadOptions.setSpecifiedEncoding(CodePages.SimpChinese);
CadImage cadImage = (CadImage)CadImage.load("D:\\demo.dwg",loadOptions);
CadRasterizationOptions cadRasterizationOptions = new CadRasterizationOptions();
cadRasterizationOptions.setBackgroundColor(Color.getBlack());
cadRasterizationOptions.setPageHeight((float) cadImage.getHeight());
cadRasterizationOptions.setPageWidth((float) cadImage.getWidth());
cadRasterizationOptions.setAutomaticLayoutsScaling(true);
cadRasterizationOptions.setNoScaling(false);
cadRasterizationOptions.setDrawType(CadDrawTypeMode.UseObjectColor);
cadRasterizationOptions.setUnitType(UnitType.Unitless);
RasterizationQuality rasterizationQuality = new RasterizationQuality();
rasterizationQuality.setArc(RasterizationQualityValue.High);
rasterizationQuality.setHatch(RasterizationQualityValue.High);
rasterizationQuality.setText(RasterizationQualityValue.High);
rasterizationQuality.setOle(RasterizationQualityValue.High);
cadRasterizationOptions.setQuality(rasterizationQuality);
PdfOptions pdfOptions = new PdfOptions();
pdfOptions.setVectorRasterizationOptions(cadRasterizationOptions);
cadImage.save("D:\\demo调整.pdf", pdfOptions);
关于文字和线条粗。如果把
cadRasterizationOptions.setPageHeight((float) cadImage.getHeight());
cadRasterizationOptions.setPageWidth((float) cadImage.getWidth());
换成
cadRasterizationOptions.setPageWidth(cadImage.getWidth()*100);
cadRasterizationOptions.setPageHeight(cadImage.getHeight()*100);
线条和字体就不粗了,但不知道为什么。这种解决方法靠谱吗。