You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. /*
  2. * $Id$
  3. * Copyright (C) 2001 The Apache Software Foundation. All rights reserved.
  4. * For details on use and redistribution please refer to the
  5. * LICENSE file included with these sources.
  6. */
  7. package org.apache.fop.render;
  8. // FOP
  9. import org.apache.fop.image.ImageArea;
  10. import org.apache.fop.apps.FOPException;
  11. import org.apache.fop.area.*;
  12. import org.apache.fop.area.inline.*;
  13. import org.apache.fop.layout.FontInfo;
  14. import org.apache.fop.fo.FOUserAgent;
  15. import org.apache.log.Logger;
  16. // Java
  17. import java.io.OutputStream;
  18. import java.io.IOException;
  19. import java.util.HashMap;
  20. /**
  21. * Interface implemented by all renderers.
  22. * This interface is used to control the rendering of pages
  23. * and to let block and inline level areas call the appropriate
  24. * method to render themselves
  25. *
  26. * a Renderer implementation takes areas/spaces and produces output in
  27. * some format.
  28. */
  29. public interface Renderer {
  30. public void startRenderer(OutputStream outputStream)
  31. throws IOException;
  32. public void stopRenderer()
  33. throws IOException;
  34. /**
  35. * Set the logger
  36. */
  37. public void setLogger(Logger logger);
  38. /**
  39. * Set the User Agent
  40. */
  41. public void setUserAgent(FOUserAgent agent);
  42. /**
  43. * set up the given FontInfo
  44. */
  45. public void setupFontInfo(FontInfo fontInfo);
  46. /**
  47. * set up renderer options
  48. */
  49. public void setOptions(HashMap options);
  50. /**
  51. * set the producer of the rendering
  52. */
  53. public void setProducer(String producer);
  54. public void startPageSequence(Title seqTitle);
  55. public void renderPage(PageViewport page)
  56. throws IOException, FOPException;
  57. public void renderContainer(Container cont);
  58. /*
  59. public void renderInlineViewport(org.apache.fop.area.inline.Viewport view);
  60. public void renderWord(Word area);
  61. */
  62. public void renderCharacter(org.apache.fop.area.inline.Character ch);
  63. public void renderInlineSpace(Space space);
  64. /*
  65. public void renderForeignObject(ForeignObject area);
  66. public void renderImage(Image area);
  67. public void renderLeader(Leader area);
  68. */
  69. }