Bo Peng wrote:

>> Look at the Converters section in the Edit->Preferences dialog.
>>
>> Alternatively, run lyx from the command line as
>>    lyx -dbg all -export pdf > lyx.log
>> and wade through the messages.

> I see, as I suspected, lyx calls
> 
> dvips -t letter -o poster.ps poster.dvi
> 
> This "-t letter" is causing the problem, but it is not in
> Edit->Preference->Converters->dvi to ps.
> 
> How can I get rid of this option? Maybe the standard layout file set
> this?

It looks like the option is hard-coded:

bool Converters::convert(Buffer const * buffer,
        string const & from_file, string const & to_file_base,
        string const & from_format, string const & to_format,
        string & to_file, bool try_default)
{
  ...
  if (conv.from == "dvi" && conv.to == "ps")
    command = add_options(command, buffer->params().dvips_options());
  ...

}

string const BufferParams::dvips_options() const
{
  string result;

  if (use_geometry
      && papersize == PAPER_CUSTOM
      && !lyxrc.print_paper_dimension_flag.empty()
      && !paperwidth.empty()
      && !paperheight.empty()) {
    // using a custom papersize
    result = lyxrc.print_paper_dimension_flag;
    result += ' ' + paperwidth;
    result += ',' + paperheight;
  } else {
    string const paper_option = paperSizeName();
    if (paper_option != "letter" ||
        orientation != ORIENTATION_LANDSCAPE) {
      // dvips won't accept -t letter -t landscape.
      // In all other cases, include the paper size
      // explicitly.
      result = lyxrc.print_paper_flag;
      result += ' ' + paper_option;
    }
  }
  if (orientation == ORIENTATION_LANDSCAPE &&
      papersize != PAPER_CUSTOM)
    result += ' ' + lyxrc.print_landscape_flag;
  return result;
}

The solution? I guess you should write your own "my_dvips.py"
converter to filter this noise out then invoke dvips.

You might want to see whether there's a bug report on bugzilla about
this and, if not, file one.

Angus


Reply via email to