我想要一个60厘米宽的矩形。
link to converter )
下面是我使用的代码:
private static byte[] CreateRectangle() { var stream = new MemoryStream(); PdfDocument pdfDoc = new PdfDocument(new PdfWriter(stream)); PdfCanvas canvas = new PdfCanvas(pdfDoc.AddNewPage()); Color greenColor = new DeviceCmyk(1f, 0f, 1f, 0.176f); canvas.SetFillColor(greenColor); canvas.Rectangle(150, 600, 170, 56); /* 170 width, 56 height */ canvas.FillStroke(); pdfDoc.Close(); return stream.ToArray(); }
你的计算是正确的,6厘米大约是170点。
你的代码是正确的。
我用你的代码生成了一个PDF。当我使用测量工具时,6 cm被确认:
我打印了那份PDF,然后测量了打印出来的尺寸,又是6厘米。
因此,要么你的尺子错了(我怀疑),要么你的印刷不是“实际大小”,而是“适合”或“缩小过大的页面”(两者都对应于96%)。