| /* |
| * Licensed to the Apache Software Foundation (ASF) under one or more |
| * contributor license agreements. See the NOTICE file distributed with |
| * this work for additional information regarding copyright ownership. |
| * The ASF licenses this file to You under the Apache License, Version 2.0 |
| * (the "License"); you may not use this file except in compliance with |
| * the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| /* $Id$ */ |
| |
| package org.apache.fop.render.pdf; |
| |
| import java.util.Map; |
| |
| import org.apache.xmlgraphics.util.MimeConstants; |
| |
| import org.apache.fop.apps.FOUserAgent; |
| import org.apache.fop.fonts.FontInfo; |
| import org.apache.fop.pdf.PDFArray; |
| import org.apache.fop.pdf.PDFPage; |
| import org.apache.fop.pdf.PDFStructElem; |
| import org.apache.fop.render.AbstractRenderingContext; |
| import org.apache.fop.render.pdf.PDFLogicalStructureHandler.MarkedContentInfo; |
| |
| /** |
| * Rendering context for PDF production. |
| */ |
| public class PDFRenderingContext extends AbstractRenderingContext { |
| |
| private PDFContentGenerator generator; |
| private FontInfo fontInfo; |
| private PDFPage page; |
| private MarkedContentInfo mci; |
| private Map<Integer, PDFArray> pageNumbers; |
| private PDFLogicalStructureHandler pdfLogicalStructureHandler; |
| private PDFStructElem currentSessionStructElem; |
| |
| /** |
| * Main constructor. |
| * @param userAgent the user agent |
| * @param generator the PDF content generator |
| * @param page the current PDF page |
| * @param fontInfo the font list |
| */ |
| public PDFRenderingContext(FOUserAgent userAgent, |
| PDFContentGenerator generator, PDFPage page, FontInfo fontInfo) { |
| super(userAgent); |
| this.generator = generator; |
| this.page = page; |
| this.fontInfo = fontInfo; |
| } |
| |
| /** {@inheritDoc} */ |
| public String getMimeType() { |
| return MimeConstants.MIME_PDF; |
| } |
| |
| /** |
| * Returns the PDF content generator. |
| * @return the PDF content generator |
| */ |
| public PDFContentGenerator getGenerator() { |
| return this.generator; |
| } |
| |
| /** |
| * Returns the current PDF page. |
| * @return the PDF page |
| */ |
| public PDFPage getPage() { |
| return this.page; |
| } |
| |
| /** |
| * Returns the font list. |
| * @return the font list |
| */ |
| public FontInfo getFontInfo() { |
| return this.fontInfo; |
| } |
| |
| void setMarkedContentInfo(MarkedContentInfo mci) { |
| this.mci = mci; |
| } |
| |
| MarkedContentInfo getMarkedContentInfo() { |
| return mci; |
| } |
| |
| public Map<Integer, PDFArray> getPageNumbers() { |
| return pageNumbers; |
| } |
| |
| public void setPageNumbers(Map<Integer, PDFArray> pageNumbers) { |
| this.pageNumbers = pageNumbers; |
| } |
| |
| public PDFLogicalStructureHandler getPdfLogicalStructureHandler() { |
| return pdfLogicalStructureHandler; |
| } |
| |
| public void setPdfLogicalStructureHandler(PDFLogicalStructureHandler pdfLogicalStructureHandler) { |
| this.pdfLogicalStructureHandler = pdfLogicalStructureHandler; |
| } |
| |
| public PDFStructElem getCurrentSessionStructElem() { |
| return currentSessionStructElem; |
| } |
| |
| public void setCurrentSessionStructElem(PDFStructElem currentSessionStructElem) { |
| this.currentSessionStructElem = currentSessionStructElem; |
| } |
| } |