0

itextsharp を介して PDF に配置する画像があります。ScalePercent または ScaleAbsoluteWidth または ScaleAbsoluteHeight を使用しても効果はありません。PDF にレンダリングされるときの画像は、ページで使用可能なスペースを常に占有します (非常に大きくなります)。

これが私のコードです。

var chartImage = new System.IO.MemoryStream();
Chart1.SaveImage(chartImage, ChartImageFormat.Png);
iTextSharp.text.Image imageForChart = iTextSharp.text.Image.GetInstance(chartImage.GetBuffer());

imageForChart.ScaleAbsoluteHeight(5f);
imageForChart.ScaleAbsoluteWidth(5f);

Dictionary<string, string> dictionary = new Dictionary<string, string>();
string pageTitle = "Event Recap Report";
dictionary.Add("Started", tbStartDate.Text);
dictionary.Add("Ended", tbEndDate.Text);
PDFDocument x = new PDFDocument(pageTitle, PageSize.LETTER, 15, 15, 40, 15);

x.UserName = _currentUser.FullName;
x.WritePageHeader(1, ref dictionary);
x.WriteImage(ref imageForChart);
x.WriteGrid(ref grdEventRecap);
x.WritePageFooter();
x.Finish(false);
4

3 に答える 3

0

次のように絶対位置を設定してみてください。

var imageForChart = Image.GetInstance(chartImage.GetBuffer());
imageForChart.SetAbsolutePosition(positionX, positionY);
image.ScaleAbsoluteHeight(5f);
image.ScaleAbsoluteWidth(5f);
于 2013-09-27T14:52:42.983 に答える