Jump to content

Debenu Quick PDF Library - UDF


mLipok
 Share

Recommended Posts

Related topics:

 

Signature beginning:
Please remember: "AutoIt"..... *  Wondering who uses AutoIt and what it can be used for ? * Forum Rules *
ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Codefor other useful stuff click the following button:

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST APIErrorLog.au3 UDF - A logging Library * Include Dependency Tree (Tool for analyzing script relations) * Show_Macro_Values.au3 *

 

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 UDF * ADO.au3 UDF SMTP Mailer UDF * Dual Monitor resolution detection * * 2GUI on Dual Monitor System * _SciLexer.au3 UDF * SciTE - Lexer for console pane

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Good coding practices in AutoIt * 

OpenOffice/LibreOffice/XLS Related: WriterDemo.au3 * XLS/MDB from scratch with ADOX

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * IE in TaskSchedulerIE Embedded Control Versioning (use IE9+ and HTML5 in a GUI) * PDF Related:How to get reference to PDF object embeded in IE * IE on Windows 11

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

I also encourage you to check awesome @trancexx code:  * Create COM objects from modules without any demand on user to register anything. * Another COM object registering stuffOnHungApp handlerAvoid "AutoIt Error" message box in unknown errors  * HTML editor

winhttp.au3 related : * https://www.autoitscript.com/forum/topic/206771-winhttpau3-download-problem-youre-speaking-plain-http-to-an-ssl-enabled-server-port/

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2023-04-24

Link to comment
Share on other sites

  • 2 years later...

a small update ;) 

Spoiler

 

Quote

    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 !!!!!!!!!!!!!!!
 

 

 

 

 

 

 

Download link:

 

Signature beginning:
Please remember: "AutoIt"..... *  Wondering who uses AutoIt and what it can be used for ? * Forum Rules *
ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Codefor other useful stuff click the following button:

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST APIErrorLog.au3 UDF - A logging Library * Include Dependency Tree (Tool for analyzing script relations) * Show_Macro_Values.au3 *

 

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 UDF * ADO.au3 UDF SMTP Mailer UDF * Dual Monitor resolution detection * * 2GUI on Dual Monitor System * _SciLexer.au3 UDF * SciTE - Lexer for console pane

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Good coding practices in AutoIt * 

OpenOffice/LibreOffice/XLS Related: WriterDemo.au3 * XLS/MDB from scratch with ADOX

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * IE in TaskSchedulerIE Embedded Control Versioning (use IE9+ and HTML5 in a GUI) * PDF Related:How to get reference to PDF object embeded in IE * IE on Windows 11

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

I also encourage you to check awesome @trancexx code:  * Create COM objects from modules without any demand on user to register anything. * Another COM object registering stuffOnHungApp handlerAvoid "AutoIt Error" message box in unknown errors  * HTML editor

winhttp.au3 related : * https://www.autoitscript.com/forum/topic/206771-winhttpau3-download-problem-youre-speaking-plain-http-to-an-ssl-enabled-server-port/

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2023-04-24

Link to comment
Share on other sites

  • 1 year later...

 

Signature beginning:
Please remember: "AutoIt"..... *  Wondering who uses AutoIt and what it can be used for ? * Forum Rules *
ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Codefor other useful stuff click the following button:

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST APIErrorLog.au3 UDF - A logging Library * Include Dependency Tree (Tool for analyzing script relations) * Show_Macro_Values.au3 *

 

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 UDF * ADO.au3 UDF SMTP Mailer UDF * Dual Monitor resolution detection * * 2GUI on Dual Monitor System * _SciLexer.au3 UDF * SciTE - Lexer for console pane

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Good coding practices in AutoIt * 

OpenOffice/LibreOffice/XLS Related: WriterDemo.au3 * XLS/MDB from scratch with ADOX

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * IE in TaskSchedulerIE Embedded Control Versioning (use IE9+ and HTML5 in a GUI) * PDF Related:How to get reference to PDF object embeded in IE * IE on Windows 11

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

I also encourage you to check awesome @trancexx code:  * Create COM objects from modules without any demand on user to register anything. * Another COM object registering stuffOnHungApp handlerAvoid "AutoIt Error" message box in unknown errors  * HTML editor

