更改页面方向

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了更改页面方向相关的知识,希望对你有一定的参考价值。

我在我的C#ASP.NET应用程序中使用iTextSharp.dll。我所追求的是,​​如果计数selectedCount值是<=2然后我想以肖像打印。如果计数是其他任何东西,那么我想在横向打印。我在下面的语法将始终以纵向打印。

如何根据我的标准进行打印?

int selectedCount = 
    checkboxlistfirst.Items.Cast<System.Web.UI.WebControls.ListItem>()
                           .Count(li => li.Selected);

Document pdfDoc = new Document(PageSize.A4.Rotate(), 0, 0, 5, 0);
if (selectedCount <= 2) { pdfDoc.SetPageSize(new Rectangle(850f, 1100f)); }
答案

您基本上需要旋转文档的页面。

看看https://developers.itextpdf.com/examples/stamping-content-existing-pdfs/clone-scaling-and-rotating-pages

(java代码,但应该轻松移植到C#)

PdfDocument pdfDoc = new PdfDocument(new PdfReader(SRC), new PdfWriter(DEST));
int n = pdfDoc.getNumberOfPages();
PdfPage page;
PdfNumber rotate;
for (int p = 1; p <= n; p++) {
    page = pdfDoc.getPage(p);
    rotate = page.getPdfObject().getAsNumber(PdfName.Rotate);
    if (rotate == null) {
        page.setRotation(90);
    }
    else {
        page.setRotation((rotate.intValue() + 90) % 360);
    }
}
pdfDoc.close();

以上是关于更改页面方向的主要内容,如果未能解决你的问题,请参考以下文章

方向更改后片段中的 getActivity() 为空

如何防止在方向更改时重新创建片段寻呼机中的片段?

在方向更改时保留列表片段中的列表

为不同方向使用不同布局时,在方向更改时保存片段状态

方向更改时,片段视图为空

在片段中在运行时更改方向时更改布局而不重新创建视图