2
我研究了這一點,並試圖旋轉單頁PDF的內容。我可以旋轉頁面90,180或270度。我不想旋轉頁面,而是旋轉內容。旋轉PDF頁面的內容,而不是實際的頁面
這裏是到目前爲止,我已經適應了方法:
public static byte[] RotatePdf(byte[] fileBytes, int degreesClockwise)
{
if (degreesClockwise % 90 != 0)
throw new ApplicationException(string.Format("degreesClockwise must be 0, 90, 180, 360: {0}", degreesClockwise));
PdfReader reader = new PdfReader(fileBytes);
using (var fs = new MemoryStream())
{
PdfStamper stamper = new PdfStamper(reader, fs);
PdfDictionary pageDict = reader.GetPageN(1);
int desiredRotation = degreesClockwise; // x degrees clockwise from what it is now
PdfNumber rotation = pageDict.GetAsNumber(PdfName.ROTATE);
if (rotation != null)
{
desiredRotation += rotation.IntValue;
desiredRotation %= 360; // must be 0, 90, 180, or 270
}
pageDict.Put(PdfName.ROTATE, new PdfNumber(desiredRotation));
stamper.Close();
return fs.ToArray();
}
}
任何建議,將不勝感激。
嗯,這是怎麼代碼不完整?即它現在取得了什麼成就?這與你想要的有何不同? – millimoose
*我不想旋轉頁面,而是內容* - 有什麼區別? – mkl
@millimoose代碼旋轉頁面方向和內容。我想要的方向保持不變,但旋轉90度的內容。 – Seany84