Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
rsvg转换pdf和纸张大小_Pdf_Svg_Librsvg - Fatal编程技术网

rsvg转换pdf和纸张大小

rsvg转换pdf和纸张大小,pdf,svg,librsvg,Pdf,Svg,Librsvg,我使用rsvgconvert将SVG转换为PDF(效果很好,也适用于大型文件) SVG文件是可伸缩的,我在内部使用mm单位,所以如果我的文档是1200x1500,它的宽度是1.2m,长度是1.5m RSVG创建的PDF文档的纸张大小为423x529mm(如果宽度/高度参数使用2400x3000->846x1058),因此存在一些常量~2.3868,我必须乘以宽度/高度才能获得正确的纸张大小。但X和Y的形状不完全相同,1200/423!=1500/529(可能我看到纸张大小四舍五入为整数) 这个常

我使用rsvgconvert将SVG转换为PDF(效果很好,也适用于大型文件)

SVG文件是可伸缩的,我在内部使用mm单位,所以如果我的文档是1200x1500,它的宽度是1.2m,长度是1.5m

RSVG创建的PDF文档的纸张大小为423x529mm(如果宽度/高度参数使用2400x3000->846x1058),因此存在一些常量~2.3868,我必须乘以宽度/高度才能获得正确的纸张大小。但X和Y的形状不完全相同,1200/423!=1500/529(可能我看到纸张大小四舍五入为整数)

这个常数是多少?我尝试了不同的DPI,但似乎与此无关

我的convert命令很简单

rsvg-convert -f pdf -o test.pdf test.svg

该常数约为2.83464,对于x/y也是如此。使用identify-verbose test.pdf找到它,纸张大小以英寸为单位。有两个debian安装(8.9),具有相同的rsvg转换(2.40.5)和libcairo2(1.14.0-2.1+deb8u2),但它们的常量可能不同,它可能直接来自X系统。尝试
xdpyinfo | grep dimensions
xrandr | grep'connected'
查询系统已知的分辨率和屏幕大小(在我的系统上,它们有趣地给出了不同的物理屏幕大小)。该常数约为2.83464,x/y相同。使用identify-verbose test.pdf找到它,纸张大小以英寸为单位。有两个debian安装(8.9),具有相同的rsvg转换(2.40.5)和libcairo2(1.14.0-2.1+deb8u2),但它们的常量可能不同,它可能直接来自X系统。尝试
xdpyinfo | grep dimensions
xrandr | grep'connected'
查询系统已知的分辨率和屏幕大小(在我的系统上,它们有趣地给出了不同的物理屏幕大小)。