有没有办法在打印框架中将默认纵向预览更改为横向?
我在下面试过了 -
PrintAttributes attrib = new PrintAttributes.Builder()
.setMediaSize(PrintAttributes.MediaSize.NA_LETTER.asLandscape())
.setMinMargins(PrintAttributes.Margins.NO_MARGINS)
. build();
并在下面尝试过 -
PrintAttributes attrib = new PrintAttributes.Builder()
.setMediaSize(PrintAttributes.MediaSize.UNKNOWN_LANDSCAPE)
.setMinMargins(PrintAttributes.Margins.NO_MARGINS)
. build();
我注意到它没有将页面方向更改为横向
在上面的打印设置对话框中,如果我确实将方向更改为横向,则只有打印预览页面会将方向更改为横向。这可以通过编程方式完成吗?我希望在横向中进行默认预览。
答案 0 :(得分:2)
我使用下面的代码:
PrintManager printManager = (PrintManager) this.getSystemService(Context.PRINT_SERVICE);
String jobName = this.getString(R.string.app_name) + " Document";
PrintAttributes attrib = new PrintAttributes.Builder()
.setMediaSize(PrintAttributes.MediaSize.UNKNOWN_LANDSCAPE)
. build();
printManager.print(jobName, pda, attrib);
我的结果:
答案 1 :(得分:0)
您可以尝试一下,它对我有用:
PrintAttributes attributes = new PrintAttributes.Builder()
.setMediaSize(new PrintAttributes.MediaSize("ISO_A4", "android", 11690, 8270))
.setResolution(new PrintAttributes.Resolution("pdf", "pdf", 600, 600))
.setMinMargins(PrintAttributes.Margins.NO_MARGINS)
.build();
您会注意到,我交换了MediaSize
的高度和宽度以匹配横向A4尺寸。