winhttp.au3 related : * https://www.autoitscript.com/forum/topic/206771-winhttpau3-download-problem-youre-speaking-plain-http-to-an-ssl-enabled-server-port/

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2023-04-24

Link to comment
Share on other sites

  • 9 months later...

Hello mLipok, I am just trying to use your UDF and I have downloaded trial of Quick PDF Library so far and I tried to run your first example QuickPDF_ArrowHead.au3 but with no luck. Nothing appeared.

;~ #AutoIt3Wrapper_Run_Debug_Mode=Y
#Tidy_Parameters=/sort_funcs /reel
#include-once
#include <Math.au3>
#include "QuickPdf.au3"

_QPDF_NewLibraryPath_Commercial(@ScriptDir & '\DebenuPDFLibraryAX1311.dll')

; SET YOUR LICENSE KEY in your main script using _QPDF_SetLicenseKey()
; If you not set $__sLicenseKey_QPDF then DebenuPDFLibraryLite1114.dll will be used (Lite version).
_QPDF_SetLicenseKey('ENTER YOUR KEY HERE')

; I (mLipok) use MyLicenseKey.txt file to prevent accidentally placed my license key in a public forum.
If FileExists(@ScriptDir & '\MyLicenseKey.txt') Then _QPDF_SetLicenseKey(FileRead(@ScriptDir & '\MyLicenseKey.txt'))

#Region TESTING

_QPDF_Arrow_Example()

Func _QPDF_Arrow_Example()
    Local $oQP
    If _QPDF_CreateObjectAndUnlock($oQP) = 1 Then
        $oQP.SetLineColor(1,0,0)
        _QPDF_Arrow($oQP, 10, 10, 100, 80, 5, 8, 0.5, 0.7)
        $oQP.SetLineColor(0,1,0)
        _QPDF_Arrow($oQP, 10, 20, 100, 90, 10, 8, 0.5, 1)
        $oQP.SetLineColor(0,0,1)
        _QPDF_Arrow($oQP, 10, 100, 100, 100, 10, 145, 1, 2)
        _QPDF_Display($oQP)
    EndIf
EndFunc   ;==>_QPDF_Arrow_Example
#EndRegion TESTING

I can't find file 'DebenuPDFLibraryAX1311.dll' in my local installation folder.

I tried with all dll files in DLL folder but with no success.

image.png.9721aa851569ff87ab4c735b8f631a42.png

I have entered my licence key but _QPDF_CreateObjectAndUnlock($oQP) return 0 value.

Any idea?

Link to comment
Share on other sites

3 minutes ago, maniootek said:

I have entered my licence key but _QPDF_CreateObjectAndUnlock($oQP) return 0 value.

here:

3 minutes ago, maniootek said:

_QPDF_SetLicenseKey('ENTER YOUR KEY HERE')

or you put this to your's file:

4 minutes ago, maniootek said:

If FileExists(@ScriptDir & '\MyLicenseKey.txt') Then _QPDF_SetLicenseKey(FileRead(@ScriptDir & '\MyLicenseKey.txt'))

?

Signature beginning:
Please remember: "AutoIt"..... *  Wondering who uses AutoIt and what it can be used for ? * Forum Rules *
ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Codefor other useful stuff click the following button:

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST APIErrorLog.au3 UDF - A logging Library * Include Dependency Tree (Tool for analyzing script relations) * Show_Macro_Values.au3 *

 

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 UDF * ADO.au3 UDF SMTP Mailer UDF * Dual Monitor resolution detection * * 2GUI on Dual Monitor System * _SciLexer.au3 UDF * SciTE - Lexer for console pane

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Good coding practices in AutoIt * 

OpenOffice/LibreOffice/XLS Related: WriterDemo.au3 * XLS/MDB from scratch with ADOX

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * IE in TaskSchedulerIE Embedded Control Versioning (use IE9+ and HTML5 in a GUI) * PDF Related:How to get reference to PDF object embeded in IE * IE on Windows 11

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

I also encourage you to check awesome @trancexx code:  * Create COM objects from modules without any demand on user to register anything. * Another COM object registering stuffOnHungApp handlerAvoid "AutoIt Error" message box in unknown errors  * HTML editor

winhttp.au3 related : * https://www.autoitscript.com/forum/topic/206771-winhttpau3-download-problem-youre-speaking-plain-http-to-an-ssl-enabled-server-port/

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2023-04-24

