我正在使用iTextSharp将多个PDF文件合并为一个Pdf.我发现了一个代码示例 或2在网络上对如何完成这个任务.
它们都可以工作,没有明显的问题,因为我能够将多个PDF文件合并为一个PDF.
我所遇到的问题是我希望所有页面都在PORTRAIT中,因为一些PDF文件在LANDSCAPE中有页面,我希望它们可以旋转到PORTRAIT.我不介意他们要么颠倒,要么侧身,但他们都必须是肖像.
查看列出的示例中的代码部分:
page = writer.GetImportedPage(reader, i);
rotation = reader.GetPageRotation(i);
Run Code Online (Sandbox Code Playgroud)
始终将页面旋转值返回为0(零),因此代码部分
if (rotation == 90 rotation == 270)
{
cb.AddTemplate(page, 0, -1f, 1f, 0, 0,
reader.GetPageSizeWithRotation(i).Height);
}
Run Code Online (Sandbox Code Playgroud)
永远不会被执行(如果这是应该做的,旋转页面).
那么,基于第一个代码示例链接中的代码,在将其添加到新的合并PDF文档之前,我将page = writer.GetImportedPage(reader, i)如何更改page从Landscape到Portrait 的页面布局cb.AddTemplate...?
PS.确定页面是横向还是纵向我使用从SO获得的以下代码(适用于上面的代码示例):
float pageXYRatio = page.Width / page.Height;
if (XYRatio > 1f)
{
//page is landscape
}
else
{
//page is portrait
}
Run Code Online (Sandbox Code Playgroud)
任何帮助,将不胜感激.
谢谢
我有一个已从文本文件填充的Stringbuilder对象.如何检查StringBuilder对象并删除连续的"空白"行.
即
Line 1: This is my text
Line 2:
Line 3: Another line after the 1st blank one
Line 4:
Line 5:
Line 6: Next line after 2 blank lines
Run Code Online (Sandbox Code Playgroud)
(行号仅供参考)
第2行的空白行很好,但我想在第5行删除重复的空白行,依此类推.
如果为了论证,第6行也是一个空白行,并且第7行有一个值,我想删除空行5和空行6,这样第3行和第7行之间只有1个空白行.
提前致谢.