MVC3 で iTextSharp を使用すると問題が発生します。
いくつかの画像を含むヘッダー/フッターを作成していますが、ローカルでは問題なく動作しますが、サーバーにアップロードすると 401 が返されます。
リモート サーバーがエラーを返しました: (401) 権限がありません。説明: 現在の Web 要求の実行中に未処理の例外が発生しました。エラーの詳細とコード内のどこでエラーが発生したかについては、スタック トレースを確認してください。
例外の詳細: System.Net.WebException: リモート サーバーがエラーを返しました: (401) 権限がありません。
私のヘッダー/フッターコード:
public override void OnEndPage(iTextSharp.text.pdf.PdfWriter writer, iTextSharp.text.Document document)
{
//Include the header image
//System.Web.HttpContext.Current.Server.MapPath("/image.jpg");
iTextSharp.text.Image HeadImg = iTextSharp.text.Image.GetInstance(HttpContext.Current.Server.MapPath("/image.jpg"));
HeadImg.ScalePercent(50f);
HeadImg.SetAbsolutePosition(document.PageSize.Width - 60f - 72f, document.PageSize.Height - 36f - 216.6f);
//Include the footer image/text
iTextSharp.text.Image FootImgMS = iTextSharp.text.Image.GetInstance(HttpContext.Current.Server.MapPath("/image.jpg"));
FootImgMS.ScalePercent(50f);
iTextSharp.text.Image FootLeftImg = iTextSharp.text.Image.GetInstance(HttpContext.Current.Server.MapPath("/image.jpg"));
FootLeftImg.ScalePercent(50f);
Phrase FootText = new Phrase("Phone: " + Tel, FontFactory.GetFont("verdana", 10));
Paragraph LeftFoot = new Paragraph();
LeftFoot.Add(new Chunk(FootLeftImg, 0, 0));
LeftFoot.Add(new Chunk(Chunk.NEWLINE));
LeftFoot.Add(new Phrase(FootText));
//Create header table
PdfPTable PDFTab = new PdfPTable(1);
//Create footer table
PdfPTable PDFFootTab = new PdfPTable(2);
//Create header cell
PdfPCell PDFCell1 = new PdfPCell(HeadImg);
PDFCell1.Border = 0;
//create footer cells
PdfPCell PDFFootCell1 = new PdfPCell(LeftFoot);
PDFFootCell1.PaddingTop = 35;
PdfPCell PDFFootCell2 = new PdfPCell(FootImgMS);
PDFFootCell1.Border = 0;
PDFFootCell2.Border = 0;
PDFFootCell1.HorizontalAlignment = Element.ALIGN_LEFT;
PDFFootCell2.HorizontalAlignment = Element.ALIGN_RIGHT;
//Add cells to tables
PDFTab.AddCell(PDFCell1);
PDFTab.TotalWidth = document.PageSize.Width;
PDFFootTab.AddCell(PDFFootCell1);
PDFFootTab.AddCell(PDFFootCell2);
PDFFootTab.TotalWidth = document.PageSize.Width - 80;
//Write out header table
PDFTab.WriteSelectedRows(0, -1, 0, document.PageSize.Height, writer.DirectContent);
//Write out footer table
PDFFootTab.WriteSelectedRows(0, -1, 40, 60, writer.DirectContent);
//set pdfContent value
pdfContent = writer.DirectContent;
pdfContent.MoveTo(30, document.PageSize.Height - 145);
pdfContent.LineTo(document.PageSize.Width - 40, document.PageSize.Height - 145);
}
画像と関係があることはほぼ確実ですが、どうあるべきかわかりません。
どんな助けでも感謝します:)