Ho un'applicazione C# che genera una fattura PDF. In questa fattura è una tabella di articoli e prezzi. Questo viene generato utilizzando un PdfPTable
e PdfPCell
s.Testo di allineamento a destra in PdfPCell
Voglio essere in grado di allineare a destra la colonna del prezzo ma non riesco a essere in grado di - il testo esce sempre allineato a sinistra nella cella.
Ecco il mio codice per la creazione della tabella:
PdfPTable table = new PdfPTable(2);
table.TotalWidth = invoice.PageSize.Width;
float[] widths = { invoice.PageSize.Width - 70f, 70f };
table.SetWidths(widths);
table.AddCell(new Phrase("Item Name", tableHeadFont));
table.AddCell(new Phrase("Price", tableHeadFont));
SqlCommand cmdItems = new SqlCommand("SELECT...", con);
using (SqlDataReader rdrItems = cmdItems.ExecuteReader())
{
while (rdrItems.Read())
{
table.AddCell(new Phrase(rdrItems["itemName"].ToString(), tableFont));
double price = Convert.ToDouble(rdrItems["price"]);
PdfPCell pcell = new PdfPCell();
pcell.HorizontalAlignment = PdfPCell.ALIGN_RIGHT;
pcell.AddElement(new Phrase(price.ToString("0.00"), tableFont));
table.AddCell(pcell);
}
}
Qualcuno può aiutare?
ho incontrato con lo stesso problema, e ha trovato nessuna soluzione praticabile per un oggetto 'Phrase'. Il meglio che posso suggerire è che si usi un 'Paragraph' invece di' Phrase' e si imposta l'allineamento per il Paragrafo stesso. – Mihai