Не существует простого способа создания таблицы, о которой я знаю, если вы используете графический контекст Quartz (тип CGContextRef). Мне удалось создать таблицу программным способом, рисуя линии в PDF во вложенных циклах for и обращая особое внимание на интервалы, чтобы они выглядели правильно.
псевдопользователей-код:
for (int i=0; i < numberOfRows; i++)
{
// display each row
// Draw row line
CGPoint horizontalRowDivider[2] = {CGPointMake(x_startPoint, y_startPoint + (i * row_width)), CGPointMake(x_endPoint, y_endPoint + (i * row_width))};
CGContextStrokeLineSegments(pdfContext, newlineItemDivider, 2);
for(int j = 0; j < numberOfColumns; j++)
{
//Draw each column cell
const char *desc_text = "Table value"
CGContextShowTextAtPoint (pdfContext, x_cellDataLoc, y_cellDataLoc, desc_text, strlen(desc_text));
CGPoint verticalLineCellDivider[2] = {CGPointMake(x_startPoint + (j * col_width), y_startPoint), CGPointMake(x_endPoint + (j * col_width), y_endPoint)};
CGContextStrokeLineSegments(pdfContext, verticalLineCellDivider, 2);
}
}
Это грубый пример логики, которую вы можете использовать для рисования таблицы. Вам, вероятно, понадобится прямоугольник или граница вокруг вашего стола, чтобы он выглядел правильно, среди любых других настроек, чтобы сделать его так, как вы хотите. Вы можете найти список методов, как это сделать и многое другое, по ссылке ниже. Я знаю, что это, вероятно, не то, что вы имели в виду, но я надеюсь, что это даст вам направление, если вы полностью застряли. Удачи!
В документации Apple вы можете найти полную библиотеку функций, доступных для рисования PDF: http://developer.apple.com/library/ios/#documentation/GraphicsImaging/Reference/CGContext/Reference/reference.html