Initial Commit
This commit is contained in:
87
iTechSharp/iTextSharp/text/pdf/interfaces/IPdfAnnotations.cs
Normal file
87
iTechSharp/iTextSharp/text/pdf/interfaces/IPdfAnnotations.cs
Normal file
@@ -0,0 +1,87 @@
|
||||
using System;
|
||||
using iTextSharp.text.pdf;
|
||||
/*
|
||||
* $Id: IPdfAnnotations.cs,v 1.1 2007/02/09 15:34:40 psoares33 Exp $
|
||||
*
|
||||
* Copyright 2006 Bruno Lowagie
|
||||
*
|
||||
* The contents of this file are subject to the Mozilla Public License Version 1.1
|
||||
* (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.mozilla.org/MPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS IS" basis,
|
||||
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
||||
* for the specific language governing rights and limitations under the License.
|
||||
*
|
||||
* The Original Code is 'iText, a free JAVA-PDF library'.
|
||||
*
|
||||
* The Initial Developer of the Original Code is Bruno Lowagie. Portions created by
|
||||
* the Initial Developer are Copyright (C) 1999, 2000, 2001, 2002 by Bruno Lowagie.
|
||||
* All Rights Reserved.
|
||||
* Co-Developer of the code is Paulo Soares. Portions created by the Co-Developer
|
||||
* are Copyright (C) 2000, 2001, 2002 by Paulo Soares. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s): all the names of the contributors are added in the source code
|
||||
* where applicable.
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of the
|
||||
* LGPL license (the "GNU LIBRARY GENERAL PUBLIC LICENSE"), in which case the
|
||||
* provisions of LGPL are applicable instead of those above. If you wish to
|
||||
* allow use of your version of this file only under the terms of the LGPL
|
||||
* License and not to allow others to use your version of this file under
|
||||
* the MPL, indicate your decision by deleting the provisions above and
|
||||
* replace them with the notice and other provisions required by the LGPL.
|
||||
* If you do not delete the provisions above, a recipient may use your version
|
||||
* of this file under either the MPL or the GNU LIBRARY GENERAL PUBLIC LICENSE.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the MPL as stated above or under the terms of the GNU
|
||||
* Library General Public License as published by the Free Software Foundation;
|
||||
* either version 2 of the License, or any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||
* FOR A PARTICULAR PURPOSE. See the GNU Library general Public License for more
|
||||
* details.
|
||||
*
|
||||
* If you didn't download this code from the following link, you should check if
|
||||
* you aren't using an obsolete version:
|
||||
* http://www.lowagie.com/iText/
|
||||
*/
|
||||
|
||||
namespace iTextSharp.text.pdf.interfaces {
|
||||
|
||||
public interface IPdfAnnotations {
|
||||
/**
|
||||
* Use this methods to get the AcroForm object.
|
||||
* Use this method only if you know what you're doing
|
||||
* @return the PdfAcroform object of the PdfDocument
|
||||
*/
|
||||
PdfAcroForm AcroForm {
|
||||
get;
|
||||
}
|
||||
|
||||
/**
|
||||
* Use this methods to add a <CODE>PdfAnnotation</CODE> or a <CODE>PdfFormField</CODE>
|
||||
* to the document. Only the top parent of a <CODE>PdfFormField</CODE>
|
||||
* needs to be added.
|
||||
* @param annot the <CODE>PdfAnnotation</CODE> or the <CODE>PdfFormField</CODE> to add
|
||||
*/
|
||||
void AddAnnotation(PdfAnnotation annot);
|
||||
|
||||
/**
|
||||
* Use this method to adds the <CODE>PdfAnnotation</CODE>
|
||||
* to the calculation order array.
|
||||
* @param annot the <CODE>PdfAnnotation</CODE> to be added
|
||||
*/
|
||||
void AddCalculationOrder(PdfFormField annot);
|
||||
|
||||
/**
|
||||
* Use this method to set the signature flags.
|
||||
* @param f the flags. This flags are ORed with current ones
|
||||
*/
|
||||
int SigFlags {
|
||||
set;
|
||||
}
|
||||
}
|
||||
}
|
@@ -0,0 +1,87 @@
|
||||
using System;
|
||||
using iTextSharp.text.pdf;
|
||||
/*
|
||||
* $Id: IPdfDocumentActions.cs,v 1.1 2007/02/09 15:34:40 psoares33 Exp $
|
||||
*
|
||||
* Copyright 2006 Bruno Lowagie
|
||||
*
|
||||
* The contents of this file are subject to the Mozilla Public License Version 1.1
|
||||
* (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.mozilla.org/MPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS IS" basis,
|
||||
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
||||
* for the specific language governing rights and limitations under the License.
|
||||
*
|
||||
* The Original Code is 'iText, a free JAVA-PDF library'.
|
||||
*
|
||||
* The Initial Developer of the Original Code is Bruno Lowagie. Portions created by
|
||||
* the Initial Developer are Copyright (C) 1999, 2000, 2001, 2002 by Bruno Lowagie.
|
||||
* All Rights Reserved.
|
||||
* Co-Developer of the code is Paulo Soares. Portions created by the Co-Developer
|
||||
* are Copyright (C) 2000, 2001, 2002 by Paulo Soares. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s): all the names of the contributors are added in the source code
|
||||
* where applicable.
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of the
|
||||
* LGPL license (the "GNU LIBRARY GENERAL PUBLIC LICENSE"), in which case the
|
||||
* provisions of LGPL are applicable instead of those above. If you wish to
|
||||
* allow use of your version of this file only under the terms of the LGPL
|
||||
* License and not to allow others to use your version of this file under
|
||||
* the MPL, indicate your decision by deleting the provisions above and
|
||||
* replace them with the notice and other provisions required by the LGPL.
|
||||
* If you do not delete the provisions above, a recipient may use your version
|
||||
* of this file under either the MPL or the GNU LIBRARY GENERAL PUBLIC LICENSE.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the MPL as stated above or under the terms of the GNU
|
||||
* Library General Public License as published by the Free Software Foundation;
|
||||
* either version 2 of the License, or any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||
* FOR A PARTICULAR PURPOSE. See the GNU Library general Public License for more
|
||||
* details.
|
||||
*
|
||||
* If you didn't download this code from the following link, you should check if
|
||||
* you aren't using an obsolete version:
|
||||
* http://www.lowagie.com/iText/
|
||||
*/
|
||||
|
||||
namespace iTextSharp.text.pdf.interfaces {
|
||||
|
||||
/**
|
||||
* A PDF document can have an open action and other additional actions.
|
||||
*/
|
||||
|
||||
public interface IPdfDocumentActions {
|
||||
/**
|
||||
* When the document opens it will jump to the destination with
|
||||
* this name.
|
||||
* @param name the name of the destination to jump to
|
||||
*/
|
||||
void SetOpenAction(String name);
|
||||
|
||||
/**
|
||||
* When the document opens this <CODE>action</CODE> will be
|
||||
* invoked.
|
||||
* @param action the action to be invoked
|
||||
*/
|
||||
void SetOpenAction(PdfAction action);
|
||||
|
||||
/**
|
||||
* Additional-actions defining the actions to be taken in
|
||||
* response to various trigger events affecting the document
|
||||
* as a whole. The actions types allowed are: <CODE>DOCUMENT_CLOSE</CODE>,
|
||||
* <CODE>WILL_SAVE</CODE>, <CODE>DID_SAVE</CODE>, <CODE>WILL_PRINT</CODE>
|
||||
* and <CODE>DID_PRINT</CODE>.
|
||||
*
|
||||
* @param actionType the action type
|
||||
* @param action the action to execute in response to the trigger
|
||||
* @throws DocumentException on invalid action type
|
||||
*/
|
||||
void SetAdditionalAction(PdfName actionType, PdfAction action);
|
||||
|
||||
}
|
||||
}
|
@@ -0,0 +1,96 @@
|
||||
using System;
|
||||
using Org.BouncyCastle.X509;
|
||||
/*
|
||||
* $Id: IPdfEncryptionSettings.cs,v 1.2 2007/04/29 13:57:00 psoares33 Exp $
|
||||
*
|
||||
* Copyright 2006 Bruno Lowagie
|
||||
*
|
||||
* The contents of this file are subject to the Mozilla Public License Version 1.1
|
||||
* (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.mozilla.org/MPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS IS" basis,
|
||||
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
||||
* for the specific language governing rights and limitations under the License.
|
||||
*
|
||||
* The Original Code is 'iText, a free JAVA-PDF library'.
|
||||
*
|
||||
* The Initial Developer of the Original Code is Bruno Lowagie. Portions created by
|
||||
* the Initial Developer are Copyright (C) 1999, 2000, 2001, 2002 by Bruno Lowagie.
|
||||
* All Rights Reserved.
|
||||
* Co-Developer of the code is Paulo Soares. Portions created by the Co-Developer
|
||||
* are Copyright (C) 2000, 2001, 2002 by Paulo Soares. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s): all the names of the contributors are added in the source code
|
||||
* where applicable.
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of the
|
||||
* LGPL license (the "GNU LIBRARY GENERAL PUBLIC LICENSE"), in which case the
|
||||
* provisions of LGPL are applicable instead of those above. If you wish to
|
||||
* allow use of your version of this file only under the terms of the LGPL
|
||||
* License and not to allow others to use your version of this file under
|
||||
* the MPL, indicate your decision by deleting the provisions above and
|
||||
* replace them with the notice and other provisions required by the LGPL.
|
||||
* If you do not delete the provisions above, a recipient may use your version
|
||||
* of this file under either the MPL or the GNU LIBRARY GENERAL PUBLIC LICENSE.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the MPL as stated above or under the terms of the GNU
|
||||
* Library General Public License as published by the Free Software Foundation;
|
||||
* either version 2 of the License, or any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||
* FOR A PARTICULAR PURPOSE. See the GNU Library general Public License for more
|
||||
* details.
|
||||
*
|
||||
* If you didn't download this code from the following link, you should check if
|
||||
* you aren't using an obsolete version:
|
||||
* http://www.lowagie.com/iText/
|
||||
*/
|
||||
|
||||
namespace iTextSharp.text.pdf.interfaces {
|
||||
|
||||
/**
|
||||
* Encryption settings are described in section 3.5 (more specifically
|
||||
* section 3.5.2) of the PDF Reference 1.7.
|
||||
* They are explained in section 3.3.3 of the book 'iText in Action'.
|
||||
* The values of the different preferences were originally stored
|
||||
* in class PdfWriter, but they have been moved to this separate interface
|
||||
* for reasons of convenience.
|
||||
*/
|
||||
|
||||
public interface IPdfEncryptionSettings {
|
||||
|
||||
/**
|
||||
* Sets the encryption options for this document. The userPassword and the
|
||||
* ownerPassword can be null or have zero length. In this case the ownerPassword
|
||||
* is replaced by a random string. The open permissions for the document can be
|
||||
* AllowPrinting, AllowModifyContents, AllowCopy, AllowModifyAnnotations,
|
||||
* AllowFillIn, AllowScreenReaders, AllowAssembly and AllowDegradedPrinting.
|
||||
* The permissions can be combined by ORing them.
|
||||
* @param userPassword the user password. Can be null or empty
|
||||
* @param ownerPassword the owner password. Can be null or empty
|
||||
* @param permissions the user permissions
|
||||
* @param encryptionType the type of encryption. It can be one of STANDARD_ENCRYPTION_40, STANDARD_ENCRYPTION_128 or ENCRYPTION_AES128.
|
||||
* Optionally DO_NOT_ENCRYPT_METADATA can be ored to output the metadata in cleartext
|
||||
* @throws DocumentException if the document is already open
|
||||
*/
|
||||
void SetEncryption(byte[] userPassword, byte[] ownerPassword, int permissions, int encryptionType);
|
||||
|
||||
/**
|
||||
* Sets the certificate encryption options for this document. An array of one or more public certificates
|
||||
* must be provided together with an array of the same size for the permissions for each certificate.
|
||||
* The open permissions for the document can be
|
||||
* AllowPrinting, AllowModifyContents, AllowCopy, AllowModifyAnnotations,
|
||||
* AllowFillIn, AllowScreenReaders, AllowAssembly and AllowDegradedPrinting.
|
||||
* The permissions can be combined by ORing them.
|
||||
* Optionally DO_NOT_ENCRYPT_METADATA can be ored to output the metadata in cleartext
|
||||
* @param certs the public certificates to be used for the encryption
|
||||
* @param permissions the user permissions for each of the certicates
|
||||
* @param encryptionType the type of encryption. It can be one of STANDARD_ENCRYPTION_40, STANDARD_ENCRYPTION_128 or ENCRYPTION_AES128.
|
||||
* @throws DocumentException if the document is already open
|
||||
*/
|
||||
void SetEncryption(X509Certificate[] certs, int[] permissions, int encryptionType);
|
||||
}
|
||||
}
|
85
iTechSharp/iTextSharp/text/pdf/interfaces/IPdfPageActions.cs
Normal file
85
iTechSharp/iTextSharp/text/pdf/interfaces/IPdfPageActions.cs
Normal file
@@ -0,0 +1,85 @@
|
||||
using System;
|
||||
using iTextSharp.text;
|
||||
using iTextSharp.text.pdf;
|
||||
/*
|
||||
* $Id: IPdfPageActions.cs,v 1.1 2007/02/09 15:34:40 psoares33 Exp $
|
||||
*
|
||||
* Copyright 2006 Bruno Lowagie
|
||||
*
|
||||
* The contents of this file are subject to the Mozilla Public License Version 1.1
|
||||
* (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.mozilla.org/MPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS IS" basis,
|
||||
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
||||
* for the specific language governing rights and limitations under the License.
|
||||
*
|
||||
* The Original Code is 'iText, a free JAVA-PDF library'.
|
||||
*
|
||||
* The Initial Developer of the Original Code is Bruno Lowagie. Portions created by
|
||||
* the Initial Developer are Copyright (C) 1999, 2000, 2001, 2002 by Bruno Lowagie.
|
||||
* All Rights Reserved.
|
||||
* Co-Developer of the code is Paulo Soares. Portions created by the Co-Developer
|
||||
* are Copyright (C) 2000, 2001, 2002 by Paulo Soares. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s): all the names of the contributors are added in the source code
|
||||
* where applicable.
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of the
|
||||
* LGPL license (the "GNU LIBRARY GENERAL PUBLIC LICENSE"), in which case the
|
||||
* provisions of LGPL are applicable instead of those above. If you wish to
|
||||
* allow use of your version of this file only under the terms of the LGPL
|
||||
* License and not to allow others to use your version of this file under
|
||||
* the MPL, indicate your decision by deleting the provisions above and
|
||||
* replace them with the notice and other provisions required by the LGPL.
|
||||
* If you do not delete the provisions above, a recipient may use your version
|
||||
* of this file under either the MPL or the GNU LIBRARY GENERAL PUBLIC LICENSE.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the MPL as stated above or under the terms of the GNU
|
||||
* Library General Public License as published by the Free Software Foundation;
|
||||
* either version 2 of the License, or any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||
* FOR A PARTICULAR PURPOSE. See the GNU Library general Public License for more
|
||||
* details.
|
||||
*
|
||||
* If you didn't download this code from the following link, you should check if
|
||||
* you aren't using an obsolete version:
|
||||
* http://www.lowagie.com/iText/
|
||||
*/
|
||||
|
||||
namespace iTextSharp.text.pdf.interfaces {
|
||||
|
||||
/**
|
||||
* A PDF page can have an open and/or close action.
|
||||
*/
|
||||
|
||||
public interface IPdfPageActions {
|
||||
/**
|
||||
* Sets the open and close page additional action.
|
||||
* @param actionType the action type. It can be <CODE>PdfWriter.PAGE_OPEN</CODE>
|
||||
* or <CODE>PdfWriter.PAGE_CLOSE</CODE>
|
||||
* @param action the action to perform
|
||||
* @throws DocumentException if the action type is invalid
|
||||
*/
|
||||
void SetPageAction(PdfName actionType, PdfAction action);
|
||||
|
||||
/**
|
||||
* Sets the display duration for the page (for presentations)
|
||||
* @param seconds the number of seconds to display the page
|
||||
*/
|
||||
int Duration {
|
||||
set;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the transition for the page
|
||||
* @param transition the Transition object
|
||||
*/
|
||||
PdfTransition Transition {
|
||||
set;
|
||||
}
|
||||
}
|
||||
}
|
@@ -0,0 +1,63 @@
|
||||
using System;
|
||||
/*
|
||||
* $Id: IPdfRunDirection.cs,v 1.1 2007/02/09 15:34:40 psoares33 Exp $
|
||||
*
|
||||
* Copyright 2006 Bruno Lowagie
|
||||
*
|
||||
* The contents of this file are subject to the Mozilla Public License Version 1.1
|
||||
* (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.mozilla.org/MPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS IS" basis,
|
||||
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
||||
* for the specific language governing rights and limitations under the License.
|
||||
*
|
||||
* The Original Code is 'iText, a free JAVA-PDF library'.
|
||||
*
|
||||
* The Initial Developer of the Original Code is Bruno Lowagie. Portions created by
|
||||
* the Initial Developer are Copyright (C) 1999, 2000, 2001, 2002 by Bruno Lowagie.
|
||||
* All Rights Reserved.
|
||||
* Co-Developer of the code is Paulo Soares. Portions created by the Co-Developer
|
||||
* are Copyright (C) 2000, 2001, 2002 by Paulo Soares. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s): all the names of the contributors are added in the source code
|
||||
* where applicable.
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of the
|
||||
* LGPL license (the "GNU LIBRARY GENERAL PUBLIC LICENSE"), in which case the
|
||||
* provisions of LGPL are applicable instead of those above. If you wish to
|
||||
* allow use of your version of this file only under the terms of the LGPL
|
||||
* License and not to allow others to use your version of this file under
|
||||
* the MPL, indicate your decision by deleting the provisions above and
|
||||
* replace them with the notice and other provisions required by the LGPL.
|
||||
* If you do not delete the provisions above, a recipient may use your version
|
||||
* of this file under either the MPL or the GNU LIBRARY GENERAL PUBLIC LICENSE.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the MPL as stated above or under the terms of the GNU
|
||||
* Library General Public License as published by the Free Software Foundation;
|
||||
* either version 2 of the License, or any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||
* FOR A PARTICULAR PURPOSE. See the GNU Library general Public License for more
|
||||
* details.
|
||||
*
|
||||
* If you didn't download this code from the following link, you should check if
|
||||
* you aren't using an obsolete version:
|
||||
* http://www.lowagie.com/iText/
|
||||
*/
|
||||
|
||||
namespace iTextSharp.text.pdf.interfaces {
|
||||
|
||||
public interface IPdfRunDirection {
|
||||
/** Sets the run direction. This is only used as a placeholder
|
||||
* as it does not affect anything.
|
||||
* @param runDirection the run direction
|
||||
*/
|
||||
int RunDirection {
|
||||
set;
|
||||
get;
|
||||
}
|
||||
}
|
||||
}
|
94
iTechSharp/iTextSharp/text/pdf/interfaces/IPdfVersion.cs
Normal file
94
iTechSharp/iTextSharp/text/pdf/interfaces/IPdfVersion.cs
Normal file
@@ -0,0 +1,94 @@
|
||||
using System;
|
||||
using iTextSharp.text;
|
||||
using iTextSharp.text.pdf;
|
||||
/*
|
||||
* $Id: IPdfVersion.cs,v 1.1 2007/02/09 15:34:40 psoares33 Exp $
|
||||
*
|
||||
* Copyright 2006 Bruno Lowagie
|
||||
*
|
||||
* The contents of this file are subject to the Mozilla Public License Version 1.1
|
||||
* (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.mozilla.org/MPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS IS" basis,
|
||||
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
||||
* for the specific language governing rights and limitations under the License.
|
||||
*
|
||||
* The Original Code is 'iText, a free JAVA-PDF library'.
|
||||
*
|
||||
* The Initial Developer of the Original Code is Bruno Lowagie. Portions created by
|
||||
* the Initial Developer are Copyright (C) 1999, 2000, 2001, 2002 by Bruno Lowagie.
|
||||
* All Rights Reserved.
|
||||
* Co-Developer of the code is Paulo Soares. Portions created by the Co-Developer
|
||||
* are Copyright (C) 2000, 2001, 2002 by Paulo Soares. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s): all the names of the contributors are added in the source code
|
||||
* where applicable.
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of the
|
||||
* LGPL license (the "GNU LIBRARY GENERAL PUBLIC LICENSE"), in which case the
|
||||
* provisions of LGPL are applicable instead of those above. If you wish to
|
||||
* allow use of your version of this file only under the terms of the LGPL
|
||||
* License and not to allow others to use your version of this file under
|
||||
* the MPL, indicate your decision by deleting the provisions above and
|
||||
* replace them with the notice and other provisions required by the LGPL.
|
||||
* If you do not delete the provisions above, a recipient may use your version
|
||||
* of this file under either the MPL or the GNU LIBRARY GENERAL PUBLIC LICENSE.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the MPL as stated above or under the terms of the GNU
|
||||
* Library General Public License as published by the Free Software Foundation;
|
||||
* either version 2 of the License, or any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||
* FOR A PARTICULAR PURPOSE. See the GNU Library general Public License for more
|
||||
* details.
|
||||
*
|
||||
* If you didn't download this code from the following link, you should check if
|
||||
* you aren't using an obsolete version:
|
||||
* http://www.lowagie.com/iText/
|
||||
*/
|
||||
|
||||
namespace iTextSharp.text.pdf.interfaces {
|
||||
|
||||
/**
|
||||
* The PDF version is described in the PDF Reference 1.7 p92
|
||||
* (about the PDF Header) and page 139 (the version entry in
|
||||
* the Catalog). You'll also find info about setting the version
|
||||
* in the book 'iText in Action' sections 2.1.3 (PDF Header)
|
||||
* and 3.3 (Version history).
|
||||
*/
|
||||
|
||||
public interface IPdfVersion {
|
||||
|
||||
/**
|
||||
* If the PDF Header hasn't been written yet,
|
||||
* this changes the version as it will appear in the PDF Header.
|
||||
* If the PDF header was already written to the Stream,
|
||||
* this changes the version as it will appear in the Catalog.
|
||||
* @param version a character representing the PDF version
|
||||
*/
|
||||
char PdfVersion {
|
||||
set;
|
||||
}
|
||||
|
||||
/**
|
||||
* If the PDF Header hasn't been written yet,
|
||||
* this changes the version as it will appear in the PDF Header,
|
||||
* but only if param refers to a higher version.
|
||||
* If the PDF header was already written to the Stream,
|
||||
* this changes the version as it will appear in the Catalog.
|
||||
* @param version a character representing the PDF version
|
||||
*/
|
||||
void SetAtLeastPdfVersion(char version);
|
||||
/**
|
||||
* Sets the PDF version as it will appear in the Catalog.
|
||||
* Note that this only has effect if you use a later version
|
||||
* than the one that appears in the header; this method
|
||||
* ignores the parameter if you try to set a lower version.
|
||||
* @param version the PDF name that will be used for the Version key in the catalog
|
||||
*/
|
||||
void SetPdfVersion(PdfName version);
|
||||
}
|
||||
}
|
@@ -0,0 +1,202 @@
|
||||
using System;
|
||||
using iTextSharp.text.pdf;
|
||||
/*
|
||||
* $Id: IPdfViewerPreferences.cs,v 1.3 2008/05/02 15:58:08 psoares33 Exp $
|
||||
*
|
||||
* Copyright 2006 Bruno Lowagie
|
||||
*
|
||||
* The contents of this file are subject to the Mozilla Public License Version 1.1
|
||||
* (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.mozilla.org/MPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS IS" basis,
|
||||
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
||||
* for the specific language governing rights and limitations under the License.
|
||||
*
|
||||
* The Original Code is 'iText, a free JAVA-PDF library'.
|
||||
*
|
||||
* The Initial Developer of the Original Code is Bruno Lowagie. Portions created by
|
||||
* the Initial Developer are Copyright (C) 1999, 2000, 2001, 2002 by Bruno Lowagie.
|
||||
* All Rights Reserved.
|
||||
* Co-Developer of the code is Paulo Soares. Portions created by the Co-Developer
|
||||
* are Copyright (C) 2000, 2001, 2002 by Paulo Soares. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s): all the names of the contributors are added in the source code
|
||||
* where applicable.
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of the
|
||||
* LGPL license (the "GNU LIBRARY GENERAL PUBLIC LICENSE"), in which case the
|
||||
* provisions of LGPL are applicable instead of those above. If you wish to
|
||||
* allow use of your version of this file only under the terms of the LGPL
|
||||
* License and not to allow others to use your version of this file under
|
||||
* the MPL, indicate your decision by deleting the provisions above and
|
||||
* replace them with the notice and other provisions required by the LGPL.
|
||||
* If you do not delete the provisions above, a recipient may use your version
|
||||
* of this file under either the MPL or the GNU LIBRARY GENERAL PUBLIC LICENSE.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the MPL as stated above or under the terms of the GNU
|
||||
* Library General Public License as published by the Free Software Foundation;
|
||||
* either version 2 of the License, or any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||
* FOR A PARTICULAR PURPOSE. See the GNU Library general Public License for more
|
||||
* details.
|
||||
*
|
||||
* If you didn't download this code from the following link, you should check if
|
||||
* you aren't using an obsolete version:
|
||||
* http://www.lowagie.com/iText/
|
||||
*/
|
||||
|
||||
namespace iTextSharp.text.pdf.interfaces {
|
||||
|
||||
/**
|
||||
* Viewer preferences are described in section 3.6.1 and 8.1 of the
|
||||
* PDF Reference 1.7 (Table 3.25 on p139-142 and Table 8.1 on p579-581).
|
||||
* They are explained in section 13.1 of the book 'iText in Action'.
|
||||
* The values of the different preferences were originally stored
|
||||
* in class PdfWriter, but they have been moved to this separate interface
|
||||
* for reasons of convenience.
|
||||
*/
|
||||
|
||||
public interface IPdfViewerPreferences {
|
||||
|
||||
/**
|
||||
* Sets the page layout and page mode preferences by ORing one or two of these constants.
|
||||
* <p>
|
||||
* <ul>
|
||||
* <li>The page layout to be used when the document is opened (choose one).
|
||||
* <ul>
|
||||
* <li><b>PAGE_LAYOUT_SINGLE_PAGE</b> - Display one page at a time. (default)
|
||||
* <li><b>PAGE_LAYOUT_ONE_COLUMN</b> - Display the pages in one column.
|
||||
* <li><b>PAGE_LAYOUT_TWO_COLUMN_LEFT</b> - Display the pages in two columns, with
|
||||
* oddnumbered pages on the left.
|
||||
* <li><b>PAGE_LAYOUT_TWO_COLUMN_RIGHT</b> - Display the pages in two columns, with
|
||||
* oddnumbered pages on the right.
|
||||
* <li><b>PAGE_LAYOUT_TWO_PAGE_LEFT</b> - Display the pages two at a time, with
|
||||
* oddnumbered pages on the left.
|
||||
* <li><b>PAGE_LAYOUT_TWO_PAGE_RIGHT</b> - Display the pages two at a time, with
|
||||
* oddnumbered pages on the right.
|
||||
* </ul>
|
||||
* <li>The page mode how the document should be displayed
|
||||
* when opened (choose one).
|
||||
* <ul>
|
||||
* <li><b>PAGE_MODE_USE_NONE</b> - Neither document outline nor thumbnail images visible. (default)
|
||||
* <li><b>PAGE_MODE_USE_OUTLINES</b> - Document outline visible.
|
||||
* <li><b>PAGE_MODE_USE_THUMBS</b> - Thumbnail images visible.
|
||||
* <li><b>PAGE_MODE_FULL_SCREEN</b> - Full-screen mode, with no menu bar, window
|
||||
* controls, or any other window visible.
|
||||
* <li><b>PAGE_MODE_USE_OC</b> - Optional content group panel visible
|
||||
* <li><b>PAGE_MODE_USE_ATTACHMENTS</b> - Attachments panel visible
|
||||
* </ul>
|
||||
* </ul>
|
||||
* For backward compatibility these values are also supported,
|
||||
* but it's better to use method <code>addViewerPreference(key, value)</code>
|
||||
* if you want to change the following preferences:
|
||||
* <ul>
|
||||
* <li><b>HIDE_TOOLBAR</b> - A flag specifying whether to hide the viewer application's tool
|
||||
* bars when the document is active.
|
||||
* <li><b>HIDE_MENUBAR</b> - A flag specifying whether to hide the viewer application's
|
||||
* menu bar when the document is active.
|
||||
* <li><b>HIDE_WINDOW_UI</b> - A flag specifying whether to hide user interface elements in
|
||||
* the document's window (such as scroll bars and navigation controls),
|
||||
* leaving only the document's contents displayed.
|
||||
* <li><b>FIT_WINDOW</b> - A flag specifying whether to resize the document's window to
|
||||
* fit the size of the first displayed page.
|
||||
* <li><b>CENTER_WINDOW</b> - A flag specifying whether to position the document's window
|
||||
* in the center of the screen.
|
||||
* <li><b>DISPLAY_DOC_TITLE</b> - A flag specifying whether to display the document's title
|
||||
* in the top bar.
|
||||
* <li>The predominant reading order for text. This entry has no direct effect on the
|
||||
* document's contents or page numbering, but can be used to determine the relative
|
||||
* positioning of pages when displayed side by side or printed <i>n-up</i> (choose one).
|
||||
* <ul>
|
||||
* <li><b>DIRECTION_L2R</b> - Left to right
|
||||
* <li><b>DIRECTION_R2L</b> - Right to left (including vertical writing systems such as
|
||||
* Chinese, Japanese, and Korean)
|
||||
* </ul>
|
||||
* <li>The document's page mode, specifying how to display the
|
||||
* document on exiting full-screen mode. It is meaningful only
|
||||
* if the page mode is <b>PageModeFullScreen</b> (choose one).
|
||||
* <ul>
|
||||
* <li><b>NON_FULL_SCREEN_PAGE_MODE_USE_NONE</b> - Neither document outline nor thumbnail images
|
||||
* visible
|
||||
* <li><b>NON_FULL_SCREEN_PAGE_MODE_USE_OUTLINES</b> - Document outline visible
|
||||
* <li><b>NON_FULL_SCREEN_PAGE_MODE_USE_THUMBS</b> - Thumbnail images visible
|
||||
* <li><b>NON_FULL_SCREEN_PAGE_MODE_USE_OC</b> - Optional content group panel visible
|
||||
* </ul>
|
||||
* <li><b>PRINT_SCALING_NONE</b> - Indicates that the print dialog should reflect no page scaling.
|
||||
* </ul>
|
||||
* @param preferences the viewer preferences
|
||||
* @see PdfViewerPreferences#addViewerPreference
|
||||
*/
|
||||
int ViewerPreferences {
|
||||
set;
|
||||
}
|
||||
|
||||
/**
|
||||
* Adds a viewer preference.
|
||||
* <ul>
|
||||
* <li>In case the key is one of these values:
|
||||
* <ul>
|
||||
* <li>PdfName.<b>HIDETOOLBAR</b>
|
||||
* <li>PdfName.<b>HIDEMENUBAR</b>
|
||||
* <li>PdfName.<b>HIDEWINDOWUI</b>
|
||||
* <li>PdfName.<b>FITWINDOW</b>
|
||||
* <li>PdfName.<b>CENTERWINDOW</b>
|
||||
* <li>PdfName.<b>DISPLAYDOCTITLE</b>
|
||||
* </ul>
|
||||
* The value must be a of type PdfBoolean (true or false).
|
||||
* <li>In case the key is PdfName.<b>NONFULLSCREENPAGEMODE</b>,
|
||||
* the value must be one of these names:
|
||||
* <ul>
|
||||
* <li>PdfName.<b>USENONE</b>
|
||||
* <li>PdfName.<b>USEOUTLINES</b>
|
||||
* <li>PdfName.<b>USETHUMBS</b>
|
||||
* <li>PdfName.<b>USEOC</b>
|
||||
* </ul>
|
||||
* <li>In case the key is PdfName.DIRECTION,
|
||||
* the value must be one of these names:
|
||||
* <ul>
|
||||
* <li>PdfName.<b>L2R</b>
|
||||
* <li>PdfName.<b>R2L</b>
|
||||
* </ul>
|
||||
* <li>In case the key is one of these values:
|
||||
* <ul>
|
||||
* <li>PdfName.<b>VIEWAREA</b>
|
||||
* <li>PdfName.<b>VIEWCLIP</b>
|
||||
* <li>PdfName.<b>PRINTAREA</b>
|
||||
* <li>PdfName.<b>PRINTCLIP</b>
|
||||
* </ul>
|
||||
* The value must be one of these names:
|
||||
* <ul>
|
||||
* <li>PdfName.<b>MEDIABOX</b>
|
||||
* <li>PdfName.<b>CROPBOX</b>
|
||||
* <li>PdfName.<b>BLEEDBOX</b>
|
||||
* <li>PdfName.<b>TRIMBOX</b>
|
||||
* <li>PdfName.<b>ARTBOX</b>
|
||||
* </ul>
|
||||
* <li>In case the key is PdfName.<b>PRINTSCALING</b>, the value can be
|
||||
* <ul>
|
||||
* <li>PdfName.<b>APPDEFAULT</b>
|
||||
* <li>PdfName.<b>NONE</b>
|
||||
* </ul>
|
||||
* <li>In case the key is PdfName.<b>DUPLEX</b>, the value can be:
|
||||
* <ul>
|
||||
* <li>PdfName.<b>SIMPLEX</b>
|
||||
* <li>PdfName.<b>DUPLEXFLIPSHORTEDGE</b>
|
||||
* <li>PdfName.<b>DUPLEXFLIPLONGEDGE</b>
|
||||
* </ul>
|
||||
* <li>In case the key is PdfName.<b>PICKTRAYBYPDFSIZE</b>, the value must be of type PdfBoolean.
|
||||
* <li>In case the key is PdfName.<b>PRINTPAGERANGE</b>, the value must be of type PdfArray.
|
||||
* <li>In case the key is PdfName.<b>NUMCOPIES</b>, the value must be of type PdfNumber.
|
||||
* <ul>
|
||||
* </ul>
|
||||
* @param key the name of the viewer preference
|
||||
* @param value the value of the viewer preference
|
||||
* @see PdfViewerPreferences#setViewerPreferences
|
||||
*/
|
||||
void AddViewerPreference(PdfName key, PdfObject value);
|
||||
}
|
||||
}
|
@@ -0,0 +1,71 @@
|
||||
using System;
|
||||
/*
|
||||
* $Id: IPdfXConformance.cs,v 1.2 2007/06/05 15:00:43 psoares33 Exp $
|
||||
*
|
||||
* Copyright 2006 Bruno Lowagie
|
||||
*
|
||||
* The contents of this file are subject to the Mozilla Public License Version 1.1
|
||||
* (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.mozilla.org/MPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS IS" basis,
|
||||
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
||||
* for the specific language governing rights and limitations under the License.
|
||||
*
|
||||
* The Original Code is 'iText, a free JAVA-PDF library'.
|
||||
*
|
||||
* The Initial Developer of the Original Code is Bruno Lowagie. Portions created by
|
||||
* the Initial Developer are Copyright (C) 1999, 2000, 2001, 2002 by Bruno Lowagie.
|
||||
* All Rights Reserved.
|
||||
* Co-Developer of the code is Paulo Soares. Portions created by the Co-Developer
|
||||
* are Copyright (C) 2000, 2001, 2002 by Paulo Soares. All Rights Reserved.
|
||||
*
|
||||
* Contributor(s): all the names of the contributors are added in the source code
|
||||
* where applicable.
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the terms of the
|
||||
* LGPL license (the "GNU LIBRARY GENERAL PUBLIC LICENSE"), in which case the
|
||||
* provisions of LGPL are applicable instead of those above. If you wish to
|
||||
* allow use of your version of this file only under the terms of the LGPL
|
||||
* License and not to allow others to use your version of this file under
|
||||
* the MPL, indicate your decision by deleting the provisions above and
|
||||
* replace them with the notice and other provisions required by the LGPL.
|
||||
* If you do not delete the provisions above, a recipient may use your version
|
||||
* of this file under either the MPL or the GNU LIBRARY GENERAL PUBLIC LICENSE.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the MPL as stated above or under the terms of the GNU
|
||||
* Library General Public License as published by the Free Software Foundation;
|
||||
* either version 2 of the License, or any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||
* FOR A PARTICULAR PURPOSE. See the GNU Library general Public License for more
|
||||
* details.
|
||||
*
|
||||
* If you didn't download this code from the following link, you should check if
|
||||
* you aren't using an obsolete version:
|
||||
* http://www.lowagie.com/iText/
|
||||
*/
|
||||
|
||||
namespace iTextSharp.text.pdf.interfaces {
|
||||
|
||||
public interface IPdfXConformance {
|
||||
/**
|
||||
* Sets the PDF/X conformance level.
|
||||
* Allowed values are PDFX1A2001, PDFX32002, PDFA1A and PDFA1B.
|
||||
* It must be called before opening the document.
|
||||
* @param pdfxConformance the conformance level
|
||||
*/
|
||||
int PDFXConformance{
|
||||
set;
|
||||
get;
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks if the PDF/X Conformance is necessary.
|
||||
* @return true if the PDF has to be in conformance with any of the PDF/X specifications
|
||||
*/
|
||||
bool IsPdfX();
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user