Link to comment
Share on other sites

4 minutes ago, maniootek said:

_QPDF_NewLibraryPath_Commercial(@ScriptDir & '\DebenuPDFLibraryAX1311.dll')

btw. I think that you should also use proper path.
Recent version was DebenuPDFLibraryAX1811.dll

Which version you have downloaded with your trial ?

Signature beginning:
Please remember: "AutoIt"..... *  Wondering who uses AutoIt and what it can be used for ? * Forum Rules *
ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Codefor other useful stuff click the following button:

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST APIErrorLog.au3 UDF - A logging Library * Include Dependency Tree (Tool for analyzing script relations) * Show_Macro_Values.au3 *

 

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 UDF * ADO.au3 UDF SMTP Mailer UDF * Dual Monitor resolution detection * * 2GUI on Dual Monitor System * _SciLexer.au3 UDF * SciTE - Lexer for console pane

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Good coding practices in AutoIt * 

OpenOffice/LibreOffice/XLS Related: WriterDemo.au3 * XLS/MDB from scratch with ADOX

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * IE in TaskSchedulerIE Embedded Control Versioning (use IE9+ and HTML5 in a GUI) * PDF Related:How to get reference to PDF object embeded in IE * IE on Windows 11

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

I also encourage you to check awesome @trancexx code:  * Create COM objects from modules without any demand on user to register anything. * Another COM object registering stuffOnHungApp handlerAvoid "AutoIt Error" message box in unknown errors  * HTML editor

winhttp.au3 related : * https://www.autoitscript.com/forum/topic/206771-winhttpau3-download-problem-youre-speaking-plain-http-to-an-ssl-enabled-server-port/

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2023-04-24

Link to comment
Share on other sites

this is what my folder looks like: 

image.png.93affc9f217da3d37372ee312b14e6e2.png

in the MyLicenseKey I left 1 line with licence key
all dll files comes from "C:\Program Files (x86)\Foxit Software\Quick PDF Library 18\DLL" path

I have downloaded and installed this file "foxit_quick_pdf_library_1811_en.exe"

Edited by maniootek
Link to comment
Share on other sites

a... I think I know why
Which recent version you have in _QPDF_NewLibraryPath_Commercial()

As so far I forgot to make update for 1811:

.....

        Case StringInStr($sDLL_FileFullPath, 'DebenuPDFLibraryAX1711.dll')
            __QPDF_NewLibraryPath_Commercial($sDLL_FileFullPath, 'DebenuPDFLibraryAX1711.PDFLibrary', '{B4B2C260-6F9E-4C79-8010-8983CCF3A0A6}', '{68CE66E2-BBBE-4094-965D-7A42243468E8}')
        Case Else
            SetError($QPDF_ERR_DLLINIT, $QPDF_EXT_PARAM1, $QPDF_RET_FAILURE)
    EndSelect
EndFunc   ;==>_QPDF_NewLibraryPath_Commercial


EDIT:
WorkInProgress

Edited by mLipok

Signature beginning:
Please remember: "AutoIt"..... *  Wondering who uses AutoIt and what it can be used for ? * Forum Rules *
ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Codefor other useful stuff click the following button:

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST APIErrorLog.au3 UDF - A logging Library * Include Dependency Tree (Tool for analyzing script relations) * Show_Macro_Values.au3 *

 

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 UDF * ADO.au3 UDF SMTP Mailer UDF * Dual Monitor resolution detection * * 2GUI on Dual Monitor System * _SciLexer.au3 UDF * SciTE - Lexer for console pane

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Good coding practices in AutoIt * 

OpenOffice/LibreOffice/XLS Related: WriterDemo.au3 * XLS/MDB from scratch with ADOX

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * IE in TaskSchedulerIE Embedded Control Versioning (use IE9+ and HTML5 in a GUI) * PDF Related:How to get reference to PDF object embeded in IE * IE on Windows 11

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

I also encourage you to check awesome @trancexx code:  * Create COM objects from modules without any demand on user to register anything. * Another COM object registering stuffOnHungApp handlerAvoid "AutoIt Error" message box in unknown errors  * HTML editor

winhttp.au3 related : * https://www.autoitscript.com/forum/topic/206771-winhttpau3-download-problem-youre-speaking-plain-http-to-an-ssl-enabled-server-port/

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2023-04-24

Link to comment
Share on other sites

@maniootek

Try to modify _QPDF_NewLibraryPath_Commercial()

 

....
....

        Case StringInStr($sDLL_FileFullPath, 'DebenuPDFLibraryAX1612.dll')
            __QPDF_NewLibraryPath_Commercial($sDLL_FileFullPath, 'DebenuPDFLibraryAX1612.PDFLibrary', '{4C108812-C084-418D-A7D5-0A2632C8406C}', '{88F2FB50-6844-432E-A3A6-840C1259568B}')
        Case StringInStr($sDLL_FileFullPath, 'DebenuPDFLibraryAX1613.dll')
            __QPDF_NewLibraryPath_Commercial($sDLL_FileFullPath, 'DebenuPDFLibraryAX1613.PDFLibrary', '{7DC849CE-EBD0-4B7C-8A46-A299E9540AF0}', '{99C7568E-DCE9-465C-AC47-35A7913D8725}') ; @TODO QUESTION / TEST : should here be DebenuPDFLibraryAX1613.PDFLibrary or DebenuPDFLibraryAX1612.PDFLibrary ??
        Case StringInStr($sDLL_FileFullPath, 'DebenuPDFLibraryAX1711.dll')
            __QPDF_NewLibraryPath_Commercial($sDLL_FileFullPath, 'DebenuPDFLibraryAX1711.PDFLibrary', '{B4B2C260-6F9E-4C79-8010-8983CCF3A0A6}', '{68CE66E2-BBBE-4094-965D-7A42243468E8}')
        Case StringInStr($sDLL_FileFullPath, 'DebenuPDFLibraryAX1811.dll')
            __QPDF_NewLibraryPath_Commercial($sDLL_FileFullPath, 'DebenuPDFLibraryAX1811.PDFLibrary', '{6876E803-14CA-4ABF-9075-24F087AE8868}', '{12146AAC-0348-4A1A-A207-742FAAF8C80D}')
        Case Else
            SetError($QPDF_ERR_DLLINIT, $QPDF_EXT_PARAM1, $QPDF_RET_FAILURE)
    EndSelect
EndFunc   ;==>_QPDF_NewLibraryPath_Commercial


Let me know if this modification works for you.

Edited by mLipok

Signature beginning:
Please remember: "AutoIt"..... *  Wondering who uses AutoIt and what it can be used for ? * Forum Rules *
ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Codefor other useful stuff click the following button:

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST APIErrorLog.au3 UDF - A logging Library * Include Dependency Tree (Tool for analyzing script relations) * Show_Macro_Values.au3 *

 

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 UDF * ADO.au3 UDF SMTP Mailer UDF * Dual Monitor resolution detection * * 2GUI on Dual Monitor System * _SciLexer.au3 UDF * SciTE - Lexer for console pane

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Good coding practices in AutoIt * 

OpenOffice/LibreOffice/XLS Related: WriterDemo.au3 * XLS/MDB from scratch with ADOX

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * IE in TaskSchedulerIE Embedded Control Versioning (use IE9+ and HTML5 in a GUI) * PDF Related:How to get reference to PDF object embeded in IE * IE on Windows 11

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

I also encourage you to check awesome @trancexx code:  * Create COM objects from modules without any demand on user to register anything. * Another COM object registering stuffOnHungApp handlerAvoid "AutoIt Error" message box in unknown errors  * HTML editor

winhttp.au3 related : * https://www.autoitscript.com/forum/topic/206771-winhttpau3-download-problem-youre-speaking-plain-http-to-an-ssl-enabled-server-port/

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2023-04-24

Link to comment
Share on other sites

I want to:

1. read pdf file with multiple pages and split each page into array elements in autoit

2. loop through the array and read text from each page

3. loop through the array and add new text to each page

4. change order of elements in array (sort with special condition)

5. save new pdf file with new pages order

Is it possible with lite version or commercial?

Will you help me? Please guide me which function should I use.

First of all I want to load pdf file to memory. I found in your UDF function called "_QPDF_CreateObjectFromFile"

