- if (params.use_geometry
- && params.papersize2 == BufferParams::VM_PAPER_CUSTOM
- && !lyxrc.print_paper_dimension_flag.empty()
- && !params.paperwidth.empty()
- && !params.paperheight.empty()) {
- // using a custom papersize
- command += lyxrc.print_paper_dimension_flag + ' ';
- command += params.paperwidth + ',';
- command += params.paperheight + ' ';
- } else if (!lyxrc.print_paper_flag.empty()
- && (real_papersize != BufferParams::PAPER_USLETTER
- || params.orientation
- == BufferParams::ORIENTATION_PORTRAIT)) {
- // There's a problem with US Letter + landscape
- string paper;
- switch (real_papersize) {
- case BufferParams::PAPER_USLETTER:
- paper = "letter";
- break;
- case BufferParams::PAPER_A3PAPER:
- paper = "a3";
- break;
- case BufferParams::PAPER_A4PAPER:
- paper = "a4";
- break;
- case BufferParams::PAPER_A5PAPER:
- paper = "a5";
- break;
- case BufferParams::PAPER_B5PAPER:
- paper = "b5";
- break;
- case BufferParams::PAPER_EXECUTIVEPAPER:
- paper = "foolscap";
- break;
- case BufferParams::PAPER_LEGALPAPER:
- paper = "legal";
- break;
- default: /* If nothing else fits, keep empty value */
- break;
- }
- if (!paper.empty()) {
- command += lyxrc.print_paper_flag + ' ';
- command += paper + ' ';
- }
- }