Jump to content

Debenu Quick PDF Library - UDF 0.10

   (1 review)

1 Screenshot

About This File

; #INDEX# =======================================================================================================================
; Title .........: UDF for "Debenu Quick PDF Library"
; AutoIt Version : 3.3.10.2++
; Language ......: English
; Description ...: A collection of functions for Debenu Quick PDF Library
; Author(s) .....: mLipok
; Modified ......:
; ===============================================================================================================================

Release note:

Spoiler

    2015/06/15
    v0.7

    QuickPDF.au3
    *    Added: many code descriptions
    *    Added: enums $__eQPDF_ERROR_* for error checking
    *    Added: error checking (each function should return @error @extended and ReturnValues )
    *    Added: New function __QPDF_ObjIsValid()
    *    Added: New function _QPDF_CreateObjectFromStream()
    *    Added: New function _QPDF_Display()
    *    Added: New function _QPDF_Display_PDFFile()
    *    Added: New function _QPDF_FolderExtractText()
    *    Added: New function _QPDF_GetInformation()
    *    Added: New function _QPDF_GetInformationEx_Lite()
    *    Added: New function _QPDF_GetPageMetricsToString()
    *    Added: New function _QPDF_MergeFiles_Lite()
    *    Added: New function _QPDF_Page_2in1()
    *    Added: New function _QPDF_Page_2in1_File()
    *    Added: New function _QPDF_PrintFromStream()
    *    Added: New function _QPDF_ReplaceFonts_in_File()
    *    Added: New function _QPDF_Rotate_Lite()
    *    Added: New function _QPDF_RotateFileLeft_Lite()
    *    Added: New function _QPDF_RotateFileRight_Lite()
    *    Added: New function _QPDF_SaveAndOpen()
    *    Added: New function _QPDF_StringInPDFFile()
    *    Added: New function _QPDF_StringInPDFStrem()
    *    Added: New function _QPDF_TextToHtml()
    *    Added: New function _QPDF_TXT_to_PDF()
    *    Added: New function _QPDF_TXT_to_PDF_Lite()
    *    Added: New function _QPDF_TXTFile_to_PDFFile()
    *    Added: New function _QPDF_UDF_ErrorDescription()
    *    Added: New function _QPDF_Html_Font_BackgroundColor()
    *    Added: New function _Matrix_Create()
    *    Added: New function _Matrix_Move()
    *    Added: New function _Matrix_Rotate()
    *    Added: New function _Matrix_Skew()
    *    Added: New function _Matrix_Zoom()
    *    Added: in _QPDF_A4toA5() Function added $oQP.NormalizePage(0)
    *    Added: in _QPDF_DrawText_Lite() Function added $oQP.NormalizePage(0)
    *    Added: _QPDF_ExtractTextFromFile() return values @Extended = $iTotalPages
    *    Added: in _QPDF_PrintPDFFile addded new parameter >>> $sPrinterName
    *    Added: __QPDF_NewLibraryPath_Commercial

    *    Changed: __QPDF_NewLibraryPath_Commercial() is now Internal Function
    *    Changed: __QPDF_UnlockKey() now have only one parameter
    *    Changed: _QPDF_CreateObject() rewriten to give complet Error Checking
    *    Changed: _QPDF_CreateObjectAndUnlock() rewriten to give complet Error Checking
    *    Changed: _QPDF_SetLicenseKey() rewriten to give complet Error Checking
    *    Changed: _QPDF_ExtractTextFromStream() use _QPDF_ExtractAllText()
    *    Renamed: $__fNotification_QPDF to $__bNotification_QPDF
    *    Removed: parameter $sLicenseKey from __QPDF_UnlockKey() function - is not needed as unlock is only for Commercial and License key is checked befor this function is called

    !!!!!!!!!!!!!!! SCRIPT BREAKING CHANGE !!!!!!!!!!!!!!!
    *    Removed: parameters $sPDF_Password from _QPDF_ExtractAllText() function
    *    Changed: $__eQPDF_ERROR_DebenuLicense >> $__eQPDF_ERROR_INVALIDLICENSEKEY
    *    Changed: _QPDF_ExtractTextFromFile(.. , $iExtractOptions --> default is 7 previously 8
    *    Changed: _QPDF_NewLibraryPath_Commercial($sDLL_FileFullPath) now have only ONE parameter
    *    Changed: _QPDF_RotateFile_Lite($sPDF_FileFullPath[, $iPageRotation = 0]) now have only ONE parameter

 

 

Erratum v0.7:

Spoiler

in examples there is:

; or just copy "c:\Program Files (x86)\Debenu\PDF Viewer SDK\TRIAL_LICENSE_KEY.TXT" to @ScriptDir & '\TRIAL_LICENSE_KEY.TXT'

but it should be:

; or just copy "c:\Program Files (x86)\Debenu\PDF Library\TRIAL_LICENSE_KEY.TXT" to @ScriptDir & '\TRIAL_LICENSE_KEY.TXT'

 

 

Forum link:

 

 


What's New in Version 0.10

Released

 

Quote

    Update History:
    ===================================================
    2014/04/25
    v0.1 First unoficial version - mLipok
    *
    *
    ===================================================
    2014/05/06
    v0.2
    *     Added: Many new function - mLipok
    *     Added: Examples - mLipok
    *
    *
    ===================================================
    2014/05/14
    v0.3
    *
    *    Removed: examples from QuickPDF.au3 - mLipok
    *     Added: separate file with examples QuickPDF_Examples.au3 - mLipok
    *     Added: _QPDF_StartUp() - mLipok
    *     Added: __QPDF_NewLibraryPath_Commercial() - mLipok
    *     ADDED: _QPDF_NewLibraryPath_Lite() - mLipok
    *     Changed: __AddLeadingZeros >> __QPDF_AddLeadingZeros - mLipok
    *     Changed: CleanUp - mLipok
    *    Changed: _QPdf_ >> _QPDF_ - mLipok
    *     Changed: Function Header - significantly supplemented - mLipok
    *     Added: additional comments - mLipok
    *     Added: new set of enum constants - mLipok
    *
    *    !!!!!!!!!!!!!!! SCRIPT BREAKING CHANGE !!!!!!!!!!!!!!!
    *    Changed: Lite Function renaming - mLipok
    *        to change your script you can use:
    *        ClipPut(StringRegExpReplace(ClipGet(),'(?i)(_QPDF)(_Lite)(_.*?)(\(|\R)','$1$3$2$4'))
    *    Changed: all functions which starts with "_QPDF__" now starts with "_QPDF_"  it means one less "_" - mLipok
    *    Changed: _QPDF_FileSplitEachPage added new Parameters $sPDF_Password (as a second not third so $sDestinationDir is moved to third position - mLipok
    *    Changed: __QPDF_CreateObjectAndUnlock($oQP) change to _QPDF_CreateObjectAndUnlock($oQP) its mean is not internal any more - mLipok
    *
    *
    ===================================================
    2014/05/31
    v0.4
    *
    QuickPDF.au3
    *    Changed: in __QPDF_UnlockKey() - Remarks changed - mLipok
    *    Fixed: in _QPDF_StartUp() fixed: 'If Not FileExists($sDLLFile) Then' removed 'Not' - mLipok
    *        because of this process did not work on systems where the library was not registered using regsvr32.exe.
    *    Added: in _QPDF_StartUp() added: return values, but their functionality is not yet implemented and described (be expected to change within a week) - mLipok
    *    Added: new function: _QPDF_PrintPDFFile([$sPDF_FileFullPath = Default[, $sPDF_Password = ''[, $iDuplex = 1 ]]]) - mLipok
    *    Added: new function: _QPDF_MergeFiles($sFirstFileFullPath, $sSecondFileFullPath[, $sOutputFileName = Default]) - mLipok
    *
    QuickPDF_Examples.au3
    *    Added: new example _QPDF_Example_MergeFiles() - mLipok
    *
    *
    ===================================================
    2014/05/31
    v0.5
    *
    QuickPDF.au3
    *    FIXED: in _QPDF_PrintPDFFile now printing all pages :) not only the first one :( - mLipok
    *
    *
    ===================================================
    2014/07/02
    v0.6
    *
    QuickPDF.au3
    *    Added: #AutoIt3Wrapper_Au3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6 -w 7    and script CleanUp - mLipok
    *    Added: Function: _QPDF_ExtractTextFromStream() - you can use this function when you have data taken from Blob from SQL databese - mLipok
    *    Added: new parameters __QPDF_NewLibraryPath_Commercial($sLibrary_NewFileFullPath, $sNewClassName, $sNewCLSID, $sNewIID) - mLipok
    *    Changed: #Region renaming - for better usage in SciTE Jump - mLipok
    *    Changed: in _QPDF_MergeFiles() -- litle change in $sOutputFileName = Default - add & '_temp.pdf' instead 'temp.pdf' - mLipok
    *    Changed: _QPDF_LastErrorCode -- Return Value containg description (string) and @error contain LastErrorCode - mLipok
    *    Changed: _QPDF_ExtractTextFromFile    default $iExtractOptions = 7 for detail see here : http://www.quickpdf.org/forum/extractfilepagetext-options-0-and-8_topic2929.html - mLipok
    *    Removed: some MsgBox - mLipok
    *   Fixed: _QPDF_StartUp() - error checking for DllOpen - mLipok
    *
    QuickPDF_Examples.au3
    *    Added: using new function __QPDF_NewLibraryPath_Commercial() - mLipok
    *        for this you need DebenuPDFLibraryAX1015.dll
    *        __QPDF_NewLibraryPath_Commercial(@ScriptDir & '\DebenuPDFLibraryAX1015.dll', 'DebenuPDFLibraryAX1015.PDFLibrary', '{5D4196E9-0A7D-48DC-BD2C-7CD3FE771B38}', '{FA7270CF-D774-4A68-8368-2C3179895E0C}')
    *
    QuickPDF_Calltip_Generator.au3
    *    NEW:  use it to generate au3.QuickPDF.calltips.api - mLipok
    *
    *
    ===================================================
    2014/07/02
    v0.6b
    *
    *    Added: new enum: Parameters for DrawTextBox $__eQPDF_DTBOX_VAlign* - mLipok
    *    Changed: enum renamed from $__QPDF_...... to $__eQPDF_...... - mLipok
    *
    *
    ===================================================
    2015/05/xx
    v0.6c intermediate version
    *
    *    No documentation - mLipok
    *       https://www.autoitscript.com/forum/topic/160875-debenu-quick-pdf-library-udf/?page=2#comment-1240768
    *
    *
    ===================================================
    2015/06/15
    v0.7
    *
    QuickPDF.au3
    *    Added: many code descriptions - mLipok
    *    Added: enums $__eQPDF_ERROR_* for error checking - mLipok
    *    Added: error checking (each function should return @error @extended and ReturnValues ) - mLipok
    *    Added: Function: __QPDF_ObjIsValid() - mLipok
    *    Added: Function: _QPDF_CreateObjectFromStream() - mLipok
    *    Added: Function: _QPDF_Display() - mLipok
    *    Added: Function: _QPDF_Display_PDFFile() - mLipok
    *    Added: Function: _QPDF_FolderExtractText() - mLipok
    *    Added: Function: _QPDF_GetInformation() - mLipok
    *    Added: Function: _QPDF_GetInformationEx_Lite() - mLipok
    *    Added: Function: _QPDF_GetPageMetricsToString() - mLipok
    *    Added: Function: _QPDF_MergeFiles_Lite() - mLipok
    *    Added: Function: _QPDF_Page_2in1() - mLipok
    *    Added: Function: _QPDF_Page_2in1_File() - mLipok
    *    Added: Function: _QPDF_PrintFromStream() - mLipok
    *    Added: Function: _QPDF_ReplaceFonts_in_File() - mLipok
    *    Added: Function: _QPDF_Rotate_Lite() - mLipok
    *    Added: Function: _QPDF_RotateFileLeft_Lite() - mLipok
    *    Added: Function: _QPDF_RotateFileRight_Lite() - mLipok
    *    Added: Function: _QPDF_SaveAndOpen() - mLipok
    *    Added: Function: _QPDF_StringInPDFFile() - mLipok
    *    Added: Function: _QPDF_StringInPDFStream() - mLipok
    *    Added: Function: _QPDF_TextToHtml() - mLipok
    *    Added: Function: _QPDF_TXT_to_PDF() - mLipok
    *    Added: Function: _QPDF_TXT_to_PDF_Lite() - mLipok
    *    Added: Function: _QPDF_TXTFile_to_PDFFile() - mLipok
    *    Added: Function: _QPDF_UDF_ErrorDescription() - mLipok
    *    Added: Function: _QPDF_Html_Font_BackgroundColor() - mLipok
    *    Added: Function: _Matrix_Create() - mLipok
    *    Added: Function: _Matrix_Move() - mLipok
    *    Added: Function: _Matrix_Rotate() - mLipok
    *    Added: Function: _Matrix_Skew() - mLipok
    *    Added: Function: _Matrix_Zoom() - mLipok
    *    Added: in _QPDF_A4toA5() Function added $oQP.NormalizePage(0) - mLipok
    *    Added: in _QPDF_DrawText_Lite() Function added $oQP.NormalizePage(0) - mLipok
    *    Added: _QPDF_ExtractTextFromFile() return values @Extended = $iTotalPages - mLipok
    *    Added: in _QPDF_PrintPDFFile addded new parameter >>> $sPrinterName - mLipok
    *    Added: __QPDF_NewLibraryPath_Commercial - mLipok
    *    Changed: __QPDF_NewLibraryPath_Commercial() is now Internal Function - mLipok
    *    Changed: __QPDF_UnlockKey() now have only one parameter - mLipok
    *    Changed: _QPDF_CreateObject() rewriten to give complet Error Checking - mLipok
    *    Changed: _QPDF_CreateObjectAndUnlock() rewriten to give complet Error Checking - mLipok
    *    Changed: _QPDF_SetLicenseKey() rewriten to give complete Error Checking - mLipok
    *    Changed: _QPDF_ExtractTextFromStream() use _QPDF_ExtractAllText() - mLipok
    *    Renamed: $__fNotification_QPDF to $__bNotification_QPDF - mLipok
    *    Removed: parameter $sLicenseKey from __QPDF_UnlockKey() function - is not needed as unlock is only for Commercial and License key is checked befor this function is called - mLipok
    *
    *    !!!!!!!!!!!!!!! SCRIPT BREAKING CHANGE !!!!!!!!!!!!!!!
    *    Removed: parameters $sPDF_Password from _QPDF_ExtractAllText() function - as is not needed - mLipok
    *    Changed: $__eQPDF_ERROR_DebenuLicense >> $__eQPDF_ERROR_INVALIDLICENSEKEY - mLipok
    *    Changed: _QPDF_ExtractTextFromFile(.. , $iExtractOptions --> default is 7 previously 8 - mLipok
    *    Changed: _QPDF_NewLibraryPath_Commercial($sDLL_FileFullPath) now have only ONE parameter - mLipok
    *    Changed: _QPDF_RotateFile_Lite($sPDF_FileFullPath[, $iPageRotation = 0]) now have only ONE parameter - mLipok
    *
    *
    ===================================================
    2015/08/xx
    v0.8 alpha-1
    *
    QuickPDF.au3
    *    Added: Function:  _QPDF_Arrow() - mLipok
    *    Added: ENUMS: $QPDF_EXT_ - mLipok
    *    Added: ENUMS: $QPDF_RET_DEFAULT = 0, $QPDF_RET_FAILURE = -1 - mLipok
    *
    *    !!!!!!!!!!!!!!! SCRIPT BREAKING CHANGE !!!!!!!!!!!!!!!
    *    Changed: ENUMS:  $__EQPDF_RETURN_ >> $QPDF_RET_ - mLipok
    *    Changed: ENUMS:  $__eQPDF_ERROR_ >> $QPDF_ERR_ - mLipok
    *    Changed: ENUMS:  $QPDF_ERR_ALL_IS_OK >> $QPDF_ERR_OK - mLipok
    *    Renamed: Function: __QPDF_ObjIsValid >> __QPDF_IsValidObject - mLipok
    *    Changed: ENUMS:  $QPDF_RET_  changed concept - ERRORS are < 0 - mLipok
    *            but if you want to check I function return with Succesc you must chceck
    *    Removed: ENUM: $QPDF_RET_OBJCREATE_ERROR - mLipok
    *    Removed: ENUM: $QPDF_RET_INVALID_COMMERCIAL_LICENSE_KEY - mLipok
    *
    *
    ===================================================
    2015/11/06
    v0.8 alpha-2
    *
    *    Added: support for QPDFLibrary 12.11 - now is default - mLipok
    *
    *
    ===================================================
    2015/11/17
    v0.8 alpha-3
    *
    *    New: Function: _QPDF_PageEnumerator - mLipok
    *    New: Function: _QPDF_Example_ExtractImages - mLipok
    *    Renamed: Enum: $QPDF_ERR_ISLITEINSTEADCOMMERCIAL >> $QPDF_ERR_ISLITE - mLipok
    *    Renamed: Enum: $QPDF_ERR_ISCOMMERCIALINSTEADLITE >> $QPDF_ERR_ISCOMMERCIAL - mLipok
    *    Renamed: Enum: $QPDF_ERR_ISNOTBEBENUOBJECT >> $QPDF_ERR_ISNOTBEBENU - mLipok
    *    Added: support for   DebenuPDFLibraryCPAX1211.dll  - mLipok
    *       http://labs.debenu.com/2015/11/09/debenu-quick-pdf-library-12-11-downloads/
    *       http://www.debenu.com/downloads/installers/debenu_quick_pdf_library_win.zip
    *    Changed: Function: _QPDF_Page_2in1_File - on succes return $sSAVE_FileFullPath - mLipok
    *
    *
    ===================================================
    2016/06/13
    v0.8
    *
    *     Added: support for DebenuPDFLibraryAX1212.dll - Now this is default setting - mLipok
    *    Added: #Au3Stripper_Ignore_Funcs=_QPDF_Shutdown - mLipok
    *    Changed: Refactored (If Then Else EndIf + Return) in many funciton - mLipok

    2017/01/29
    v0.9
    *    Added: support for QPDFLibrary 13.11 - now is default - mLipok
    *    Changed: Function: __QPDF_UnlockKey - no longer shows MsgBox - user shuld check for @error  - mLipok
    *    Changed: magic number in ObjName($oQP, $OBJ_STRING)  - mLipok
    *    Refactored: Function: __QPDF_IsValidObject - mLipok
    *    Refactored: Function:  - mLipok
    *            _QPDF_AddLinkToWeb_Lite
    *            _QPDF_AddStandardFont_Lite
    *            _QPDF_DrawText_Lite
    *            _QPDF_GetInformation_Lite
    *            _QPDF_LoadFromFile_Lite
    *            _QPDF_NewPage_Lite
    *            _QPDF_PageCount_Lite
    *            _QPDF_RotatePage_Lite
    *            _QPDF_SaveToFile_Lite
    *            _QPDF_SelectPage_Lite
    *            _QPDF_SetBaseURL_Lite
    *            _QPDF_SetInformation_Lite
    *            _QPDF_SetMeasurementUnits_Lite
    *            _QPDF_SetPageBox_Lite
    *            _QPDF_SetPageDimensions_Lite
    *            _QPDF_SetPageLayout_Lite
    *            _QPDF_SetPageMode_Lite
    *            _QPDF_SetPageSize_Lite
    *            _QPDF_SetTextAlign_Lite
    *            _QPDF_SetTextColor_Lite
    *            _QPDF_SetTextSize_Lite
    *            _QPDF_SetTextUnderline_Lite
    *            _QPDF_GetInformation
    *            _QPDF_GetPageMetricsToString
    *                DESCRIPTION:  Refactored: validation for (ByRef $oQP ... using
    *                    If __QPDF_IsUnlocked($oQP) Then
    *                        instead
    *                    If _QPDF_CreateObjectAndUnlock($oQP) = $QPDF_RET_VALID_COMMERCIAL Or _QPDF_CreateObjectAndUnlock($oQP) = $QPDF_RET_VALID_LITE Then
    *
    *
    *    Changed: Function: _QPDF_CreateObjectFromStream - fixed IsBinary checking - mLipok
    *    Changed: Function: _QPDF_CreateObjectFromStream - stream is pased as ByRef - mLipok
    *    Changed: Function: _QPDF_ExtractTextFromStream - fixed IsBinary checking - mLipok
    *    Changed: Function: _QPDF_ExtractTextFromStream - stream is pased as ByRef - mLipok
    *    Changed: Function: _QPDF_PrintFromStream - stream is pased as ByRef - mLipok
    *    Renamed: ENUMS: $QPDF_ERR_OK >> $QPDF_ERR_SUCCESS - mLipok
    *    Renamed: $__hDll_QPDF  >>  $__g_hDll_QPDF - mLipok
    *    Renamed: $__ErrorHandler_QPDF  >>  $__g_ErrorHandler_QPDF - mLipok
    *    Renamed: $__bNotification_QPDF  >>  $__g_bNotification_QPDF - mLipok
    *    Refactored: Function: _QPDF_StartUp() - mLipok
    *    Added: Enums: $QPDF_CSVTEXTCOL_* - mLipok
    *    Added: Function: _QPDF_CSVTEXT_GetMaxBoundaries() - mLipok
    *    Added: Function: __QPDF_IsStream - mLipok
    *    Refactored: Function: _QPDF_ExtractTextFromStream - mLipok
    *    Refactored: Function: _QPDF_PrintFromStream - mLipok
    *    Refactored: Function: _QPDF_CreateObjectFromStream - mLipok
    *    Added: Featrure: _QPDF_Display() If $iSelectPage = -1 Then $iSelectPage = $oQP.PageCount() - mLipok
    *    Added: Function: _QPDF_GetImagePageCount() - mLipok
    *    Added: Function: _QPDF_SetDefaultCoordinates() - mLipok
    *             !!!! FINALLY !!!!
    *             Now you should be able to use other system not only metric
    *             That means each function can be used with:
    *                 $__eQPDF_MUNITS_Default , $__eQPDF_MUNITS_Milimeters, $__eQPDF_MUNITS_Inches
    *    Added: Enums: $QPDF_ERR_FILEEXIST - mLipok
    *    Added: Enums: $QPDF_ERR_FILENOTEXIST - mLipok
    *    Added: Enums: $QPDF_EXT_PARAM1 - mLipok
    *    Added: Enums: $QPDF_EXT_PARAM2 - mLipok

    2019/10/11
    v0.10

    QuickPDF.au3
    *    Added: support for DebenuPDFLibraryAX1411.dll - mLipok
    *    Added: support for DebenuPDFLibraryAX1511.dll - mLipok
    *    Added: support for DebenuPDFLibraryAX1611.dll - mLipok
    *    Added: support for DebenuPDFLibraryAX1612.dll - mLipok
    *    Added: support for DebenuPDFLibraryAX1613.dll - mLipok
    *    Added: support for DebenuPDFLibraryAX1711.dll - mLipok
    *    Added: Function: _QPDF_EmbedFileToPDFFile() - mLipok
    *    Added: Function: _QP_MeasurementUnitsConverter() - mLipok
    *    Added: Function: _QPDF_GetOptionalContentGroupInformation() - mLipok
    *    Added: Function: _QPDF_Page_2in1_Stream() - mLipok
    *   Added: Function: _QPDF_GetOptionalContentGroupIDByName - mLipok
    *   Added: Function: _QPDF_DeleteOptionalContentGroupByName - mLipok
    *   Added: Function: _QPDF_BarCode() - mLipok
    *   Added: Function: _QPDF_Print - mLipok
    *    Added: Function: _QPDF_Compress() - mLipok
    *    Added: Function: _QPDF_CompressFile() - mLipok
    *    Added: Function: _QPDF_SaveToFile() - mLipok
    *    Added: Function: _QPDF_LastErrorDescription() - mLipok
    *    Added: Function: _QPDF_LoadFromStream() - mLipok
    *    Added: Function: _QPDF_Page_4in1() - mLipok
    *    Added: Function: _QPDF_TXTString_to_PDFFile() - mLipok
    *    Added: Function: _QPDF_CreateObjectFromFile() - mLipok
    *    Added: Function: _QPDF_LastError_Set() - mLipok
    *    Added: Function: _QPDF_LastError_ReSet() - mLipok
    *    Added: Function: _QPDF_LastError_GetCode() - mLipok
    *    Added: Function: _QPDF_LastError_GetDescription() - mLipok
    *    Added: Function: _QPDF_RotateLeft_Lite - mLipok
    *    Added: Function: _QPDF_RotateRight_Lite - mLipok
    *   Added: ENUMS: $QPDF_OCGINFO_* - mLipok
    *    Added: Enums: $QPDF_ERR_DIRECTORY - mLipok
    *   Added: ENUMS: $QPDF_ERR_NOMATCH - mLipok
    *   Added: ENUMS: $QPDF_ERR_SAVEFILE - mLipok
    *    Added: ENUMS: $QPDF_ERR_INVALIDDATATYPE - mLipok
    *    Added: ENUMS: $QPDF_ERR_INVALIDVALUE - mLipok
    *    Added: ENUMS: $QPDF_ERR_FILEISUSED - mLipok
    *    Added: ENUMS: $QPDF_ERR_LOADFILE - mLipok
    *    Added: ENUMS: $QPDF_ERR_ONEPAGEONLY - mLipok
    *    Added: ENUMS: $QPDF_EXT_PARAM3 - mLipok
    *    Added: ENUMS: $QPDF_EXT_PARAM4 - mLipok
    *    Added: ENUMS: $QPDF_EXT_PARAM5 - mLipok
    *    Added: ENUMS: $QPDF_EXT_PARAM6 - mLipok
    *    Added: Parameter in Function: _QPDF_SaveToFile() parameter $bAllowOverwrite - mLipok
    *    Added: Parameter in Function: _QPDF_RotateFileLeft_Lite($sPDF_FileFullPath) - parameter $sPDF_Password - mLipok
    *    Added: Parameter in Function: _QPDF_RotateFileRight_Lite($sPDF_FileFullPath) - parameter $sPDF_Password - mLipok
    *    Added: Parameter in Function: _QPDF_Print() - $iCopies = True - mLipok
    *    Added: Parameter in Function: _QPDF_Page_2in1() - $bTurnRight = True - mLipok
    *    Added: Parameter in Function: _QPDF_PageEnumerator() - $itextSize - mLipok
    *    Changed: Function: _QPDF_FolderExtractText() - support for $QPDF_ERR_DIRECTORY - mLipok
    *    Changed: Function: _QPDF_LastErrorCode() - return value is Integer ErrorCode - mLipok
    *    Changed: Function: _QPDF_LastErrorCode() - using static variable - mLipok
    *    Changed: Function: _QPDF_LastErrorCode() - are transparent for @error and @extended - mLipok
    *    Changed: Function: _QPDF_LastErrorCode() - are transparent for @error and @extended - mLipok
    *    Changed: Function: _QPDF_NewLibraryPath_Commercial() now check for DLL File Exist - mLipok
    *    Changed: Function: _QPDF_CSVTEXT_GetMaxBoundaries() - parameter is Object insted Text - mLipok
    *    Renamed: Function: _QPDF_LastErrorCode() >> _QPDF_LastError_SetCode() - mLipok
    *    Renamed: Function: _QPDF_LastErrorDescription() >> _QPDF_LastError_SetDescription() - mLipok
    *    Removed: MsgBox from _QPDF_NewLibraryPath_Commercial() - mLipok
    *    Fixed: Function: _QPDF_Page_2in1() - SetMeasurementUnits was not set when $bAddSplitter = False - mLipok
    *    Changed: Function: _QPDF_Display() default value: $iWidth = 600 - mLipok
    *   Added: @error handling - _QPDF_FolderExtractText - mLipok
    *   Fixed: __QPDF_IsUnlocked - usage __QPDF_IsValidObject($oQP) - mLipok
    *   Fixed: __QPDF_UnlockKey - usage __QPDF_IsValidObject($oQP) - mLipok
    *   Fixed: _QPDF_FileGetPageCount - Function Header - mLipok
    *   Added: _QPDF_LastErrorCode - is using __QPDF_IsValidObject($oQP) - mLipok
    *   Changed: _QPDF_CreateObjectFromStream - $QPDF_RET_FAILURE - mLipok
    *   Changed: _QPDF_ExtractAllText - $QPDF_RET_FAILURE - mLipok
    *   Changed: _QPDF_Arrow - $QPDF_RET_FAILURE - mLipok
    *   Changed: _QPDF_PrintPDFFile - QPDF_ERR_FILENOTEXIST instead MsgBox- mLipok
    *   Changed: _QPDF_Rotate_Lite - better paramter validation - mLipok
    *   Changed: _QPDF_SelectFont_Lite - better paramter validation - mLipok
    *   Changed: _QPDF_CSVTEXT_GetMaxBoundaries - better paramter validation - mLipok
    *   Changed: _QPDF_Display - better paramter validation - mLipok
    *   Changed: _QPDF_Page_2in1 - better paramter validation - mLipok
    *   Changed: _QPDF_PageEnumerator - better paramter validation - mLipok
    *   Changed: _QPDF_SaveAndOpen - better paramter validation - mLipok
    *   Changed: _QPDF_SetDefaultCoordinates - better paramter validation - mLipok
    *   Changed: _QPDF_StringInPDFFile - better paramter validation - mLipok
    *   Changed: _QPDF_StringInPDFStream - better paramter validation - mLipok
    *   Changed: _QPDF_TXT_to_PDF - better paramter validation - mLipok
    *   Changed: _QPDF_EmbedFileToPDFFile - better paramter validation - mLipok
    *   Changed: _QPDF_GetOptionalContentGroupInformation - better paramter validation - mLipok
    *   Changed: _QPDF_GetOptionalContentGroupInformation - refactored - mLipok
    *   Changed: _QPDF_FolderExtractText - $QPDF_ERR_DIRECTORY - mLipok
    *   Changed: _QPDF_MergeFiles_Lite - better paramter validation - mLipok
    *   Changed: _QPDF_MergeFiles_Lite - $QPDF_ERR_DIRECTORY - mLipok
    *   Changed: _QPDF_MergeFiles_Lite - using $QPDF_ERR_SAVEFILE - mLipok
    *   Changed: _QPDF_ReplaceFonts_in_File - better paramter validation - mLipok
    *   Changed: _QPDF_ReplaceFonts_in_File - $QPDF_ERR_DIRECTORY - mLipok
    *   Removed: MsgBox() in function _QPDF_ReplaceFonts_in_File - mLipok
    *   Removed: MsgBox() in function _QPDF_TXTFile_to_PDFFile - mLipok
    *    Changed:  $iDuplex = Default - it's mean do not change defalut windows driver settings - mLipok
    *    Added: support for @error reporting $QPDF_ERR_SAVEFILE in all $oQP.SaveToFile - mLipok
    *    Renamed: $__sLicenseKey_QPDF >> $__g_sLicenseKey_QPDF - mLipok
    *    Renamed: $__sDebenuPDFLibraryAX_FileFullPath >> $__g_sDebenuPDFLibraryAX_FileFullPath - mLipok
    *    Renamed: $__sClassName_Commercial_QPDF >> $__g_sClassName_Commercial_QPDF - mLipok
    *    Renamed: $__sIID_Commercial >> $__g_sIID_Commercial_QPDF - mLipok
    *    Renamed: $__sCLSID_Commercial >> $__g_sCLSID_Commercial_QPDF - mLipok
    *    Renamed: ENUM: $QPDF_ERR_ISSTILLLOCKED >> $QPDF_ERR_ISLOCKED - mLipok
    *   Removed: MsgBox() in function _QPDF_StartUp - mLipok
    *   Removed: MsgBox() in function _QPDF_EmbedFileToPDFFile - mLipok
    *   Removed: MsgBox() in function _QPDF_Page_2in1_File - mLipok
    *    Changed: Function: _QPDF_MergeFiles() - on $QPDF_ERR_GENERAL return _QPDF_LastError_GetCode() in Extended - mLipok
    *    Changed: Function: _QPDF_LoadFromFile() - uses _QPDF_LastError_Set($oQP) - mLipok
    *    Changed: Function: _QPDF_UDF_ErrorDescription() - sumplemented - mLipok
    *    Changed: Function: _QPDF_LoadFromFile() - if @error = $QPDF_ERR_LOADFILE then  @extended = _QPDF_LastError_GetCode() - mLipok
    *    Changed: Function: _QPDF_SaveToFile() - uses _QPDF_LastError_Set($oQP) - mLipok
    *    Changed: Function: _QPDF_SaveToFile() - if @error = $QPDF_ERR_SAVEFILE then  @extended = _QPDF_LastError_GetCode() - mLipok
    *    Changed: Function: all faunction is using _QPDF_SaveToFile() instead $oQP.SaveToFile - mLipok
    *    Changed: Function: _QPDF_CreateObjectFromStream() - if @error = $QPDF_ERR_STREAMCANNOTBELOADED then  @extended = _QPDF_LastError_GetCode() - mLipok
    *    Changed: Function: _QPDF_LastError_SetCode() - ConsoleWrite behavior - mLipok
    *   Refactored: Function: _QPDF_RotateFileLeft_Lite - is using _QPDF_RotateLeft_Lite() - mLipok
    *   Refactored: Function: _QPDF_RotateFileRight_Lite - is using _QPDF_RotateRight_Lite() - mLipok
    *    Refactored: Function: _QPDF_FolderExtractText() - mLipok
    *    Refactored: Function: _QPDF_ExtractTextFromStream() - mLipok
    *    Refactored: Function: _QPDF_SetLicenseKey() - mLipok
    *    Refactored: Function: __QPDF_NewLibraryPath_Commercial() - mLipok
    *    Refactored: Function: _QPDF_Print() - mLipok
    *    Refactored: Function: _QPDF_PrintPDFFile() - mLipok
    *    Refactored: Function: _QPDF_PrintFromStream() - mLipok
    *   Refactored: Function: _QPDF_CreateObjectAndUnlock - mLipok
    *    Refactored: Function: _QPDF_MergeFiles - mLipok
    *   Refactored: _QPDF_MergeFiles_Lite - mLipok
    *   Refactored: _QPDF_ReplaceFonts_in_File - mLipok
    *    Changed: Function: _QPDF_Print() - Duplex is taken action only if PageCount > 1 - mLipok
    *    Changed: Function: _QPDF_PrintPDFFile() - Duplex is taken action only if PageCount > 1 - mLipok
    *    Changed: Function: _QPDF_PrintFromStream() - Duplex is taken action only if PageCount > 1 - mLipok
    *    Changed: Function: __QPDF_IsUnlocked() return $QPDF_ERR_ISLITE if Lite is used - mLipok
    *    Changed: Function: _QP_MeasurementUnitsConverter() better parameters checking - mLipok
    *    Fixed: Function: _QPDF_SaveToFile() parameters checking - mLipok
    *    Fixed: Function: _QPDF_SaveToFile() better support for $sPDF_Password - mLipok
    *    Fixed: Function: _QPDF_ReplaceFonts_in_File()  better support for $sPDF_Password - mLipok
    *    Fixed: Function: _QPDF_A4toA5() better support for $sPDF_Password - mLipok
    *    Changed: Function: all functions using _QPDF_SaveToFile() - checked for $bAllowOverwrite usage - mLipok
    *    Changed: Function: all functions using _QPDF_LoadFromFile() - checked for $sPDF_Password usage - mLipok
    *    Changed: Function: all function specyfic - using $QPDF_ERR_LOADFILE - mLipok
    *    Changed: Function: better error reporting in any function using  _QPDF_SaveToFile() - mLipok
    *    Fixed: Funciton: _QPDF_Page_2in1_File() fix for: If $bReplaceOrginalFile=True then overwrite - mLipok


    !!!!!!!!!!!!!!! SCRIPT BREAKING CHANGE !!!!!!!!!!!!!!!
    *    Removed: Function: _QPDF_LoadFromFile_Lite() - please use _QPDF_LoadFromFile() - mLipok
    *    Removed: Function: _QPDF_SaveToFile_Lite() - please use _QPDF_SaveToFile() - mLipok
    *    Changed: Function: _QPDF_CreateObjectFromStream() - $oQP is not passed as ByRef anymore, but returned as result - mLipok
    *    Changed: Function: _QPDF_SaveToFile() - after adding $bAllowOverwrite - parameters order was changed and same way $QPDF_ERR_PAR... may be differ - mLipok
    !!!!!!!!!!!!!!! SCRIPT BREAKING CHANGE !!!!!!!!!!!!!!!

    !!!!!!!!!!!!!!! REMARK !!!!!!!!!!!!!!!
    * temporarily all Print function contain ; setting B/W printing
    * you can easily remove this feature manualy by your self
    !!!!!!!!!!!!!!! REMARK !!!!!!!!!!!!!!!
 

 

 

 

 


User Feedback

You may only provide a review once you have downloaded the file.


  • Similar Content

    • By mLipok
      I would like to present, the UDF for Debenu Quick PDF Library
      Getting Started:
      http://www.debenu.com/products/development/debenu-pdf-library/getting-started/getting-started-activex-edition/
      Function Reference:
      http://www.debenu.com/docs/pdf_library_reference/FunctionGroups.php
      Useful information:
      http://www.quickpdf.org/forum/quickpdf-the-first-steps_topic1242.html
      http://www.quickpdflibrary.com/blog/2011/02/the-basics-getting-familiar-with-quick-pdf-library/
      First time installing Debenu Quick PDF Library:
      You can download demo here:
      http://www.quickpdflibrary.com/downloads/quick_pdf_library_demo.exe
      Requirements:
      file "DebenuPDFLibraryLite1012.dll" or "DebenuPDFLibraryAX1014.dll" must be in @ScriptDir

      if you want to try you must download it from here:
      http://www.debenu.com/products/development/debenu-pdf-library/trial/
      or
      http://www.debenu.com/products/development/debenu-pdf-library-lite/free/
      after install you can find this dll in:
      "c:\Program Files (x86)\DebenuPDF Library\ActiveX\DebenuPDFLibraryAX1014.dll"
      or
      "c:\Program Files (x86)\DebenuPDF Library\Lite\DebenuPDFLibraryLite1012.dll"

      !!! you can change DLL to newer version using _QPDF_NewLibraryPath_Commercial()

      EDIT: actualy (19-06-2015) there is DebenuPDFLibraryAX1115.dll and DebenuPDFLibraryLite1115.dll
        to use the commercial version you need to use the _QPdf_SetLicenseKey() AutoIt 3.3.10.2++ For UDF and examples download, and the current version information please go to download section:

       
      The following information are outdated
    • By mLipok
      This is a UDF for use Debenu PDF Viewer SDK - ActiveX component.
      You can read more about this ActiveX component here:
      http://www.debenu.com/products/development/debenu-pdf-viewer-sdk/
       
      v 0.2
       
      2015/05/18   v0.3
       
    • By seadoggie01
      This UDF is because I'm tired of trying to use UI Automation and Send to automate Adobe Acrobat. I often need to read the contents of PDFs and Acrobat is not easy to work with as a window.  The functions are based on the API Reference from Adobe located here.
      Acrobat Pro is required for all functions.
      It's very beta right now, but it still seems to work. Currently, the functions are based around page level manipulation of PDF documents: re-arranging, swapping, deleting, and moving pages as this is what I use the most.
      Please feel free to request/suggest features!
       
       
    • By diff
      Hello,
      still learning and trying to understand AutoIT but having problem in filling my PDF file.
       
      So my code looks like similar to this:
      Global $1 = "text text 44444444" Global $2 = "texting2 texting2" Global $3 = "newtext3 next3" ShellExecute ("C:\Users\XXX\Desktop\myPDF.pdf") WinWaitActive("MyPDF.pdf - Adobe Acrobat Reader DC") Send ("{TAB}") ClipPut($1) Send ("^v") Send ("{TAB 3}") ClipPut($2) Send("^v") Send ("{TAB}") ClipPut($3) Send("^v") So its fill my PDF form, the first field looks good, the code add the text text 4444, then second should be $2 with texting2 texting2 but for some reason the code uses for second and third field after TAB only variable $3.
      So, I receive in $2 and $3 for some reason same newtext3 next3 in both, why its skipping the variable $2? Maybe there also much better solution for instant text? Because Send writes with delay by letters which I don't like.
      Thanks!
    • By Fenzik
      Hello!
      i wrote this function as alternative to using the Com Object or Commandline version of this project, discussed also earlyer on this forum.
      Project site - http://ebstudio.info/home/xdoc2txt.html
      Advantage of this implementation is that you do not need to register Com dll, using regsvr32.
      But you still need the project Dll (xd2txlib.dll).
      Enjoy!
      ; #FUNCTION# ==================================================================================================================== ; Name ..........: _ExtractText ; Description ...: Extracts text from advanced documment formats (Doc, Docx, ODT, XLS, ...) ; Syntax ........: _ExtractText($sFilename[, $bProperties = False[, $hDll = 0]]) ; Parameters ....: $sFilename - a string value. ; $bProperties - [optional] a boolean value. Default is False. If True, documment properties will be returned instead of the text. ; $hDll - [optional] a handle value. Default is 0. Optional handle to previously opened xd2txlib.dll. By default the xd2txlib.dll (Expected in @scriptdir) will be opened and closed during the function call. ; Return value .: String, containing the text or documment properties or empty string and Error as follows: ;1 - The file does not exists. ;2 - Error during opening xd2txlib.dll. ;3 - No text returned. ; Author ........: Fenzik ; Modified ......: ; Remarks .......: Project site - http://ebstudio.info/home/xdoc2txt.html ; Related .......: ; Link ..........: ; Example .......: No ; =============================================================================================================================== Func _ExtractText($sFilename, $bProperties = False, $hDll = 0) If Not FileExists($sFilename) Then Return SetError(1, "", "") Local $bLoaded = False If $hDll = 0 Then $hDll = DllOpen(@scriptdir&"\xd2txlib.dll") If $hDll = -1 Then Return SetError(2, "", "") $bLoaded = True Endif $aResult = DllCall($hDll, "int:cdecl", "ExtractText", "WSTR", $sFilename, "BOOL", $bProperties, "WSTR*", "") If $aResult[0] = 0 Then Return SetError(3, "", "") If $bLoaded = True Then DllClose($hDll) Return $aResult[3] EndFunc  
       
      xd2txlib-example.zip
×
×
  • Create New...