I'm trying to create a price-list, the data does not
require much space, I can (in a word processor) fit
two columns to a page. The data needs to be in a
tabular format and the tables need to flow down one
column, down the next and onto the next page. One
section, using a word processor, currently runs to
eight sides of A4. I'm trying to find a package that
can handle tabular across columns and pages.
I've been looking at tabular, supertabular,
longtable, ltxtable (which looks like beta, and
doesn't appear to have been touched since 1995).
I'm not having a lot of luck.
We require our tabular data to be in a visible grid
(description and price with an empty 'cell' into
which a quantity can be written so that it can be
used as an order form):
Justin C <justin.1...@purestblue.com> writes:
> I'm trying to create a price-list, the data does not
> require much space, I can (in a word processor) fit
> two columns to a page. The data needs to be in a
> tabular format and the tables need to flow down one
> column, down the next and onto the next page. One
> section, using a word processor, currently runs to
> eight sides of A4. I'm trying to find a package that
> can handle tabular across columns and pages.
> I've been looking at tabular, supertabular,
> longtable, ltxtable (which looks like beta, and
> doesn't appear to have been touched since 1995
I am the farthest thing from an expert you could find, but I do notice
that you haven't mentioned the multicol package. Maybe worth a shot?
>I'm trying to create a price-list, the data does not
>require much space, I can (in a word processor) fit
>two columns to a page. The data needs to be in a
>tabular format and the tables need to flow down one
>column, down the next and onto the next page. One
>section, using a word processor, currently runs to
>eight sides of A4. I'm trying to find a package that
>can handle tabular across columns and pages.
>I've been looking at tabular, supertabular,
>longtable, ltxtable (which looks like beta, and
>doesn't appear to have been touched since 1995).
>I'm not having a lot of luck.
>We require our tabular data to be in a visible grid
>(description and price with an empty 'cell' into
>which a quantity can be written so that it can be
>used as an order form):
Justin C <justin.1...@purestblue.com> wrote:
> I'm trying to create a price-list, the data does not
> require much space, I can (in a word processor) fit
> two columns to a page. The data needs to be in a
> tabular format and the tables need to flow down one
> column, down the next and onto the next page. One
> section, using a word processor, currently runs to
> eight sides of A4. I'm trying to find a package that
> can handle tabular across columns and pages.
> I've been looking at tabular, supertabular,
> longtable, ltxtable (which looks like beta, and
> doesn't appear to have been touched since 1995).
> I'm not having a lot of luck.
> We require our tabular data to be in a visible grid
> (description and price with an empty 'cell' into
> which a quantity can be written so that it can be
> used as an order form):
> I'm trying to create a price-list, the data does not
> require much space, I can (in a word processor) fit
> two columns to a page. The data needs to be in a
> tabular format and the tables need to flow down one
> column, down the next and onto the next page. One
> section, using a word processor, currently runs to
> eight sides of A4. I'm trying to find a package that
> can handle tabular across columns and pages.
> I've been looking at tabular, supertabular,
> longtable, ltxtable (which looks like beta, and
> doesn't appear to have been touched since 1995).
> I'm not having a lot of luck.
> We require our tabular data to be in a visible grid
> (description and price with an empty 'cell' into
> which a quantity can be written so that it can be
> used as an order form):
Thank you all for such a quick response. I shall investigate all
suggestions and report back.
Thinking back, I was trying to run before I could walk. I was specifying too many parameters in the document to begin with (fonts, print area/size) rather than getting to the meat and
getting the tables across columns and pages. I'll go back to the root problem and then, when that works, look at the 'look'
of the document.
>> I'm trying to create a price-list, the data does not
>> require much space, I can (in a word processor) fit
>> two columns to a page. The data needs to be in a
>> tabular format and the tables need to flow down one
>> column, down the next and onto the next page. One
>> section, using a word processor, currently runs to
>> eight sides of A4. I'm trying to find a package that
>> can handle tabular across columns and pages.
>> I've been looking at tabular, supertabular,
>> longtable, ltxtable (which looks like beta, and
>> doesn't appear to have been touched since 1995
> I am the farthest thing from an expert you could find, but I do notice
> that you haven't mentioned the multicol package. Maybe worth a shot?
While this may work (I've not looked very far into it), the work
involved in creating the layout I want looks like a lot more than with other packages suggested.
I'll keep this one on the back-burner should I hit an insumountable
problem elsewhere.
>> I'm trying to create a price-list, the data does not
>> require much space, I can (in a word processor) fit
>> two columns to a page. The data needs to be in a
>> tabular format and the tables need to flow down one
>> column, down the next and onto the next page. One
>> section, using a word processor, currently runs to
>> eight sides of A4. I'm trying to find a package that
>> can handle tabular across columns and pages.
>> I've been looking at tabular, supertabular,
>> longtable, ltxtable (which looks like beta, and
>> doesn't appear to have been touched since 1995).
>> I'm not having a lot of luck.
>> We require our tabular data to be in a visible grid
>> (description and price with an empty 'cell' into
>> which a quantity can be written so that it can be
>> used as an order form):
>> If you can't think of a suitable package, can you
>> think of an alternative way to proceed?
> Many years ago, Barbara Beeton gave me the most valuable piece of advice
> I have ever had about TeX: when possible, let paragraph-mode do it for you.
> Repeated blocks in this format over many pages are sometimes best done
> as boxes.
The problem I find with this one is that one must manually
specify a column break; this is something I'm trying to avoid, I really need to be able to throw my listing at LaTeX and have it handled for me. Having to calculate page
breaks manually isn't going to reduce our work-load.
Thank you for the suggestion, but I think supertabular has been the best suggestion so far for this problem.
>> I'm trying to create a price-list, the data does not
>> require much space, I can (in a word processor) fit
>> two columns to a page. The data needs to be in a
>> tabular format and the tables need to flow down one
>> column, down the next and onto the next page. One
>> section, using a word processor, currently runs to
>> eight sides of A4. I'm trying to find a package that
>> can handle tabular across columns and pages.
>> I've been looking at tabular, supertabular,
>> longtable, ltxtable (which looks like beta, and
>> doesn't appear to have been touched since 1995).
>> I'm not having a lot of luck.
>> We require our tabular data to be in a visible grid
>> (description and price with an empty 'cell' into
>> which a quantity can be written so that it can be
>> used as an order form):
On Oct 11, 12:08 pm, Justin C <justin.1...@purestblue.com> wrote:
> I'm trying to create a price-list, the data does not
> require much space, I can (in a word processor) fit
> two columns to a page. The data needs to be in a
> tabular format and the tables need to flow down one
> column, down the next and onto the next page.
snip
> If you can't think of a suitable package, can you
> think of an alternative way to proceed?
I'm a big user of Latex for writing technical reports, but for
situations like this, I prefer to use the asymptote program
(asymptote.sourceforge.net). It's a vector graphics language that
uses Latex for the typesetting. Asymptote is great for placing text
and graphics exactly where you want it on the page. The language
syntax is very similar to c++, so experience in that language will
give you a good jump-start. Here's sample code that - when processed
with Asymptote - will create a pdf of your list.
Good luck and I hope this isn't considered off-topic.
James
real wPage = 8.5; // paper width
real hPage = 11.0; // paper height
real border = 0.5; // paper margin
real wGap = 0.5; // gap between columns
real wText = wPage - 2 * border; // printable width
real hText = hPage - 2 * border; // printable height
real wColumn = (wText - wGap) / 2.0; // width of a each column
real wQuantity = 0.35; // width of the quantity box
real wPrice = 0.7; // width of the price box
real wItem = wColumn - wQuantity - wPrice; // width of the item name
box
int rowsPerColumn = 25;
real hItem = hText / rowsPerColumn; // height of each row
// Fill a rectangle of the desired page size with the
// coordinate system origin at the bottom left corner
// of the printable area.
fill(shift(-border,-border)*scale(wPage,hPage)*unitsquare, white);
struct Item // Item structure, an Item consists of a product/price
pair
{
string name;
real price;
void operator init(string name, real price)
{
this.name=name;
this.price=price;
}
}
Item[] items; // the items array will contain all the products/prices
// Fill items array. Note that Asymptote has functions for reading
// data from a file as well.
items.push(Item("Blue suede shoes" ,27.00));
items.push(Item("Banana (bruised)" , 0.23));
items.push(Item("Cheese (stinky 200g)", 3.34));
items.append(items); // double array size to 6 entries
items.append(items); // 12 entries
items.append(items); // 24 entries
items.append(items); // 48 entries
items.append(items); // 96 entries
for (int i = 0; i < items.length; ++i) // loop thru items
{
// add a page break if necessary
if (i > 0 && i % (2 * rowsPerColumn) == 0) { newpage(); }
// calculate the (x,y) page position for this item
pair position = ((((int) (i / rowsPerColumn)) % 2) * (wColumn +
wGap),
hText - hItem / 2.0 - hItem * (i % rowsPerColumn));
// draw boxes for this item
draw(shift(position)*scale(wColumn,hItem)*
shift(0,-0.5)*unitsquare);
draw(shift(position+(wQuantity,0))*scale(wItem,hItem)*
shift(0,-0.5)*unitsquare);
// typeset the item name
label(baseline(items[i].name), position+(wQuantity,0), E);
// typeset the price with dollar sign or cent sign
if (items[i].price > 0.99)
{
label(baseline(format("\$%#.2f",
items[i].price)+"\phantom{\textcent}"),
position+(wColumn,0), W);
}
else
{
label(baseline(string(items[i].price*100)+"\textcent"),
position+(wColumn,0), W);
}