Func _QPDF_CreateObjectFromFile($sPDF_FileFullPath, $sPDF_Password = '')
    Local $oQP
    _QPDF_CreateObjectAndUnlock($oQP)
    If @error Then Return SetError(@error, @extended, $QPDF_RET_FAILURE)

    _QPDF_LoadFromFile($oQP, $sPDF_FileFullPath, $sPDF_Password)
    If @error Then Return SetError($QPDF_ERR_LOADFILE, @extended, $QPDF_RET_FAILURE)

EndFunc   ;==>_QPDF_CreateObjectFromFile

but it looks like it does not return anything in case of no error?

Second thing is that your example file "QuickPDF_Examples.au3" use old functions

_QPDF_LastErrorCode > _QPDF_LastError_SetCode
_QPDF_SaveToFile_Lite > _QPDF_SaveToFile

Link to comment
Share on other sites

5 minutes ago, maniootek said:

Is it possible with lite version or commercial?

Possible with commercial but the most important is what you exactly expect here:

6 minutes ago, maniootek said:

4. change order of elements in array (sort with special condition)

 

Signature beginning:
Please remember: "AutoIt"..... *  Wondering who uses AutoIt and what it can be used for ? * Forum Rules *
ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Codefor other useful stuff click the following button:

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST APIErrorLog.au3 UDF - A logging Library * Include Dependency Tree (Tool for analyzing script relations) * Show_Macro_Values.au3 *

 

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 UDF * ADO.au3 UDF SMTP Mailer UDF * Dual Monitor resolution detection * * 2GUI on Dual Monitor System * _SciLexer.au3 UDF * SciTE - Lexer for console pane

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Good coding practices in AutoIt * 

OpenOffice/LibreOffice/XLS Related: WriterDemo.au3 * XLS/MDB from scratch with ADOX

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * IE in TaskSchedulerIE Embedded Control Versioning (use IE9+ and HTML5 in a GUI) * PDF Related:How to get reference to PDF object embeded in IE * IE on Windows 11

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

I also encourage you to check awesome @trancexx code:  * Create COM objects from modules without any demand on user to register anything. * Another COM object registering stuffOnHungApp handlerAvoid "AutoIt Error" message box in unknown errors  * HTML editor

winhttp.au3 related : * https://www.autoitscript.com/forum/topic/206771-winhttpau3-download-problem-youre-speaking-plain-http-to-an-ssl-enabled-server-port/

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2023-04-24

Link to comment
Share on other sites

11 minutes ago, maniootek said:

but it looks like it does not return anything in case of no error?

Are you sure that ?
How did you check this ?
Did you try for example to provide incorrect password or put not existing PDF file path ?

Edited by mLipok

Signature beginning:
Please remember: "AutoIt"..... *  Wondering who uses AutoIt and what it can be used for ? * Forum Rules *
ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Codefor other useful stuff click the following button:

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST APIErrorLog.au3 UDF - A logging Library * Include Dependency Tree (Tool for analyzing script relations) * Show_Macro_Values.au3 *

 

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 UDF * ADO.au3 UDF SMTP Mailer UDF * Dual Monitor resolution detection * * 2GUI on Dual Monitor System * _SciLexer.au3 UDF * SciTE - Lexer for console pane

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Good coding practices in AutoIt * 

OpenOffice/LibreOffice/XLS Related: WriterDemo.au3 * XLS/MDB from scratch with ADOX

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * IE in TaskSchedulerIE Embedded Control Versioning (use IE9+ and HTML5 in a GUI) * PDF Related:How to get reference to PDF object embeded in IE * IE on Windows 11

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

I also encourage you to check awesome @trancexx code:  * Create COM objects from modules without any demand on user to register anything. * Another COM object registering stuffOnHungApp handlerAvoid "AutoIt Error" message box in unknown errors  * HTML editor

winhttp.au3 related : * https://www.autoitscript.com/forum/topic/206771-winhttpau3-download-problem-youre-speaking-plain-http-to-an-ssl-enabled-server-port/

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2023-04-24

Link to comment
Share on other sites

10 minutes ago, maniootek said:

Second thing is that your example file "QuickPDF_Examples.au3" use old functions

_QPDF_LastErrorCode > _QPDF_LastError_SetCode
_QPDF_SaveToFile_Lite > _QPDF_SaveToFile

Do not know what you refering ... I must check later. Currently I'm a bit bussy, at work.

Edited by mLipok

Signature beginning:
Please remember: "AutoIt"..... *  Wondering who uses AutoIt and what it can be used for ? * Forum Rules *
ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Codefor other useful stuff click the following button:

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST APIErrorLog.au3 UDF - A logging Library * Include Dependency Tree (Tool for analyzing script relations) * Show_Macro_Values.au3 *

 

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 UDF * ADO.au3 UDF SMTP Mailer UDF * Dual Monitor resolution detection * * 2GUI on Dual Monitor System * _SciLexer.au3 UDF * SciTE - Lexer for console pane

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Good coding practices in AutoIt * 

OpenOffice/LibreOffice/XLS Related: WriterDemo.au3 * XLS/MDB from scratch with ADOX

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * IE in TaskSchedulerIE Embedded Control Versioning (use IE9+ and HTML5 in a GUI) * PDF Related:How to get reference to PDF object embeded in IE * IE on Windows 11

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

I also encourage you to check awesome @trancexx code:  * Create COM objects from modules without any demand on user to register anything. * Another COM object registering stuffOnHungApp handlerAvoid "AutoIt Error" message box in unknown errors  * HTML editor

winhttp.au3 related : * https://www.autoitscript.com/forum/topic/206771-winhttpau3-download-problem-youre-speaking-plain-http-to-an-ssl-enabled-server-port/

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2023-04-24

Link to comment
Share on other sites

29 minutes ago, mLipok said:

Possible with commercial but the most important is what you exactly expect here:

4. change order of elements in array (sort with special condition)

this should not be a problem once the pdf pages objects will be in the 1D array and then we find option to merge all of them into one pdf file

if this be possible then i just change order of elements in array (pages) 

27 minutes ago, mLipok said:

Are you sure that ?
How did you check this ?
Did you try for example to provide incorrect password or put not existing PDF file path ?

It might work when password is wrong or file not exists but it deos not return anything when everything is good. I didn't check the function with the real data but I just looked into the code. There is no RefBy in fuction parameter or Return value on function success. This function could return $QPDF_RET_FAILURE or nothing.

In another words. Your function missing "Return $oQP" code line.

 

25 minutes ago, mLipok said:

Do not know what you refering ... I must check later. Currently I'm a bit bussy, at work.

I just tried to say that your example file contains function which does not exists anymore in udf. It's just a notice. Nothing bad.

Edited by maniootek
Link to comment
Share on other sites

3 minutes ago, maniootek said:

I didn't check the function, I just looked into the code. There is no RefBy in fuction parameter or Return value on function success. This function could return $QPDF_RET_FAILURE or nothing. I am not sure and I might be wrong.

in my current dev version I had:
 

; #FUNCTION# ====================================================================================================================
; Name ..........: _QPDF_CreateObjectFromFile
; Description ...: Create object by loading file into
; Syntax ........: _QPDF_CreateObjectFromFile($sPDF_FileFullPath[, $sPDF_Password = ''])
; Parameters ....: $sPDF_FileFullPath   - A string value. PDF file full path.
;                  $sPDF_Password       - [optional] A string value. Default is ''.
; Return values .: QPDF Object or $QPDF_RET_FAILURE
; Author ........: mLipok
; Modified ......:
; Remarks .......:  If the function succeeds, the loaded document will be selected and its DocumentID can be retrieved using the SelectedDocument function.
;                  Password is needed only if PDF File is encrypted.
; Related .......:
; Link ..........:
; Example .......: No
; ===============================================================================================================================
Func _QPDF_CreateObjectFromFile($sPDF_FileFullPath, $sPDF_Password = '')
    Local $oQP
    _QPDF_CreateObjectAndUnlock($oQP)
    If @error Then Return SetError(@error, @extended, $QPDF_RET_FAILURE)

    _QPDF_LoadFromFile($oQP, $sPDF_FileFullPath, $sPDF_Password)
    If @error Then Return SetError($QPDF_ERR_LOADFILE, @extended, $QPDF_RET_FAILURE)

    Return SetError($QPDF_ERR_SUCCESS, $QPDF_EXT_DEFAULT, $oQP)

EndFunc   ;==>_QPDF_CreateObjectFromFile

hmm... maybe it is time to release new version....

 

Signature beginning:
Please remember: "AutoIt"..... *  Wondering who uses AutoIt and what it can be used for ? * Forum Rules *
ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Codefor other useful stuff click the following button:

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST APIErrorLog.au3 UDF - A logging Library * Include Dependency Tree (Tool for analyzing script relations) * Show_Macro_Values.au3 *

 

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 UDF * ADO.au3 UDF SMTP Mailer UDF * Dual Monitor resolution detection * * 2GUI on Dual Monitor System * _SciLexer.au3 UDF * SciTE - Lexer for console pane

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Good coding practices in AutoIt * 

OpenOffice/LibreOffice/XLS Related: WriterDemo.au3 * XLS/MDB from scratch with ADOX

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * IE in TaskSchedulerIE Embedded Control Versioning (use IE9+ and HTML5 in a GUI) * PDF Related:How to get reference to PDF object embeded in IE * IE on Windows 11

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

I also encourage you to check awesome @trancexx code:  * Create COM objects from modules without any demand on user to register anything. * Another COM object registering stuffOnHungApp handlerAvoid "AutoIt Error" message box in unknown errors  * HTML editor

winhttp.au3 related : * https://www.autoitscript.com/forum/topic/206771-winhttpau3-download-problem-youre-speaking-plain-http-to-an-ssl-enabled-server-port/

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2023-04-24

Link to comment
Share on other sites

I tried to extract pages 2 and 3 and mege it together. This is my code:

#include "QuickPdf.au3"
#include <Array.au3>

Example_ExtractAndMergePages()

Func Example_ExtractAndMergePages()
    _QPDF_NewLibraryPath_Commercial(@ScriptDir & '\DebenuPDFLibraryAX1811.dll')
    _QPDF_SetLicenseKey(FileRead(@ScriptDir & '\MyLicenseKey.txt'))
    _QPDF_UseErrorHandler()

    Local $oQP1 = _QPDF_CreateObjectFromFile(@ScriptDir & "\Example_10page.pdf")
        $oQP1.ExtractPages(2, 1)
        $oQP1.SetOrigin(1)
        $oQP1.DrawText(25, 25, "page 2");
        Local $PrimaryDoc = $oQP1.SelectedDocument()

    Local $oQP2 = _QPDF_CreateObjectFromFile(@ScriptDir & "\Example_10page.pdf")
        $oQP2.ExtractPages(3, 1)
        $oQP2.SetOrigin(1)
        $oQP2.DrawText(25, 25, "page 3");
        Local $SecondaryDoc = $oQP2.SelectedDocument()


    Local $oQP_final
        _QPDF_CreateObjectAndUnlock($oQP_final)
        $oQP_final.SelectDocument($PrimaryDoc);
        $oQP_final.MergeDocument($SecondaryDoc);

    $sFileName = @ScriptDir & "\Example_2and3page.pdf"
    FileDelete($sFileName)
    If $oQP_final.SaveToFile($sFileName) = 1 Then
        While _WinAPI_FileInUse($sFileName)
            Sleep(10)
        WEnd
        ShellExecuteWait($sFileName)
    Else
        MsgBox($MB_SYSTEMMODAL, "Error", "File " & $sFileName & " could not be saved.")
    EndIf

EndFunc

but it save empty page

I based on example from "Foxit Quick PDF Library Dashboard" and "Combine two PDFs together"

image.thumb.png.1398a94e2038d379ba79d698f8bbfdea.png

Edit: By the way, I fixed _QPDF_CreateObjectFromFile() function and now it's working properly

Edit2: Nvm, i just figured it out myself. This is working code:

#include "QuickPdf.au3"
#include <Array.au3>

Main()

Func Main()
    _QPDF_NewLibraryPath_Commercial(@ScriptDir & '\DebenuPDFLibraryAX1811.dll')
    _QPDF_SetLicenseKey(FileRead(@ScriptDir & '\MyLicenseKey.txt'))
    _QPDF_UseErrorHandler()

    Local $oQP
    _QPDF_CreateObjectAndUnlock($oQP)

    _QPDF_LoadFromFile($oQP, @ScriptDir & "\Example_10page.pdf")
    $oQP.ExtractPages(2, 1)
    $oQP.SetOrigin(1)
    $oQP.DrawText(25, 25, "page 2");
    Local $PrimaryDoc = $oQP.SelectedDocument()

    _QPDF_LoadFromFile($oQP, @ScriptDir & "\Example_10page.pdf")
    $oQP.ExtractPages(3, 1)
    $oQP.SetOrigin(1)
    $oQP.DrawText(25, 25, "page 3");
    Local $SecondaryDoc = $oQP.SelectedDocument()

    $oQP.SelectDocument($PrimaryDoc);
    $oQP.MergeDocument($SecondaryDoc);

    $sFileName = @ScriptDir & "\Example_2and3page.pdf"
    FileDelete($sFileName)
    If $oQP.SaveToFile($sFileName) = 1 Then
        While _WinAPI_FileInUse($sFileName)
            Sleep(10)
        WEnd
        ShellExecuteWait($sFileName)
    Else
        MsgBox($MB_SYSTEMMODAL, "Error", "File " & $sFileName & " could not be saved.")
    EndIf

