1. Open PDFHelper class
2. Find PrintOrderToPDF method
3. Use the following code to render addresses in table (2 column)
int[] addressColumnWidths = new int[1] { 100 };
int addressCount = 1;
if (order.ShippingStatus != ShippingStatusEnum.ShippingNotRequired)
{
addressColumnWidths = new int[2] { 50, 50 };
addressCount = 2;
}
Table addressTable = new Table(addressCount, 1);
addressTable.BorderWidth = 0;
addressTable.DefaultCell.Border = 0;
addressTable.AutoFillEmptyCells = true;
addressTable.Cellpadding = 0;
addressTable.Width = 100f;
addressTable.SetWidths(addressColumnWidths);
//billing info
Cell billingAddressCell = new Cell();
billingAddressCell.Add(new Paragraph(" "));
billingAddressCell.Add(new Paragraph(LocalizationManager.GetLocaleResourceString("PDFInvoice.BillingInformation", LanguageID), fBold));
if (!String.IsNullOrEmpty(order.BillingCompany))
billingAddressCell.Add(new Paragraph(" " + String.Format(LocalizationManager.GetLocaleResourceString("PDFInvoice.Company", LanguageID), order.BillingCompany), f));
billingAddressCell.Add(new Paragraph(" " + String.Format(LocalizationManager.GetLocaleResourceString("PDFInvoice.Name", LanguageID), order.BillingFullName), f));
billingAddressCell.Add(new Paragraph(" " + String.Format(LocalizationManager.GetLocaleResourceString("PDFInvoice.Phone", LanguageID), order.BillingPhoneNumber), f));
if (!String.IsNullOrEmpty(order.BillingFaxNumber))
billingAddressCell.Add(new Paragraph(" " + String.Format(LocalizationManager.GetLocaleResourceString("PDFInvoice.Fax", LanguageID), order.BillingFaxNumber), f));
billingAddressCell.Add(new Paragraph(" " + String.Format(LocalizationManager.GetLocaleResourceString("PDFInvoice.Address", LanguageID), order.BillingAddress1), f));
if (!String.IsNullOrEmpty(order.BillingAddress2))
doc.Add(new Paragraph(" " + String.Format(LocalizationManager.GetLocaleResourceString("PDFInvoice.Address2", LanguageID), order.BillingAddress2), f));
billingAddressCell.Add(new Paragraph(" " + String.Format("{0}, {1}", order.BillingCountry, order.BillingStateProvince), f));
billingAddressCell.Add(new Paragraph(" " + String.Format("{0}, {1}", order.BillingCity, order.BillingZipPostalCode), f));
billingAddressCell.Add(new Paragraph(" "));
addressTable.AddCell(billingAddressCell);
//shipping info
if (order.ShippingStatus != ShippingStatusEnum.ShippingNotRequired)
{
Cell shippingAddressCell = new Cell();
shippingAddressCell.Add(new Paragraph(" "));
shippingAddressCell.Add(new Paragraph(LocalizationManager.GetLocaleResourceString("PDFInvoice.ShippingInformation", LanguageID), fBold));
if (!String.IsNullOrEmpty(order.ShippingCompany))
shippingAddressCell.Add(new Paragraph(" " + String.Format(LocalizationManager.GetLocaleResourceString("PDFInvoice.Company", LanguageID), order.ShippingCompany), f));
shippingAddressCell.Add(new Paragraph(" " + String.Format(LocalizationManager.GetLocaleResourceString("PDFInvoice.Name", LanguageID), order.ShippingFullName), f));
shippingAddressCell.Add(new Paragraph(" " + String.Format(LocalizationManager.GetLocaleResourceString("PDFInvoice.Phone", LanguageID), order.ShippingPhoneNumber), f));
if (!String.IsNullOrEmpty(order.ShippingFaxNumber))
shippingAddressCell.Add(new Paragraph(" " + String.Format(LocalizationManager.GetLocaleResourceString("PDFInvoice.Fax", LanguageID), order.ShippingFaxNumber), f));
shippingAddressCell.Add(new Paragraph(" " + String.Format(LocalizationManager.GetLocaleResourceString("PDFInvoice.Address", LanguageID), order.ShippingAddress1), f));
if (!String.IsNullOrEmpty(order.ShippingAddress2))
doc.Add(new Paragraph(" " + String.Format(LocalizationManager.GetLocaleResourceString("PDFInvoice.Address2", LanguageID), order.ShippingAddress2), f));
shippingAddressCell.Add(new Paragraph(" " + String.Format("{0}, {1}", order.ShippingCountry, order.ShippingStateProvince), f));
shippingAddressCell.Add(new Paragraph(" " + String.Format("{0}, {1}", order.ShippingCity, order.ShippingZipPostalCode), f));
shippingAddressCell.Add(new Paragraph(" "));
addressTable.AddCell(shippingAddressCell);
}
doc.Add(addressTable);
doc.Add(new Paragraph(" "));