В ЛАТЕКСЕ, там способ поместить плавание автоматически после, где на него сначала ссылаются?

Вы передаете доску новому экземпляру пешки.

class Pawn
  attr_reader :board, :location_x, :location_y

  def initialize(board)
    @board = board
    @location_x = nil
    @location_y = nil
  end

  def move(x, y)
    if board.get(x, y).nil?
      board.set(location_x, location_y, nil)
      self.location_x = x
      self.location_y = y
      board.set(x, y, self)
    else
      false
    end
  end
end

> board = Board.new
> pawn = Pawn.new(board)
> pawn.move(0,0)
> board.get(0,0) == pawn
=> true
17
задан Community 23 May 2017 в 12:23
поделиться

1 ответ

ЛАТЕКСНЫЙ Компаньон говорит, что flafter пакет может использоваться, чтобы гарантировать, что плавания никогда не помещаются перед их ссылками. Для использования этого добавьте следующее к преамбуле документа:

\usepackage{flafter}

Примечание, что, согласно этот поток , что flafter делает, гарантирует, что плавание никогда не появляется перед его положением в ЛАТЕКСНОМ исходном коде.

Это может работать хорошо, если Ваш документ только имеет несколько плаваний. Для документов с большим количеством плаваний размещение становится намного более трудным, и можно найти, что все плавания появляются вместе в конце документа или главы, или можно принять "Слишком многих необработанная floats” ошибка. Я предлагаю читать эта страница и эта страница в британском TEX FAQ для большего количества предложений.

20
ответ дан 30 November 2019 в 13:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: