All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.daisy.dotify.api.formatter.TransitionBuilder Maven / Gradle / Ivy

There is a newer version: 1.0.7
Show newest version
package org.daisy.dotify.api.formatter;

/**
 * 

Provides a definition for volume transitions. A volume transition * indicates that the rows on the last page or sheet of the volume * may be moved in order to avoid breaking the volume inside a sentence or * a paragraph.

* *

When volume transition processing is activated, an implementation * should break between paragraphs and, only if that's not possible, * between sentences.

* *

Content added to the {@link BlockContentBuilder}s * returned by the methods of this interface should be inserted * when the text transitions from one volume to the next if and * only if the page layout is affected by a particular * volume transition. If the page layout is not affected, template * contents should not be inserted. For example, if the volume * transition takes place between two sequences.

* *

Volume transition processing is deactivated by default. To activate, * set the {@link TransitionBuilderProperties.ApplicationRange} using the method * {@link #setProperties(TransitionBuilderProperties)}.

* * @author Joel Håkansson */ public interface TransitionBuilder { /** * Gets the properties for this transition builder. * * @return returns the properties */ public TransitionBuilderProperties getProperties(); /** * Sets the properties for this transition builder. * * @param props the properties */ public void setProperties(TransitionBuilderProperties props); /** * Gets the builder for contents to add when a block is resumed after * a volume break. * * @return returns a builder for content. */ public BlockContentBuilder getBlockResumedBuilder(); /** * Gets the builder for contents to add when a block is interrupted * before a volume break. * * @return returns a builder for content. */ public BlockContentBuilder getBlockInterruptedBuilder(); /** * Gets the builder for contents to add when a sequence is resumed * after a volume break. * * @return returns a builder for content. */ public BlockBuilder getSequenceResumedBuilder(); /** * Gets the builder for contents to add when a sequence is * interrupted before a volume break. * * @return returns a builder for content. */ public BlockBuilder getSequenceInterruptedBuilder(); /** * Gets the builder for contents to add whenever a volume is resumed * after a volume break. This is added before any other transition * (if applicable). * * @return returns a builder for content. */ public BlockBuilder getAnyResumedBuilder(); /** * Gets the builder for contents to add whenever a volume is * interrupted before a volume break. This is added after any other * transition (if applicable). * * @return returns a builder for content. */ public BlockBuilder getAnyInterruptedBuilder(); }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy