我有一個相當寬的表(頁面寬度的4/3),我試圖打印使用grid.table或grid.arrange(通過tableGrob)到一個PDF文件。表格超出了頁面邊界並被裁剪。有沒有辦法強制grid.table/grid.arrange將表格縮放到打印區域?如何適合非常寬的grid.table或tableGrob以適合PDF頁面?
6
A
回答
0
我使用字體大小完成了這項工作。不是最好的解決方案(需要人工干預),但也許有人可以提供更優雅的東西。
termTable = tableGrob(terms, h.even.alpha=1, h.odd.alpha=1, v.even.alpha=0.5, v.odd.alpha=1, core.just='left', rows=c(),
gpar.coretext =gpar(fontsize=8),
gpar.coltext=gpar(fontsize=10, fontface='bold'),
gpar.rowtext=gpar(fontsize=10, fontface='bold')
)
-2
隨着最新版本gridExtra,正確的格式更新rimorob的回答是:
termTable = tableGrob(術語,主題= ttheme_default(gpar.coretext = gpar(字體大小= 8),gpar .coltext = gpar(字體大小= 10,fontface = '大膽'),gpar.rowtext = gpar(字體大小= 10,fontface = '大膽')))
+0
我懷疑它,你是否運行這個代碼? – baptiste
3
有一個辦法,但目前還不清楚會發生什麼時該文本太寬以至於不適合某些單元格。
一種選擇是手動設置寬度,當然具有固定的字體大小的
library(grid)
library(gridExtra)
g1 <- g2 <- tableGrob(head(iris, 10), rows=NULL)
g2$widths <- unit(rep(1/ncol(g2), ncol(g2)), "npc")
grid.newpage()
gt = arrangeGrob(textGrob("page 1"), textGrob("page 2"),
rectGrob(gp=gpar(fill="grey98")),
rectGrob(gp=gpar(fill="grey98")),
nullGrob(),
layout_matrix=rbind(c(1,5,2), c(3,5,4)),
widths = unit(c(1,5,1),c("null", "cm", "null")),
heights = unit(c(1, 1),c("line", "null")),
vp = viewport(width=0.9, height=0.9))
tc = list(g1, g2)
gt <- gtable::gtable_add_grob(gt, tc, l=c(1,3), t=2,
name="newgrobs")
grid.draw(gt)
但它意味着一些文本可能被切斷。
可能是一個更好的選擇是引入換行符,和/或(稍微)降低字體大小。
g3 <- tableGrob(head(iris, 10), theme = ttheme_default(7),
rows=NULL, cols=gsub("\\.", "\\\n",names(iris)))
g3$widths <- unit(rep(1/ncol(g2), ncol(g2)), "npc")
grid.newpage()
gt = arrangeGrob(textGrob("page 1"), textGrob("page 2"),
rectGrob(gp=gpar(fill="grey98")),
rectGrob(gp=gpar(fill="grey98")),
nullGrob(),
layout_matrix=rbind(c(1,5,2), c(3,5,4)),
widths = unit(c(1,1,1),c("null", "line", "null")),
heights = unit(c(1, 1),c("line", "null")),
vp = viewport(width=0.9, height=0.9))
tc = list(g2, g3)
gt <- gtable::gtable_add_grob(gt, tc, l=c(1,3), t=2,
name="newgrobs")
grid.draw(gt)
相關問題
- 1. dompdf - 縮放pdf以適合頁面
- 2. CGContext上PDF頁面方面適合
- 3. tableGrob:設置grid.table的高度和寬度
- 4. 如何使Tab頁面的寬度適合TabControl的寬度
- 5. 在pdf中適合寬度的內容
- 6. 如何動態更改iframe的寬度以適當地適合
- 7. 縮放方程以適合確切的頁面寬度
- 8. 當導出爲.pdf或excel時,SSRS適合頁面
- 9. 使用ImageMagick或Ghostscript(或其他)來縮放PDF以適合頁面?
- 10. 如何讓表格適合tableGrob創建的圖像?
- 11. 如何使pdf頁面適合屏幕尺寸在讀卡器
- 12. 如何使phpExcel PDF文件適合在一個頁面
- 13. HTMLLoader打開pdf,但dosn't適合適當的寬度
- 14. 告訴abcPdf縮放html以適合單個pdf頁面
- 15. 使用Ghostscript縮小PDF以適合一個頁面
- 16. 如何讓HTML頁面適合屏幕?
- 17. 試圖適合幻燈片寬度以適合屏幕
- 18. 打印適合頁面
- 19. 規模JComponent適合頁面
- 20. 將Div適合頁面?
- 21. Iphone自動適合頁面
- 22. div適合頁面頂部
- 23. 在打印時調整DIV以適合頁面寬度
- 24. Excel VBA - 適合頁面到頁面
- 25. 如何設置固定元素的寬度以適合整個頁面?
- 26. 告訴飛碟或BIRT縮放HTML以適合單個pdf頁面
- 27. 在Chrome中嵌入PDF時如何設置合適的寬度?
- 28. 如何適合compoent的整個寬度
- 29. 適合頁面內容適合iphone,android屏幕與javascript
- 30. 適合寬度的UIImageView
沒了,通過設計。如果表格被縮放到頁面上,則文本將不得不縮放以適應單元格,而不是固定的字體大小,並且我選擇不這樣做。 – baptiste
這是一個解釋,但不是一個原因。你爲什麼選擇不實施?順便說一下,偉大的工具! – rimorob