EndFunc

 

Edited by maniootek
Link to comment
Share on other sites

try to use: $oQP.SaveToVariant() instead $oQP.SaveToFile() and store the result to ARRRAY element

Signature beginning:
Please remember: "AutoIt"..... *  Wondering who uses AutoIt and what it can be used for ? * Forum Rules *
ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Codefor other useful stuff click the following button:

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST APIErrorLog.au3 UDF - A logging Library * Include Dependency Tree (Tool for analyzing script relations) * Show_Macro_Values.au3 *

 

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 UDF * ADO.au3 UDF SMTP Mailer UDF * Dual Monitor resolution detection * * 2GUI on Dual Monitor System * _SciLexer.au3 UDF * SciTE - Lexer for console pane

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Good coding practices in AutoIt * 

OpenOffice/LibreOffice/XLS Related: WriterDemo.au3 * XLS/MDB from scratch with ADOX

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * IE in TaskSchedulerIE Embedded Control Versioning (use IE9+ and HTML5 in a GUI) * PDF Related:How to get reference to PDF object embeded in IE * IE on Windows 11

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

I also encourage you to check awesome @trancexx code:  * Create COM objects from modules without any demand on user to register anything. * Another COM object registering stuffOnHungApp handlerAvoid "AutoIt Error" message box in unknown errors  * HTML editor

winhttp.au3 related : * https://www.autoitscript.com/forum/topic/206771-winhttpau3-download-problem-youre-speaking-plain-http-to-an-ssl-enabled-server-port/

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2023-04-24

Link to comment
Share on other sites

3 hours ago, mLipok said:

try to use: $oQP.SaveToVariant() instead $oQP.SaveToFile() and store the result to ARRRAY element

ok but why?

I am also wondering why my console keep show this message:

 

Quote

! __QPDF_ErrorNotiffy: LastErrorDescription = 
! __QPDF_ErrorNotiffy: LastErrorDescription = 

there is no description

Link to comment
Share on other sites

  • 2 weeks later...

@maniootek How do you deal with QPDF?

Signature beginning:
Please remember: "AutoIt"..... *  Wondering who uses AutoIt and what it can be used for ? * Forum Rules *
ADO.au3 UDF * POP3.au3 UDF * XML.au3 UDF * IE on Windows 11 * How to ask ChatGPT for AutoIt Codefor other useful stuff click the following button:

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST APIErrorLog.au3 UDF - A logging Library * Include Dependency Tree (Tool for analyzing script relations) * Show_Macro_Values.au3 *

 

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 UDF * ADO.au3 UDF SMTP Mailer UDF * Dual Monitor resolution detection * * 2GUI on Dual Monitor System * _SciLexer.au3 UDF * SciTE - Lexer for console pane

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Good coding practices in AutoIt * 

OpenOffice/LibreOffice/XLS Related: WriterDemo.au3 * XLS/MDB from scratch with ADOX

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * IE in TaskSchedulerIE Embedded Control Versioning (use IE9+ and HTML5 in a GUI) * PDF Related:How to get reference to PDF object embeded in IE * IE on Windows 11

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

I also encourage you to check awesome @trancexx code:  * Create COM objects from modules without any demand on user to register anything. * Another COM object registering stuffOnHungApp handlerAvoid "AutoIt Error" message box in unknown errors  * HTML editor

winhttp.au3 related : * https://www.autoitscript.com/forum/topic/206771-winhttpau3-download-problem-youre-speaking-plain-http-to-an-ssl-enabled-server-port/

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2023-04-24

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...